萬億級KV存儲架構(gòu)與實踐_第1頁
萬億級KV存儲架構(gòu)與實踐_第2頁
萬億級KV存儲架構(gòu)與實踐_第3頁
萬億級KV存儲架構(gòu)與實踐_第4頁
萬億級KV存儲架構(gòu)與實踐_第5頁
已閱讀5頁,還剩29頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、美團(tuán)點評萬億級 KV 存儲架構(gòu)與實踐目錄美團(tuán)點評 KV 存儲發(fā)展歷程內(nèi)存 KV Squirrel 架構(gòu)和實踐持久化 KV Cellar 架構(gòu)和實踐發(fā)展規(guī)劃和業(yè)界趨勢客戶端客戶端美團(tuán)點評 KV 存儲發(fā)展歷程memcachedmemcachedmemcached一致性哈希一致性哈希宕機(jī)、擴(kuò)縮容 丟數(shù)據(jù)擴(kuò)縮容丟數(shù)據(jù)RedisRedisRedisRedisRedisRedis美團(tuán)點評 KV 存儲發(fā)展歷程Tair 中心節(jié)點Tair 存儲節(jié)點ABCD客戶端路由表讀&寫心跳復(fù)制中心節(jié)點腦裂容災(zāi)、擴(kuò)容難configconfig美團(tuán)點評 KV 存儲發(fā)展歷程Redis ClusterTairSquirrelCel

2、lar自研自研 + 社區(qū)全內(nèi)存、高吞吐、 低延遲持久化、大容量、 數(shù)據(jù)高可靠日調(diào)用量均已破萬億請求峰值均已破億目錄美團(tuán)點評 KV 存儲發(fā)展歷程內(nèi)存 KV Squirrel 架構(gòu)和實踐持久化 KV Cellar 架構(gòu)和實踐發(fā)展規(guī)劃和業(yè)界趨勢KV 數(shù)據(jù)分布介紹固定HASH算 法固定數(shù)目 數(shù)據(jù)分片Slot-存儲節(jié) 點對照表keySlot存儲節(jié)點HASH路由表高可用宏觀:容災(zāi)微觀:端到端成功率KV 架構(gòu)和實踐Redis集群集群調(diào)度平臺Squirrel 架構(gòu)和實踐擴(kuò)縮容服務(wù)高可用服務(wù)調(diào)度服務(wù)zookeeper客戶端元數(shù)據(jù)獲取讀&寫Gossip元數(shù)據(jù)更新管理主1從3主2從1主3從2Squirrel節(jié)點容災(zāi)

3、HA高可用服主庫宕機(jī)恢復(fù)30s,從庫 有必要等這么久嗎?集群多,宕機(jī)后補(bǔ)副本 累壞人?Squirrel節(jié)點容災(zāi)ZooKeeper客戶端HA1HA2Redis1Redis2監(jiān)控Kubernetes讀Redis4Redis3Squirrel集群Redis4摘替除換Redis4摘替除換Redis4從摘除30s-5s分鐘級自動擴(kuò)容Squirrel跨地域容災(zāi)集群間復(fù)制跨地域?qū)>€不穩(wěn)定跨地域?qū)>€有限的帶寬單元化部署,多活架構(gòu)同步調(diào)度同步集群北京主集群Squirrel跨地域容災(zāi)主從從主從從上海從集群主從從主從從Redis復(fù)制協(xié)議同步機(jī)同步機(jī)Redis復(fù)制協(xié)議寫寫同步機(jī)managermanager任務(wù)調(diào)度監(jiān)控

4、監(jiān)控影響端到端成功率的因素:數(shù)據(jù)遷移造成超時抖動持久化造成超時抖動熱點key請求導(dǎo)致單節(jié)點過載Squirrel端到端成功率Squirrel智能遷移遷移服務(wù)Redis提供數(shù)據(jù)遷移功能,但:Slot遷哪些、往哪遷、誰來遷?想遷的快又怕太快影響業(yè)務(wù)?遷移大key阻塞業(yè)務(wù)請求?IDC2IDC1Squirrel智能遷移Redis1Redis2Redis3Redis4MigrateMigrate監(jiān)控服務(wù)遷移任務(wù)生成遷移 機(jī)1遷移 機(jī)2任務(wù)下發(fā)遷移Slot遷移Slot客戶端讀寫成功率、耗時服務(wù)狀態(tài)反饋就近原則節(jié)點間并發(fā)批量Migrate根據(jù)監(jiān)控調(diào)速大key異步遷Squirrel持久化重構(gòu)重構(gòu)持久化機(jī)制做不起

