iteye_16761
iteye_16761
2014-12-08 17:10
浏览 686
已采纳

java List集合与redis数据快速比对

我的需求是,现在有个list 集合里面有1000个数据,redis里有400多万数据,现在要查找list里的数据是否存在与redis里,由于redis里的数据比较多所以比对算法需要尽可能的高效,希望大家能提供个高效的算法,谢谢……

补充:list里存放的是一个自定义对象,对象有个属性是手机号mobile,redis里存储的是手机号黑名单,发送短信的时候我要判断list里的短信号码是否在黑名单里,如果存在就把这个对象从list里删除(或者记录下来)。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • ee1002517
    ee1002517 2014-12-08 17:33
    已采纳

    黑名单数据是基本不会变的。 可以在put到redis里的时候多分几层。
    比如这样
    将139号段的所有数据都放在一个list里。
    然后put(139,list).查的时候相对会快些。但是更新和新增会慢。
    这个度需要自己把握。

    点赞 评论
  • iteye_15365
    iteye_15365 2017-11-26 17:15

    redis里以mobile为key存储400万数据,如black/13000000001 -> 1(value随便),然后get 1000次应该很快的

    点赞 评论

相关推荐