Redis批量生成數(shù)據(jù)的實(shí)現(xiàn)
Redis批量生成數(shù)據(jù)
從研究Redis開始,一直會(huì)有一些Redis鍵值數(shù)量或者鍵值大小的場(chǎng)景要求,顯然我們不可能一條一條記錄的插入,那不是人都要沒了,下面介紹兩種方法。
Redis自帶Debug方法
redis提供的debug命令可以自己研究下,里面涉及到模擬redis異常場(chǎng)景如oom、宕機(jī)、命令執(zhí)行失敗,redis重載rdb文件、aof文件,模擬redis命令耗時(shí)等等,我們可以通過DEBUG help
查看詳情,如下所示
這里需要用到的就是debug populate
命令,使用如下所示
#### 后面數(shù)量代表創(chuàng)建多少個(gè)鍵值 127.0.0.1:6379> DEBUG POPULATE 1000 OK 127.0.0.1:6379> DBSIZE (integer) 1000 127.0.0.1:6379> 127.0.0.1:6379> info memory # Memory used_memory:974368 used_memory_human:951.53K used_memory_rss:5234688 used_memory_rss_human:4.99M ### 查看生成鍵值(生成時(shí)沒有指定默認(rèn)以key做為前綴) 127.0.0.1:6379> keys * 1) "key:32201" 2) "key:59146" 3) "key:10551" ...... 127.0.0.1:6379> get key:796 "value:796"
Shell腳本
使用shell腳本前我們需要知道,不用進(jìn)入redis的命令行我們一樣可以插入redis數(shù)據(jù),如下所示
### 如果使用默認(rèn)端口可以直接采用以下命令,如果不是默認(rèn)端口或默認(rèn)ip,需要重新指定如下 ### redis-cli -c -h 127.0.0.1 -p 7000 [root@zzf993 bin]# ./redis-cli set name zhangsan OK ### 到redis中查看 127.0.0.1:6379> keys * 1) "name" 127.0.0.1:6379> 127.0.0.1:6379> get name "zhangsan"
有了上面的知識(shí),我們?cè)鞌?shù)據(jù)就輕而易舉了,我們采用shell腳本循環(huán)就可以解決問題
批量造1000個(gè)鍵值的key
#!/bin/bash ### 需要轉(zhuǎn)到redis-cli的目錄 cd /opt/redis/redis-6.0.6/bin/ for i in {1..10000} do echo "key${i} ${i}" ### 如果采用默認(rèn)端口而且在本機(jī)可以這樣做,不是默認(rèn)端口或者本機(jī)需要指定 ### redis-cli -c -h 127.0.0.1 -p 7000 redis-cli set key${i} ${i} done
造一個(gè)bigkey的測(cè)試數(shù)據(jù)
#!/bin/bash ### 需要轉(zhuǎn)到redis-cli的目錄 cd /opt/redis/redis-6.0.6/bin/ for i in {1..10000} do echo "key${i} ${i}" redis-cli hset obj key${i} ${i} done
使用shell腳本時(shí)需要注意,需要保證當(dāng)前用戶有可執(zhí)行權(quán)限,如果不太情況的可以直接賦予所有權(quán)限如下所示
到此這篇關(guān)于Redis批量生成數(shù)據(jù)的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Redis批量生成數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Redis的配置、啟動(dòng)、操作和關(guān)閉方法
今天小編就為大家分享一篇Redis的配置、啟動(dòng)、操作和關(guān)閉方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-05-05Redis快速實(shí)現(xiàn)分布式session的方法詳解
Session是客戶端與服務(wù)器通訊會(huì)話跟蹤技術(shù),服務(wù)器與客戶端保持整個(gè)通訊的會(huì)話基本信息。本文主要介紹了Redis快速實(shí)現(xiàn)分布式session的方法,感興趣的可以學(xué)習(xí)一下2022-01-01redis的五大數(shù)據(jù)類型應(yīng)用場(chǎng)景分析
這篇文章主要介紹了redis的五大數(shù)據(jù)類型實(shí)現(xiàn)原理,本文給大家分享五大數(shù)據(jù)類型的應(yīng)用場(chǎng)景分析,需要的朋友可以參考下2021-08-08redis使用不當(dāng)導(dǎo)致應(yīng)用卡死bug的過程解析
本文主要記一次找因redis使用不當(dāng)導(dǎo)致應(yīng)用卡死bug的過程,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-07-07關(guān)于redis可視化工具讀取數(shù)據(jù)亂碼問題
大家來聊一聊在日常操作redis時(shí)用的是什么工具,redis提供的一些命令你都了解了嗎,今天通過本文給大家介紹redis可視化工具讀取數(shù)據(jù)亂碼問題,感興趣的朋友跟隨小編一起看看吧2021-07-07Redis數(shù)據(jù)持久化方式技術(shù)解析
Redis(Remote Dictionary Server ),即遠(yuǎn)程字典服務(wù),是一個(gè)開源的使用ANSI C語言編寫、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫(kù),并提供多種語言的API2021-09-09如何自定義redis工具jar包供其他SpringBoot項(xiàng)目直接使用
這篇文章主要介紹了如何自定義redis工具jar包供其他SpringBoot項(xiàng)目直接使用,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03嵌入式Redis服務(wù)器在Spring Boot測(cè)試中的使用教程
這篇文章主要介紹了嵌入式Redis服務(wù)器在Spring Boot測(cè)試中的使用,本文通過實(shí)例代碼場(chǎng)景分析給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-07-07