Redis批量寫入資料

2021-09-02 14:24:09 字數 717 閱讀 9710

生產中的有些場景,我們經常需要大批量的往redis中寫入資料,如果我們採用單條迴圈寫入的話,不僅效率低下,而且可能會出現頻繁的建立和銷毀redis連線,這些都是很不合理的.對此,我們可以採用jedis的父類中的pipelined()方法獲取管道,它可以實現一次性傳送多條命令並一次性返回結果,這樣就大量的減少了客戶端與redis的通訊次數,可以有效的提高程式效率(但是,因為redis要一次性返回所有結果,它會把這些結果都快取起來,因此命令越多,快取消耗的記憶體也會越大,具體還要視情況而定).此外pipeline的原理是佇列(先進先出),這樣也保證了資料的順序性.

此時setex(string key, int seconds, string value)方法的第乙個引數是redis中的key,第二個引數是key的過期時間(s),第三個引數是key對應的value值.

本機單節點測試,批量插入四萬資料花費三秒多,單條迴圈插入四萬資料花費五分鐘以上(還沒結束自己手動停了).

REDIS從LINUX檔案寫入批量資料

cat data.txt redis cli pipe 附從mysql遷移的乙個高效技巧!在把乙個大表從 mysql 遷移到 redis 時,你可能會發現,每次提取 轉換 匯入一條資料是讓人難以忍受的慢!這裡有乙個技巧,你可以通過使用管道把 mysql 的輸出直接輸入到 redis cli輸入端,這...

PHP批量寫入資料 批量刪除資料

批量插入可以參考 sql insert into data id,ip,data values for i 0 i 100 i sql join sqls connect mysql query sql 批量刪除多條記錄,對於比較多的資訊,如果沒有批量刪除功能是非常麻煩的。可以加全選核取方塊 連線資...

HBase BulkLoad批量寫入資料實戰

在進行資料傳輸中,批量載入資料到hbase集群有多種方式,比如通過hbase api進行批量寫入資料 使用sqoop工具批量導數到hbase集群 使用mapreduce批量匯入等。這些方式,在匯入資料的過程中,如果資料量過大,可能耗時會比較嚴重或者占用hbase集群資源較多 如磁碟io hbase ...