Reids大key優化
現象:
1、單個簡單的key儲存的value很大
2、hash, set,zset,list 中儲存過多的元素
3、一個叢集儲存了上億的key
問題:
1,讀寫bigkey會導致超時嚴重,甚至阻塞服務
2,大key相關的刪除或者自動過期時,會出現qps突降或者突升的情況,極端情況下,會造成主從複製異常,Redis服務阻塞無法響應請求
解決方式
1,拆分物件:將物件拆分成多個key-value,使用multiGet獲取值,這樣分拆意義在於分拆操作的壓力,將操作壓力平攤到多個redis例項,降低對於單個redis的io壓力。
或者分拆成幾個key-value, 也可以將這個儲存在一個hash中,每個field代表一個具體的屬性,使用hget,hmget來獲取部分的value,使用hset,hmset來更新部分屬性。
2,對儲存元素按一定規則進行分類, 分散儲存到多個redis例項中
3,只快取經常訪問的資料,而不是全部都做,80、20規則
4,降低key大小
5,減少key個數可以減少對記憶體的消耗,可以參考hash結構儲存,將多個key儲存在一個hash結構中
使用Bloom的場景往往是資料量極大的情況,這種情況下,bitmap和bloom使用空間比較大。
如果bitmap比較大,可以拆分成多個小的bitmap,可以通過結合hash方式,將key路由到hash上對應的bitmap上,將不同的key分配給不同的bitmap。
相關文章
- 使用索引優化StopKey索引優化TopK
- oracle 分頁優化(stopkey)Oracle優化TopK
- yKey for mac(系統優化軟體)Mac優化
- 大Key
- django-reids模組Django
- Redis熱點key大keyRedis
- Spark效能優化:提高並行度、使用reduceByKeySpark優化並行
- Hawkeye:TopN慢query的獲取與優化優化
- Spark 優化GroupByKey產生RDD[(K, Iterable[V])]Spark優化
- 運籌優化(十三)--大規模優化方法優化
- MySQL大表優化方案MySql優化
- reids(2)概述與安裝
- vueTable大資料展示優化Vue大資料優化
- 優化大容量匯入效能優化
- MYSQL 大資料效能優化MySql大資料優化
- monkeyscript - 定製化monkey流程
- KeyKey Typing for Mac(打字大師)Mac
- 【優化】使用反向索引(Reverse Key Indexes)減少索引熱點塊優化索引Index
- 【效能優化】Oracle 效能優化:行比例偏差大 建立柱狀圖優化Oracle
- Redis效能瓶頸揭秘:如何最佳化大key問題?Redis
- mac 下簡單安裝reidsMac
- 假如蘇大強做前端優化前端優化
- 大檔案排序優化實踐排序優化
- MySQL 大表優化方案探討MySql優化
- Redis刪除大KeyRedis
- 淺析Redis大KeyRedis
- SQL精華總結索引型別優化SQL優化事務大表優化思維導圖❤️SQL索引型別優化
- centos7安裝reids6CentOS
- 乾貨!MySQL大表優化方案(1)MySql優化
- MySQL 上億大表優化實踐MySql優化
- 大資料視覺化優勢在哪大資料視覺化
- 破解心得之Windows優化大師篇Windows優化
- Redis 如何處理大 KeyRedis
- ZKEYS公有云管理系統:IDC現代化優質選擇
- 資料庫SQL優化大總結之 百萬級資料庫優化方案資料庫SQL優化
- 資料庫SQL優化大總結之百萬級資料庫優化方案資料庫SQL優化
- [轉]reids客戶端 redis-cli用法客戶端Redis
- 大規格檔案的上傳優化優化