我们为使用Firebase身份验证的应用(Android,iOS)编程。我们使用Cloud Firestore作为我们的数据库。用户登录并进行一些设置。现在,我们必须对Cloud Firestore数据集进行一些复杂的计算(基于用户和其他一些过滤器的位置),并在稍后通过推送通知通知用户。但是,我们发现Cloud Firestore在查询方面非常有限。另外,我们无法进行服务器端计算。
所以我的问题是:我们如何才能最好地处理问题?
第一种方法是使用附加服务器并在其上运行计算(使用Java程序)。然后,连接将通过快照侦听器运行,该侦听器使其他服务器上的所有数据保持同步(遗憾的是,由于文档计费,这种情况有些昂贵)。
第二种方法是使用其他数据库,例如Cloud Datastore或Google Cloud Spanner(我们不知道价格)。但是,数据库连接的简单性将会丢失,实现会更加复杂。
我们假设未来我们将获得许多用户,并且计算可能变得非常复杂。但是,我们在开始时需要一个良好的性价比,因为我们的资金很少。
你有什么提示给我们,哪种方式最好?