几十亿数据,提交一条数据,判断字段内容是否重复。 直接加索引,怕几十亿数据撑不住。

几十亿数据,提交一条数据,判断字段内容是否重复。 直接加索引,怕几十亿数据撑不住。
1 ericls Mar 8, 2022 via iPhone benchmark 了吗? |
2 BrettD Mar 8, 2022 bloom filter |
3 kera0a Mar 8, 2022 via iPhone 布隆过滤器,但会有一点点误判率。 误判率越小占用内存越大,速度非常快 O(1) |
4 wellsc Mar 8, 2022 文本段?分词+倒排索引 |
6 levelworm Mar 9, 2022 via Android 不用全部对比吧,如果是分布式的话。更怕的是技术上不重但是业务上重。 |
7 levelworm Mar 9, 2022 via Android 对了,op 用的是什么数据库呐? |
8 LeeReamond Mar 9, 2022 @kera0a 布隆过滤器一个问题是无法应对动态数据,实际业务里比如原先拦截 1 ,2 ,3 ,结果第二天业务上 2 从列表里删除了,布隆过滤器就比较吃瘪了 |
9 murmur Mar 9, 2022 几十亿数据有分表或者分库么 |
11 shawndev Mar 9, 2022 Cuckoo Filter? |
12 ElmerZhang Mar 9, 2022 分表+唯一索引 |
13 ElmerZhang Mar 9, 2022 当前表不好拆的话,就专门为这个索引建个新表,给这个表分表+唯一索引。 写数据的时候用事务,两个表一起写。 另外,你只是担心抗不住,到底抗不抗得住还是要看压测,说不定就抗得住了呢。不过这么大的表改索引也得费点劲。 |
15 ghoul5426 Mar 10, 2022 居然没人说哈希,为每个数据计算一个哈希值,crc32 ( 32 位)、md5 ( 128 位)、sha1 ( 160 位)、sha256 ( 256 位)等都可以,可以把哈希值做主键或者唯一索引,可以用这个值来做分库分表的依据。 |