【问题标题】:Looking for a cheap way to add full-text search to firestore寻找一种将全文搜索添加到 Firestore 的廉价方法
【发布时间】:2018-05-12 14:58:25
【问题描述】:

这是我想做的事

假设我有一个带有 Firestore 后端的 Angular Dart 应用程序,例如存放书籍。每本书都有标题、摘要和出版日期。现在我想在我的应用程序中添加一个带分页的全文搜索。由于firestore没有全文搜索,如果我想拥有例如前10本包含“猫”的书籍,按出版日期排序,我需要自己添加。

尝试失败

我的第一个想法是使用 Elasticsearch docker 容器并将其部署在 Google Cloud 上。最初我尝试在 Google Kubernetes 上执行此操作,但除了有点过于复杂之外,它似乎花费太多。 接下来,我使用 docker 查看了 Google App Engine,但由于 Elasticsearch 容器需要 4GB 内存,这似乎仍然达到每月 60 美元。

所以现在我被困住了该怎么做。查看 Google Compute Engine 并在 VM 中运行 docker。我想知道那要多少钱?或者也许写一些东西来从一个谷歌应用实例中与谷歌云搜索交互,以某种方式暴露结果?

对于我想做的事情来说,所有这一切似乎都变得复杂起来。我可能有一千本书要索引,其中可能有 10MB 的数据,每月只有几千个查询。

【问题讨论】:

标签: angular dart full-text-search google-cloud-firestore


【解决方案1】:

Algolia 似乎是您的用例的完美/最佳解决方案。它非常容易设置,而且速度快如闪电。查看他们的文档和定价并自己进行测试。还有一个您可能感兴趣的sample firestore function

【讨论】:

  • 不幸的是,最便宜的选择仍然是每月 35 美元。我可以为一个附带项目保证的最高金额约为 5 美元。不,我不能使用开源计划。
  • 你说你只有大约一千本书。免费套餐让您拥有 10000 本书。不过,我不确定是否有任何其他方式低于 5 美元。你可以花 14 美元在 g1 计算引擎实例上部署 Elasticsearch,但那是一个共享的 cpu,所以我不确定它有多可靠。这也不会那么复杂。你不需要 Kubernetes 来部署 elasticsearch。在创建 VM 时提供一个简单的启动脚本来下载 Java/Elasticsearch 就足够了。如果您对脚本感兴趣,我可以在这里发布。
  • 看起来 Algolia 不再提供免费层,除非您的项目是开源的
猜你喜欢
  • 1970-01-01
  • 2020-06-22
  • 1970-01-01
  • 1970-01-01
  • 2011-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多