您好,我有一个 MySQL 表,我想主要对其进行范围搜索,而且我希望它很快。所有新数据首先存储在 MySQL 中,然后使用 DIH 每分钟增量导入到 Solr 中。每天生成大约 20,000 行。
MySQL 架构
MySQL 表包含 6 列我要进行范围搜索(其中 2 列是 TIMESTAMP
,还有一对地理空间坐标),12 列是 TINYINT
包含 0
或 1
。还有30列不需要查找,其中1列是主键id
。
问题:是否建议将所有 48 列存储在 solr 中并仅在 solr 中进行搜索?或者我应该只将要搜索的列存储在 solr 中,然后只从 solr 中检索搜索结果的 id
,然后 SELECT
我想要的行从 MySQL 表中使用?
感谢所有帮助! :)
最佳答案
在你的情况下,我建议只存储你需要在 Solr 中搜索的属性(因为它们很少,所以索引所有列将是不必要的开销)。
之前有关于这个话题的问题:
Solr and MySQL, How to keep an updated index, and, is a DB even needed if it's simple?
Solr / rdbms, where to store additonal data
Solr best practice: All data in Solr or periodically copy to Solr?
关于mysql - MySQL 表中的所有数据是否也应该存储在 solr 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12572978/