我想使用 SHA 256 哈希作为大数据存储上所有路径的 key 。 现在我想知道是否应该使用像mysql这样的数据库来存储 key 或像lucene这样的索引工具。 我有大约 10 亿个 SHA 256 key 来搜索它们。使用哪种工具(mysql 或 lucene)我可以更快地搜索特定 SHA 256 key ?
预先感谢您的回答。
最佳答案
理论上 Lucene 应该更快 - 它对此类字段具有恒定时间的基于哈希的查找,并且可以轻松扩展。
MySQL索引是基于树的,因此查找时间将呈对数增长。
我确实比较了两者在大型数据集上的性能,尽管出于不同的目的,并且结果证实了这一点。
也就是说,有很多方法可以优化两者。根据 MySQL 的版本,有不同的索引选项,您还可以对表进行分区,还可以使用 MySQL 的全文功能。 Lucene 也有很多技巧。最终的选择取决于硬件的细节和每秒的查找次数以及其他辅助因素。
关于mysql - mysql主键和lucene索引哪个更快,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32888426/