tair存儲系統(tǒng)在淘寶大規(guī)模應(yīng)用實踐_第1頁
tair存儲系統(tǒng)在淘寶大規(guī)模應(yīng)用實踐_第2頁
tair存儲系統(tǒng)在淘寶大規(guī)模應(yīng)用實踐_第3頁
tair存儲系統(tǒng)在淘寶大規(guī)模應(yīng)用實踐_第4頁
tair存儲系統(tǒng)在淘寶大規(guī)模應(yīng)用實踐_第5頁
已閱讀5頁,還剩43頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、Tair存儲系統(tǒng)在淘寶大規(guī)模應(yīng)用實踐 2009-8-22淘寶-核心系統(tǒng)-存儲 葉翔(楊成虎)目錄1. 初看Tair2. 原理解析 1.整體架構(gòu)與模塊介紹2.ConfigServer 3.DataServer4.Storage3. 實施案例分享1.產(chǎn)品信息緩存/用戶信息緩存 (高并發(fā)訪問網(wǎng)站)2.定制化的改造 (搜索, 廣告)3.快照信息存儲 (電子商務(wù))4. 總結(jié)與未來1.初看tairTair在淘寶的現(xiàn)狀Tair 誕生1. 請求太慢了,要讀IO,那就做個Apache Module,數(shù)據(jù)放內(nèi)存里2. 需要提高命中率,集中存放,弄個簡單的分布式-Tdbm3. 業(yè)務(wù)太多了,需要管理機器和資源-Tai

2、r2012年Tair部署規(guī)模 600臺機器 46個集群 80%的是cache,承載了90%請求 百億級別的記錄雙11,雙12是平時流量的34倍2.原理解析數(shù)據(jù)路由與節(jié)點管理2.1 模塊介紹 ConfigServer 控制節(jié)點,路由信息 DataServer 數(shù)據(jù)處理與管理 Storage 存儲接口 Client API C+/JAVA/Restful localcacheClientABCDEMasterSlaveConfigServerDataServerheartbeat2.2 ConfigServer 管理數(shù)據(jù)路由信息 主備 輕量級,足夠簡單 短時間的故障不會影響服務(wù)2.2.1 對照表

3、數(shù)據(jù)劃分成Bucket bucketid = hash(key) % n 每個Bucket 只屬于一臺Server 一臺Server包含n個Bucket2.2.1 對照表2個節(jié)點2個節(jié)點擴展到3個節(jié)點2.2.2 對照表的同步 客戶端緩存 版本號機制來同步ConfigServerDataServerClientversionrequestrequesttableRequest PluginsMdbKdbRequestResponseTairServerStorage EngineResponse PluginsMigrateDuplicatorLdbRdbBdb2.3 DataServer2.4

4、 Storage MDB 共享內(nèi)存,高性能,Cache系統(tǒng) LDB 持久化,Leveldb改造,定制化修改 RDB 數(shù)據(jù)結(jié)構(gòu)豐富,使用了Redis的數(shù)據(jù)結(jié)構(gòu)ClientMINA / NETTYRPCTairTairManagerDiamondAddress, GroupNameConfigServerDataServersPacketTairManagerImplTairManagerImplFlow Controller3.實施案例分享Tair在淘寶應(yīng)用3.1 產(chǎn)品信息/用戶信息緩存商品/用戶3.1.1 產(chǎn)品信息Cache需求 高性能,且穩(wěn)定 內(nèi)存,MDB 容災(zāi),機房容災(zāi),地域容災(zāi) 多集群,

5、多地域部署TairCluster杭州1杭州2ClientsClientsTairClusterDBRClientsTairClusterDB青島RRInvalidServerW但是,Tair 宕機時,請求還是會穿透到DB上!3.1.2 用戶信息Cache-需求 高性能,且穩(wěn)定 壓縮數(shù)據(jù)可以調(diào)高性能 訪問量相對商品信息大一個數(shù)量級 Tair機器不能宕機 可靠性要求高 雙備份?數(shù)據(jù)同步代價?成本問題,不能每個機房都2份 Tair 宕機給數(shù)據(jù)庫帶來巨大壓力 需要快速恢復(fù)杭州1杭州2ClientsDBRInvalidServerWTairBackup ServerTairServerTairServe

