【问题标题】:Sphinx search or MySQL for a huge database search enginee用于大型数据库搜索引擎的 Sphinx 搜索或 MySQL
【发布时间】:2014-01-14 00:00:59
【问题描述】:

所以我正在 Symfony2、Doctrine2 和 MySQL 之上开发一个庞大的电子商务解决方案(可能是一个集群,因为我们将有很多人连接并在我们的平台上工作)所​​以我正在尝试决定是否会最好使用 Sphinx 搜索或 Mysql 作为搜索解决方案,因为某些数据需要在 MySQL 表和 Sphinx 中复制。我们的主要目标是性能,因此出色的响应时间是我们所寻求的。我不是专家,所以我需要这里的人根据他们的经验等提供一些建议,也许是一些文档或其他什么。你在这方面走了什么路。

PS:考虑到这一点,DB 会发展得非常快,而且平台将适用于整个世界

【问题讨论】:

标签: mysql full-text-search search-engine sphinx


【解决方案1】:

在性能方面,Sphinx 通常比 MySQL 更适合用于大容量搜索,因为它易于扩展。你会延迟结果,让它与 mysql 同步数据,但即使这样也更好。

您还应该仔细查看将在 Sphinx 中运行和存储的实际查询 只有可搜索的字段及其 ID。一旦你从 sphinx 得到 ids, 要列出它们,请使用 mysql slave 获取其他不可搜索的数据。

取决于您用于搜索的查询,

比 sphinx 更好的解决方案是 Amazon Cloudsearch。我们很难实现它,但它非常值得,无论是时间还是 $$$,它取代了我们的 sphinx 解决方案

【讨论】:

  • Sphinx 确实具有实时索引,因此可以避免批量构建索引 - 具有固有延迟。并且如果性能很重要,可以使用属性,所以sphinx返回数据(避免去databse的需要)
  • 确实如此,但很大程度上取决于对表执行的操作...大量的写入操作,尤其是 DELETES,让我们忘记了 sphinx 上的 rt 索引 :(
猜你喜欢
  • 2010-12-26
  • 2011-06-06
  • 2017-07-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-07
  • 2012-10-20
相关资源
最近更新 更多