前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Redis-从海量数据里查询某一固定前缀的key

Redis-从海量数据里查询某一固定前缀的key

作者头像
瑞新
发布2020-07-07 21:27:31
2.5K0
发布2020-07-07 21:27:31
举报

生产环境,查找key开头的数据

场景模拟,线上Redis查询数据量大 key xx* 缺点 因为: 一次性返回数据量大,卡住。对内存消耗和Redis服务器都是隐患 建议: 时间花费,因为是分批次,会长 Scan无阻塞提取列表,每次执行返回少量元素 游标0->0,非递增小心要去重,存入HashSet count是上下浮动的

key查询全部

在这里插入图片描述
在这里插入图片描述

时间消耗

在这里插入图片描述
在这里插入图片描述

scan

在这里插入图片描述
在这里插入图片描述

定制化开发包使用

不同语言对应不同开发包,改定制化需求

在这里插入图片描述
在这里插入图片描述

批量生成redis测试数据

代码语言:javascript
复制
batchRedis.txt
批量生成redis测试数据
1.Linux Bash下面执行
  for((i=1;i<=20000000;i++)); do echo "set k$i v$i" >> /tmp/redisTest.txt ;done;
  生成2千万条redis批量设置kv的语句(key=kn,value=vn)写入到/tmp目录下的redisTest.txt文件中
2.用vim去掉行尾的^M符号,使用方式如下::
  vim /tmp/redisTest.txt
    :set fileformat=dos #设置文件的格式,通过这句话去掉每行结尾的^M符号
    ::wq #保存退出
3.通过redis提供的管道--pipe形式,去跑redis,传入文件的指令批量灌数据,需要花10分钟左右
  cat /tmp/redisTest.txt | 路径/redis-5.0.0/src/redis-cli -h 主机ip -p 端口号 --pipe
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-03-20 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 生产环境,查找key开头的数据
    • key查询全部
      • scan
      • 定制化开发包使用
      • 批量生成redis测试数据
      相关产品与服务
      云数据库 Redis
      腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
      http://www.vxiaotou.com