6、rTairServerTairServer3.1.2 用戶信息Cache-運維 流量恢復(fù)前,要預(yù)熱cache 保證命中率 分批恢復(fù)流量 異常發(fā)生時,自動切換流量,恢復(fù)時需要人工檢查。其他問題 個別Key過熱訪問 活動 惡意攻擊 消息體過大,容易撐滿網(wǎng)卡3.1.3 LocalCache Client 緩存訪問量特別多的請求 本地緩沖極高的熱點 攔截掉部分攻擊 臟數(shù)據(jù) 極短的過期時間 級別可配置(PUT GET)3.2 定制化的改造 LDB針對性優(yōu)化LevelDB 1分鐘特性 KV Database Bigtable Chrome Memtable - SSTable LSM(log-struct

7、ured-merge)場景 Key基本有序 更新少 小數(shù)據(jù) 讀取隨機(SSD)Tair存儲引擎之LDB 基于LevelDB定制化開發(fā) Namespace 多實例 Range Cache FastDump BloomFilter3.2.1 BloomFilter 查找不可怕,可怕的是每次都找不到 檢索大量文件,無效的隨機IO BloomFilter Patch 需要足夠大的內(nèi)存,將BloomFilter放在內(nèi)存中3.2.2 FastDump 廣告,推薦系統(tǒng),數(shù)據(jù)倉庫 定點批量導(dǎo)入 老數(shù)據(jù)無效 現(xiàn)有系統(tǒng),導(dǎo)入時間過長 24小時都不夠? 消耗大量機器資源3.2.3 FastDump 優(yōu)化數(shù)據(jù)結(jié)構(gòu)LD

8、B優(yōu)化 Kernel調(diào)優(yōu),最大化SSD性能 多實例,每實例一塊SSD 數(shù)據(jù)源提前排序 既能并發(fā),寫入又有序 并發(fā)量大于集群磁盤數(shù)量 Key 按Range劃分 多memtable,每memtable對應(yīng)一Range 去oplog3.2.3 FastDump Service 兩組集群互切換 一組online,負責(zé)提供對外服務(wù) 一組offline,接收dump數(shù)據(jù) Offline提供數(shù)據(jù)容災(zāi)備份 100臺-6臺 每臺TairServer提供 120w tps導(dǎo)入 24min3.3 快照信息存儲交易快照3.3.1 淘寶交易快照 單條數(shù)據(jù)小,條數(shù)多,KV模型 適合NoSQL 無覆蓋,不能丟 需要持久化

9、持續(xù)的增長 擴容難題 只讀取近期數(shù)據(jù) 老數(shù)據(jù)價值降低3.3.2 交易快照 on LDB 數(shù)據(jù)模型對LDB友好,寫入性能高 無修改,只增加 大內(nèi)存,近期數(shù)據(jù)在內(nèi)存中留存一份 磁盤只有順序?qū)?數(shù)據(jù)量大,SSD不合適,SATA 降低成本 擴容以集群為單位,老集群只讀,Merge到更廉價的設(shè)備ClientsTairNew ClusterOld Tair ClusterOld Tair ClusterOld Tair ClusterRange20120101-Range20110101-20120101Merge總結(jié)與未來總結(jié) 分布式KV框架 支持LDB RDB MDB Client Java/C+/Restful 認清需求,根據(jù)業(yè)務(wù)特點部署 特性的解決方案擴展到通用方案未來 繼續(xù)開源,且所有的優(yōu)化都開源 擴大交流與支持 服務(wù)化 流量權(quán)限控制完善 插件腳本 兼容memcached協(xié)議 .開始使用TairSTEP 1 評估數(shù)據(jù)模型 持久化或者緩存 單條大?。╧ey + value) 總條目 = 數(shù)據(jù)容量 先嘗試壓縮 空間夠用即可,避免浪費 讀寫訪問壓力,opsSTEP 2 填寫申請表 http:/ 等待審批結(jié)果,1個工作日STEP 3 查詢審批輸出 Namespace configID 日常環(huán)境 configID 生產(chǎn)(預(yù)發(fā))環(huán)境 監(jiān)控地址 注意事項STEP 4

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論