【问题标题】:how to use sphinx with dynamic tables如何将 sphinx 与动态表一起使用
【发布时间】:2014-08-27 10:47:11
【问题描述】:

之前我们在项目中使用了 Sphinx 搜索。它真的很快而且质量很好。我想知道的是,如何将 Sphinx 与不断修改(行数增加)的表一起使用? AFAIK,我们需要用 Sphinx 索引表才能使用它。因此,我无法搜索和查找新添加的行,因为 Sphinx 尚未对它们进行索引。

可以使用什么解决方案?我应该使用不同的表作为 Table1 来搜索 Sphinx(索引)和 Table2 来搜索新添加的行并使用 sql 搜索它吗?

【问题讨论】:

    标签: sql database search full-text-search sphinx


    【解决方案1】:
    1. Main+Delta 索引。 http://sphinxsearch.com/docs/archives/1.10/delta-updates.html

      您有一个定期更新的小索引,将大部分数据留在主索引中,不会经常更新。

    2. 实时索引。 http://sphinxsearch.com/blog/2014/02/12/rt_performance_basics/

      Sphinx 在内部管理索引,因此您可以即时添加新记录。即一旦您将数据插入数据库,也插入到狮身人面像。

    【讨论】:

    • 谢谢。对于一个非常大的表(数百万条记录),您建议使用哪一个?该表也由多个用户不断地同时更新。
    • 很大程度上取决于偏好。我个人使用 main+delta,但这只是因为我最熟悉它——自从引入 RT 索引之前就一直在使用它。没有理由不使用 RT 索引。
    • 那最好都测试一下,根据性能选择。非常感谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-22
    • 2021-11-08
    • 1970-01-01
    • 1970-01-01
    • 2021-10-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多