我有几个python脚本,我在字典中存储了500万到1000万个字符串键值对,我在这个字典中查询了大约500万到1000万次。我注意到python dict的性能不是很好。有没有其他最适合字符串键的实现。
编辑:
我有两个很大的人名列表,我想要匹配它们,所以我将其中一个作为参考列表,并尝试对第二个列表中的每个名称应用不同的启发式算法,以确定该列表是否存在于第一个列表中。因此,对于第二个列表中的每个名字,我必须查询第一个列表2-3次。希望,这是有道理的。
发布于 2011-08-08 07:43:32
问题:这是可伸缩性问题吗?你有没有发现当你有两倍的数据时,代码的运行速度是原来的两倍?您是否可能正在耗尽物理内存并使用交换内存?
每个100个字符的1000万个字符串是一个千兆字节。如果您有2组这样的内存,那么就是2 32,这接近32位WinXP进程的极限。
如果您还不知道这个问题的答案,我建议对不同大小( 10或2的幂)的数据库运行一个测试,看看性能曲线是否不连续。
https://stackoverflow.com/questions/5483121
复制相似问题