admin 管理员组

文章数量: 887021

linux redis 查询key,Redis

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

场景模拟,线上Redis查询数据量大

key xx* 缺点

因为:

一次性返回数据量大,卡住。对内存消耗和Redis服务器都是隐患

建议:

时间花费,因为是分批次,会长

Scan无阻塞提取列表,每次执行返回少量元素

游标0->0,非递增小心要去重,存入HashSet

count是上下浮动的

key查询全部

时间消耗

scan

定制化开发包使用

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

批量生成redis测试数据

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

本文同步分享在 博客“瑞 新”(CSDN)。

如有侵权,请联系 support@oschina 删除。

本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

本文标签: linux redis 查询key redis