【问题标题】:Existing Postgres Database vs Solr现有 Postgres 数据库与 Solr
【发布时间】:2013-02-26 10:53:21
【问题描述】:

我们有一个使用 postgres 数据库的应用程序,它有大约 50 个表。每个表包含大约 300 万条记录(平均)。这些表时不时地用新数据更新。现在,我们想在我们的应用程序中实现搜索功能。搜索需要一次在一个表上执行(不需要连接)。

我已经阅读了有关 postgres 全文支持的信息,这看起来很有希望。但与它相比,Solr 似乎超级快。我可以将现有的 postgres 数据库与 Solr 一起使用吗?如果表得到更新,我是否需要重新索引所有内容?

【问题讨论】:

    标签: postgresql solr


    【解决方案1】:

    绝对值得一试 Solr。我们将许多涉及在多个表上的 JOIN 查询以及对不同字段进行排序的 MySQL 查询移至 Solr。我们对 Solr 的搜索速度、排序速度、分面功能和高度可配置的文本分析/标记化选项感到非常满意。

    If tables get updated would I need to re-index everything again?

    不,您可以运行增量导入仅重新索引您的新文档和更新的文档。见https://wiki.apache.org/solr/DataImportHandler

    开始使用https://lucene.apache.org/solr/4_1_0/tutorial.html 以及其中的所有链接。

    【讨论】:

      【解决方案2】:

      既然没人跳进来,那我就回答吧。

      恐怕这一切都取决于。这取决于(至少)

      • 每个“文档”中的文本有多大
      • 您希望搜索的灵活性如何
      • 您需要在数据库和文本搜索之间进行多少集成
      • 多快才够快
      • 你对这两种方法都有多少经验

      当我有一个需要一些文本搜索的数据库时,我只是使用了 PG 的内置选项。如果我没有对 db 的超级用户访问权限,或者已经在运行大型 Java 设置,那么 Solr 可能会很有吸引力。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-06-11
        • 2021-04-07
        • 2018-11-13
        • 1970-01-01
        • 1970-01-01
        • 2014-01-11
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多