1

我正在通过 solr 执行在线搜索,我需要将 25000 个 id 作为过滤器传递给 solr。在这种情况下,solr 的响应速度非常慢,因此我的应用程序没有按预期运行。如果有人遇到类似问题,请提供帮助

4

1 回答 1

1

Solr 标记数据并创建倒排索引,并且对搜索查询执行相同操作,这有助于搜索,这在数据库的情况下是不可能的。

一般来说,id(主键)没有空格、连字符等,这有助于对数据进行标记和索引,只需创建一个类似于数据库的索引,当您搜索它时,它几乎类似于平面文件搜索。

简而言之,在 solr 中搜索 id 效率不高,但另一方面

数据库为数据库创建一个 BTree,这是搜索索引的最佳数据结构,并按顺序对其进行排序,因此在数据库中搜索 25000 个 id 会快得多。但不要指望它会像闪电一样快。


发布此答案对您的 id 进行了基本假设,其数据类型和其他详细信息未知。

于 2012-12-12T19:26:37.137 回答