5、的RDB無法避免抖動的AOFSquirrel持久化重構(gòu)mem_backlogisk_backlogisk_backlogd ddisk_backlog寫請求異步 線程DBRDBmem_backlogdisk_backlogRDB +disk_backlog減少全量重傳減少并控制RDB減少AOF寫盤抖動降低了數(shù)據(jù)可靠性Squirrel熱點key普通主熱點主熱點從熱點從監(jiān)控服務(wù)熱點Slot統(tǒng)計流控?zé)狳ckey查詢熱點遷移熱點Slot普通主普通從遷移服務(wù)熱點Slot實時監(jiān)控?zé)狳c并止損自動隔離熱點并擴(kuò)容目錄美團(tuán)點評 KV 存儲發(fā)展歷程內(nèi)存 KV Squirrel 架構(gòu)和實踐持久化 KV Cellar 架

6、構(gòu)和實踐發(fā)展規(guī)劃和業(yè)界趨勢Cellar 架構(gòu)和實踐中心節(jié)點ABCDZooKeeper客戶端路由表元數(shù)據(jù)心跳讀&寫復(fù)制configconfigOB1OB2Cellar節(jié)點容災(zāi)Handoff想快速Failover卻承擔(dān)不起數(shù)據(jù)恢復(fù)的代價?運維操作導(dǎo)致請求超時?Cellar節(jié)點容災(zāi)中心節(jié)點A1分片主2分片備B1分片備2分片主客戶端A故恢障復(fù)分片1請求心跳心跳分片1請求分片1復(fù)制分片2復(fù)制回寫增量log秒級容災(zāi)靜默升級分片1&2 logCellar跨地域容災(zāi)集群間復(fù)制跨地域?qū)>€不穩(wěn)定跨地域?qū)>€有限的帶寬單元化部署,多活架構(gòu)Cellar跨地域容災(zāi)HIJK北京主集群ABCD客戶端集群內(nèi)復(fù)制集群內(nèi)復(fù)制上海從

7、集集群間復(fù)制寫讀Cellar強(qiáng)一致支付等場景 數(shù)據(jù)不能丟共識協(xié)議:Paxos/RaftRaft:協(xié)議詳實、工程實踐Raft 復(fù)制組存儲節(jié)點4存儲節(jié)點3存儲節(jié)點2存儲節(jié)點1Cellar強(qiáng)一致Slot 1Slot 1Slot 2Slot 1Slot 3Slot 2Slot 3Slot 2Slot 3中心節(jié)點Raft組調(diào)度客戶端讀&寫讀&寫讀&寫讀&寫multi Raft調(diào)度leader影響端到端成功率的因素:數(shù)據(jù)遷移影響業(yè)務(wù)請求成功率慢請求阻塞服務(wù)隊列熱點key請求導(dǎo)致單節(jié)點過載Cellar端到端成功率Cellar智能遷移A節(jié)點B節(jié)點客戶端Slot 2Slot 3桶2Slot 3Slot 1請求遷

8、移代理請求響應(yīng)增量logB節(jié)點狀態(tài)響應(yīng)請求響應(yīng)節(jié)點狀態(tài)指標(biāo)引擎壓力網(wǎng)卡流量隊列長度Cellar快慢隊列網(wǎng)絡(luò) 線程工作隊列工作 線程慢請求:超時請 求 1:20網(wǎng)絡(luò) 線程讀快隊列讀快 線程讀慢隊列寫快隊列寫慢隊列讀慢 線程寫快 線程寫慢 線程TP999延遲降 低86%Cellar熱點key普通 數(shù)據(jù)dataserver普通 數(shù)據(jù)dataserverdataserver普通 數(shù)據(jù)熱點 數(shù)據(jù)dataserver普通 數(shù)據(jù)熱點 數(shù)據(jù)熱點key客戶端中心節(jié)點寫讀路由表&熱點區(qū)域熱點區(qū)域管理普通復(fù)制熱點復(fù)制熱點讀徹底分散熱點讀無延遲目錄美團(tuán)點評 KV 存儲發(fā)展歷程內(nèi)存 KV Squirrel 架構(gòu)和實踐持久化 KV Cellar 架構(gòu)和實踐發(fā)展規(guī)劃和業(yè)界趨勢服務(wù)Redis gossip

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論