天翼雲分散式快取服務(Redis)的幾個核心概念

天翼雲開發者社群發表於2022-04-02

 

天翼雲官方網站的Redis產品服務的定義如下:

天翼雲分散式快取服務 Distributed Cache Service,CT-DCS)是天翼雲打造的分散式key-Value資料庫服務,相容Redis協議,主要用於持久化資料的儲存或快取資料的儲存。

Redis本質上是一個Key-Value型別的記憶體資料庫,整個資料庫統統載入在記憶體當中進行操作,定期透過非同步操作把資料庫資料flush到硬碟上進行儲存。

因為是純記憶體操作,Redis的效能非常出色,每秒可以處理超過 10萬次讀寫操作,是已知效能最快的Key-Value DB。

Redis的主要缺點是資料庫容量受到實體記憶體的限制,不能用作海量資料的高效能讀寫,因此Redis適合的場景主要侷限在較小資料量的高效能操作和運算上。

下面說一下核心概念:

Key-Value是個什麼鬼?

簡單說Key是鍵,Value是值,key和value是一對一的關係,透過key就能得到Value。

舉個例子:   

上表是2018年最具活力與創新可能的雲端計算服務商TOP100,這裡只擷取了前5名,對於排名第二的中國電信來說:

key=排名,其對應的value=2

key=名稱,其對應的value =中國電信

key=iPower,其對應value=99.41

key=iBrand,其對應的value=95.26

key=iSite,其對應的value=89.45

key=總分,其對應的value=97.58

其他雲服務商以此類推。

當我們將這張表格裡的100個雲服務商的物件集合放到快取中,因其結構簡單,能夠在快取中進行高效能的讀取,就能減少讀取資料庫的次數,大大提高系統的整體效能。

為何Redis要將資料庫資料載入到記憶體?

Redis為了達到最快的讀寫速度,將資料都讀到記憶體中,如果不將資料放在記憶體中,磁碟I/O速度會嚴重影響redis的效能。

如果設定了最大使用的記憶體,則資料已有記錄數達到記憶體限值後不能繼續插入新值。

Redis如何做持久化資料的儲存?

載入到記憶體中的資料,redis會透過非同步的方式將資料寫入磁碟,實現資料的持久化儲存。

怎麼理解Redis分散式的概念?

Redis支援的主從(Master-slave)的模式是其分散式架構中的一種。

Master會將資料同步到slave,而slave不會將資料同步到master。Slave啟動時會連線master來同步資料。

該模式支援讀寫分離,可以利用master來插入資料,slave提供檢索服務。

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70014251/viewspace-2885481/,如需轉載,請註明出處,否則將追究法律責任。

相關文章