请问这个去重循环有没有优化空间或者更好的写法
上面是JSON解析出来的数据,循环解析单次50条数据大概要花3秒,可以接受,到这边redis入库去重,去重的时候执行完毕大约11-13秒,有点难搞,大佬们有没有好的方法?
枚举循环要好一点 去重可以用哈希表呀 小蜗牛 发表于 2021-7-14 19:44
去重可以用哈希表呀
我需要入库多终端使用 换个方法去重. 没太看懂你的具体需求。
redis 的 set 集合本来就是唯一的 不需要去重呀。直接 SADD my {value} 就行了。、
比如执行 SADD my test1;SADD my test2; SADD my test1。
最后 my 集合只有两个元素:test1 和 test2,不会出现两个 test1 的。
0晨鹤0 发表于 2021-7-14 22:45
没太看懂你的具体需求。
redis 的 set 集合本来就是唯一的 不需要去重呀。直接 SADD my {value} 就行了。 ...
我是上头出新数据然后调用这个方法来对比数据库里面的去重, 需要单条单条对比,虽然是在线程里面,但是还是太慢了 a2521298 发表于 2021-7-15 08:22
我是上头出新数据然后调用这个方法来对比数据库里面的去重, 需要单条单条对比,虽然是在线程里面,但 ...
还是不懂。但是可以给你一个方案,数据库查出后转成set,不要用列表。然后通过判断set中是否含有某元素就行了。也就是楼上说的哈希表。
我也看不懂,取出数据库数据一条一条对比有什么意义?虽然我没有用过redis数据库,但是数据库的优势不就是cha询快吗?直接cha询数据库没有重复的添加,有的不管不就行了,为何还要取出来一条条对比,意义何在? 数据库不都有查重, 去重,删重功能吗?MYSQL,MS ACC 我用得比较多,都有这个功能的。
页:
[1]
2