【发布时间】:2013-11-26 17:59:24
【问题描述】:
我有一个包含 50,000,000+ 512 位值的列表。
我有一个每秒 1,750,000 个值的数据流,我需要检查每个值是否在上述列表中。
目前,我通过在 c 中使用 EXISTS 命令选择了 redis。它非常快,我设法每秒检查约 160,000 个值。
但是,我真的需要快 10 倍,因为它会造成瓶颈。有什么想法吗?
【问题讨论】:
标签: c database optimization hiredis
我有一个包含 50,000,000+ 512 位值的列表。
我有一个每秒 1,750,000 个值的数据流,我需要检查每个值是否在上述列表中。
目前,我通过在 c 中使用 EXISTS 命令选择了 redis。它非常快,我设法每秒检查约 160,000 个值。
但是,我真的需要快 10 倍,因为它会造成瓶颈。有什么想法吗?
【问题讨论】:
标签: c database optimization hiredis
假设输入流中的大多数值不存在于列表中,听起来像Bloom Filter 可能有助于筛选出绝对不在列表中的值。
【讨论】: