欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

redis刪除數(shù)據(jù)的方法-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關redis刪除數(shù)據(jù)的方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)一直通過網(wǎng)站建設和網(wǎng)站營銷幫助企業(yè)獲得更多客戶資源。 以"深度挖掘,量身打造,注重實效"的一站式服務,以網(wǎng)站建設、成都網(wǎng)站建設、移動互聯(lián)產(chǎn)品、營銷型網(wǎng)站服務為核心業(yè)務。十余年網(wǎng)站制作的經(jīng)驗,使用新網(wǎng)站建設技術,全新開發(fā)出的標準網(wǎng)站,不但價格便宜而且實用、靈活,特別適合中小公司網(wǎng)站制作。網(wǎng)站管理系統(tǒng)簡單易用,維護方便,您可以完全操作網(wǎng)站資料,是中小公司快速網(wǎng)站建設的選擇。

 由于需求的更改,之前做的一個項目需要對redis中存儲的數(shù)據(jù)格式進行修改。為防止新包發(fā)布后,老數(shù)據(jù)會導致新數(shù)據(jù)無法插入。所以,必須在發(fā)布前刪除掉所有的老數(shù)據(jù)。當前redis是一個公用的集群,里面涉及好幾個業(yè)務。那么問題來了,如何刪除大量的老數(shù)據(jù)(目前庫中的key總數(shù)為1200w),而又不影響其他業(yè)務的使用。

###常見批量刪除redis數(shù)據(jù)的方法:

如果待刪除數(shù)據(jù)的key是已知的,可以使用redis-cli的del命令 /usr/local/redis/bin/redis-cli del key 或者也可以使用其他高級語言對應的redis包或庫。如java下的jedis,python下的redis庫

java:   jdeis.del(key)
python: redis.delete(key)

如果待刪除數(shù)據(jù)的key是未知的,只知道滿足特定模式的key。 這種情況下,就需要使用redis的keys 命令找出滿足特定模式的key

找到滿足前綴是video的所有key

/usr/local/redis/bin/redis-cli keys video_*

可以使用linux的xargs來完成批量刪除 /usr/local/redis/bin/redis-cli keys video* | xargs /usr/local/redis/bin/redis-cli del 3. 如果待刪除的數(shù)據(jù)是庫中所有的數(shù)據(jù),可以使用flushdb清除整個庫 /usr/local/redis/bin/redis-cli flushdb

###幾種方法的說明

第一種方法需要明確知道特定的key

使用keys命令,當庫中數(shù)據(jù)量過大,keys命令會阻塞redis的其他所有請求。無疑,這種方式對公用redis集群是不可取的。當然,具體還得考慮業(yè)務的需要。實在不行,也可以把刪除腳本放到業(yè)務訪問量比較小的時間點上執(zhí)行。

使用flushdb這種方式,會對整個庫中的數(shù)據(jù)進行清理。

###我的解決方法 線上redis集群使用的是matser-slave的結構。所以可以把阻塞請求的keys命令放到slave節(jié)點上執(zhí)行,找出所有滿足特定前綴的key。然后使用shell腳本或高級語言在master節(jié)點上刪除數(shù)據(jù)。

#獲取前綴是video,album,actor所有的key,并把這些key追加導出到文件/data/keys.txt中

#!/bin/bash

keys=('video' 'album' 'actor');
host='localhost';
port='6378';
for key in ${keys[@]};
do
  cmd="/usr/local/redis/bin/redis-cli -h ${host} -p ${port} keys gal.video.${key}*  >> /data/keys.txt";
  echo ${cmd}; 
  eval ${cmd};
done;
# 根據(jù)前面生成的key,刪除數(shù)據(jù)
#!/bin/bash
host='localhost';
port='6378';
file="/data/keys.txt";
i=0;
cat ${file} | while read key;
do
  let i=i+1;
  cmd="/usr/local/redis/bin/redis-cli -h ${host} -p ${port} del ${key}";
  echo "line:"${i}",cmd:"${cmd};
  eval ${cmd}; 
done;

腳本2由于是逐條發(fā)送del命令,執(zhí)行效率相當?shù)牡?。測試中大概是1小時刪除120w條數(shù)據(jù)。1200w條需要刪除10小時?。?! 考慮到每次發(fā)送請求的耗時,想到可以使用redis的pipeline來實現(xiàn)批量提交。

__author__ = 'litao'
from redis import Redis
host="127.0.0.1"
port=6379
db=0
r =Redis(host,port,db)
pl=r.pipeline()
per_pipe_size=10000
count=0
file = open("/data/keys.txt")
print "start del all keys in "+file.name
while 1:
    lines = file.readlines(10000)
    if not lines:
        break
    for key in lines:
        key=key.strip('\n')
        pl.delete(key)
        count=count+1
        if(count==per_pipe_size):
            count=0
            pl.execute()
pl.execute()
file.close()
print 'finish del all keys'

改進后的腳本2在線上執(zhí)行時間僅需要2min左右??!

感謝各位的閱讀!關于redis刪除數(shù)據(jù)的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

分享名稱:redis刪除數(shù)據(jù)的方法-創(chuàng)新互聯(lián)
網(wǎng)頁鏈接:http://aaarwkj.com/article28/gcscp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供虛擬主機、服務器托管、App開發(fā)、移動網(wǎng)站建設、網(wǎng)站導航、網(wǎng)站設計公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)
亚洲精品露脸自拍高清在线观看| 亚洲av一区二区三区| 国产丝袜在线精品丝袜不卡| 日韩国产传媒视频在线观看| 亚洲精品自拍一二三四区| 国产精品大屁股白浆一区二区| 国产中文精品字幕a区| 91伊人日本在线视频| 国产传媒视频网站在线观看| 日本中文字幕不卡在线一区二区 | 午夜性生活视频免费看| 亚洲欧洲精品真人av蜜臀| 九九久久亚洲av成人乱片| 成人高清乱码一区二区三区| 亚洲大尺码在线视频香蕉| 天堂av影片在线观看| 久久婷亚洲综合五月天| 日韩高清亚洲一区二区| 亚洲国产精品中文字幕一区久久| 精品少妇熟女av免费久久| 成人黄色av网站在线观看| 国产精精精精品欧美日韩| 欧美一区二区三区人妻熟妇| 亚洲欧美午夜激情啪啪视频 | 亚洲日本韩国一区二区| 亚洲综合国产一二三四五区| 夫妻性生活黄色录像视频| 精品一区二区久久久久久| 国产精品免费视频一区二区三区| 男人自拍天堂在线观看| 每日更新中文字幕粉嫩av| 免费在线观看av日韩| 五月天久久开心激情网| 国产在线一区二区三区蜜桃| 人妻丰满熟妇九九久久| 亚洲一区免费在线视频| 日本a级免费大片网站| 色婷婷av一区二区三| 欧美色欧美亚洲另类视频| 国语对白自拍视频在线播放| 福利在线视频一区二区|