假设每天都会有不少于1000000个唯一标识码进来系统,标识码组成结构是字符串+数字+下划线,形如"ua_124wtybmlo_cfk"。
现在需求是要判断某一个标识码三天内有没有在系统出现过。
如果用有效期是3天的string结构来存储每一个标识码,那么一天要有1000000+个string 类型的key,这样会非常消耗内存。
如果要优化的话,目前只能想到改为哈希结构+分片来存储,主要是分片策略不知如何制定。
不知道有没有哪位大神有什么好的方案?或者如果有其他好的优化方式也可以提出来。
感谢~
迷茫2017-04-25 09:04:39
キーと値が 32 バイトを占め、3 日で 90M しかかからないとします。これは大量のメモリを消費すると考えられますか?
メモリを本当に重視し、特定の正確性を無視できる場合は、ブルーム フィルターの使用を検討できます。