天翼雲分散式緩存服務的幾個核心概念
天翼雲官方網站的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提供檢索服務。
今天就先分享到這裡,後面繼續分享redis的相關主題。
TAG:雲計算那點事兒 |