2011-05-20 36 views
20

我目前正在将一些数据迁移到Redis,并且我正在考虑使用已排序的集合来存储大约1.4e6项目(以及相关的分数/计数)。这个集合中的这些项目数量是否可能超过实际限制,使得使用该集合太痛苦?我计划运行64位Redis,因此数据的可用内存不应该成为问题。有没有人有经验与这种大小的排序集?如果是这样,那么您的插入和查询时间如何?redis中的排序集中元素的数量是否有实际的限制?

回答

18

这取决于你想要做什么与设置。简单的操作大多是O(log n),这意味着它们只需要一百万个项目集的两倍,就像它们为一千个项目集一样。除非你的配置中存在严重损坏,比如内存限制小于设置,否则性能不应该成为问题。

如果您需要小心操作多套设备,尤其是联合设备,那么对于百万件套件而言,需要花费上千倍的时间。实际上,这不一定是个问题 - 无论如何,它对于你的目的来说足够快(redis的命令记录为生产使用速度太慢,最好以毫秒为单位),或者你可以调整操作的顺序为避免在真正的大集合上运行联合。

10

我们的网站有一个大约2千万个项目(电子邮件地址)整数分数的集合,它占用了大约320MB的内存大小。

+0

是的,我们有大约1 M int => int对,我不知道它使用多少空间,但它应该在100mb左右。 – Juan 2017-05-04 21:45:23

相关问题