




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、OceanBase-破解數(shù)據(jù)庫(kù)高可用難題郁白Agenda數(shù)據(jù)庫(kù)高可用的意義傳統(tǒng)數(shù)據(jù)庫(kù)的高可用方案OceanBase的高可用方案OceanBase1.0技術(shù)展望數(shù)據(jù)庫(kù)高可用的意義數(shù)據(jù)可靠性前提:保證數(shù)據(jù)不丟失數(shù)據(jù)可用性:保證數(shù)據(jù)可訪問故障不可避免系統(tǒng)軟件27%硬件23%網(wǎng)絡(luò)故障17%人為錯(cuò)誤18%天災(zāi)8%未知7%數(shù)據(jù)庫(kù)高可用的意義幾個(gè)“九”的認(rèn)識(shí)數(shù)據(jù)庫(kù)高可用的意義5個(gè)9的可用性5.25分鐘意味著什么? - 5.8億 - 17萬條內(nèi)褲 - 傷百萬用戶的心傳統(tǒng)數(shù)據(jù)庫(kù)的高可用方案單機(jī)高可用 - 高可用硬件:小型機(jī)+高端存儲(chǔ) - 硬件冗余:多路冗余電源和網(wǎng)絡(luò)機(jī)群高可用 - 1主N備 - 可選的備份模式
2、- 最大保護(hù),最高性能,最大可用問題 - 昂貴 - 誰來選主? - 不可調(diào)和的數(shù)據(jù)可靠性與可用性矛盾OceanBase的高可用方案總體架構(gòu)RedoLog同步分布式選舉多級(jí)Lease時(shí)間分析OceanBase的高可用方案總體架構(gòu) - RootServer自己選主,無狀態(tài) - UpdateServer由RootServer選主OceanBase的高可用方案總體架構(gòu)OceanBase的高可用方案UpdateServer基于投票的RedoLog同步 - N個(gè)副本,多數(shù)派(N+1)/2同步成功即成功 - 不影響數(shù)據(jù)可靠與服務(wù)可用的宕機(jī)數(shù)量:1/3,2/5,3/7 - 依賴一個(gè)邏輯上的單點(diǎn)(RootSer
3、ver)選主 - 主機(jī)由RootServer選擇產(chǎn)生,使用lease維護(hù) - 主機(jī)產(chǎn)生LogID連續(xù)的日志來同步到備機(jī) - RootServer在多數(shù)派中以日志的TimeStamp為優(yōu)先級(jí)選主OceanBase的高可用方案UpdateServer基于投票的RedoLog同步 - 順序應(yīng)答與亂序應(yīng)答的折中 - 順序應(yīng)答:實(shí)現(xiàn)簡(jiǎn)單,對(duì)網(wǎng)絡(luò)抖動(dòng)的容忍度低 - 亂序應(yīng)答:調(diào)序與補(bǔ)償邏輯復(fù)雜,性能好,對(duì)網(wǎng)絡(luò)抖動(dòng)的容忍度高 - 關(guān)鍵細(xì)節(jié) - 備機(jī)回放的條件 - 主機(jī)未決日志的補(bǔ)償 - 備機(jī)未決日志的覆蓋 - “幽靈復(fù)現(xiàn)” - 順序應(yīng)答的性能優(yōu)化OceanBase的高可用方案RootServer的分布式選舉
4、 - 原則:選舉保證任意時(shí)刻最多只能有一個(gè)Leader - 投票:得到多數(shù)派(N+1)/2的人成為L(zhǎng)eader - 關(guān)鍵細(xì)節(jié): - 對(duì)時(shí)鐘的依賴:lease與心跳的折中 - 選舉時(shí)機(jī)的選擇:避免選舉分裂,支持投票權(quán)重 - 成員投票不自相矛盾的保證:持久化與非持久化的折中 - 折中的方案,保證簡(jiǎn)單的設(shè)計(jì): - 選舉窗口,不設(shè)心跳,不寫日志,依賴時(shí)鐘 - 支持權(quán)重OceanBase的高可用方案RootServer的分布式選舉時(shí)序分析 - 時(shí)鐘誤差最大為Tdiff,網(wǎng)絡(luò)網(wǎng)路傳輸單程最長(zhǎng)耗時(shí)為Tst - 收到預(yù)投票消息的時(shí)間區(qū)間T1-Tdiff2,T1+Tdiff2+Tst=T2 - 收到投票消息的時(shí)
5、間區(qū)間T2-Tdiff2,T2+Tdiff2+Tst=T3 - 收到廣播消息的時(shí)間區(qū)間T3-Tdiff2,T3+Tdiff2+Tst=T4 - 選舉耗時(shí)Telect=T4-T1=Tdiff6+Tst3接收預(yù)投票接收投票接收廣播T T1 1: :預(yù)投票預(yù)投票T T2 2: :投票投票T T3 3: :計(jì)票計(jì)票& &廣播廣播T T4 4: :選舉結(jié)束選舉結(jié)束OceanBase的高可用方案RootServer的分布式選舉周期分析 - 時(shí)鐘偏差Tdiff=100ms,網(wǎng)絡(luò)單程傳輸Tst=200ms - 選舉耗時(shí)Telect=Tdiff6+Tst3=1200ms - 擴(kuò)展的選舉耗時(shí)Tel
6、ect2=Telect+200=1400ms - Tlease=4Telect2=5600ms,從T1開始 - 無主選舉周期Tcycle=5Telect2=7000msT T1 1T TleaseT TcycleT T4 4接收預(yù)投票接收投票接收廣播T T1 1: :預(yù)投票預(yù)投票T T2 2: :投票投票T T3 3: :計(jì)票計(jì)票& &廣播廣播T T4 4: :選舉結(jié)束選舉結(jié)束OceanBase的高可用方案RootServer的分布式選舉時(shí)鐘分析 - 對(duì)時(shí)鐘誤差的容忍:Tdiff = (Telect2+T3-T1) ,即2200ms - 最長(zhǎng)恢復(fù)時(shí)間: (Tlease+ Tcy
7、cle+Telect) 約兩個(gè)選舉周期,即14000msT TleaseT TcycleT T1 1T T3 3Leader T TleaseT TleaseT TcycleT T1 1T T3 3OceanBase的高可用方案多級(jí)Lease時(shí)間分析 - 多級(jí)Lease系統(tǒng):上級(jí)server給下級(jí)server授予lease - 假設(shè): - 第i層系統(tǒng)的lease時(shí)間為L(zhǎng)(i) - 最長(zhǎng)不可服務(wù)時(shí)間為D(i) - Lease renew間隔為T(i)- D(i) = L(i) + D(i-1)- 上級(jí)server宕機(jī)不影響下級(jí)server的Lease renew - 因此要求D(i - 1) =
8、 L(i) T(i) - Lease時(shí)間越長(zhǎng)宕機(jī)恢復(fù)時(shí)間越長(zhǎng)因此D(i - 1) = L(i) T(i)OceanBase的高可用方案多級(jí)Lease時(shí)間分析 - 上一頁的結(jié)論: - D(i) = L(i) + D(i-1) - D(i - 1) = L(i) T(i) - 推導(dǎo): - L(i) = D(i-1) + T(i) = L(i-1) + D(i-2) + T(i) = L(i-1) + L(i-1) T(i-1) + T(i) = 2*L(i-1) T(i-1) + T(i) - 近似結(jié)果: - L(i) = 2*L(i-1) - lease層級(jí)越多,下層系統(tǒng)lease時(shí)間越長(zhǎng),宕機(jī)停服務(wù)時(shí)間越長(zhǎng) - 盡量扁平化系統(tǒng)設(shè)計(jì)OceanBase的高可用方案多級(jí)Lease時(shí)間分析 - 上一頁的結(jié)論 - L(i) = 2*L(i-1) - D(i) = L(i) + D(i-1) - 第0級(jí)server自主選舉 - 沒有更上一級(jí)的server頒發(fā)lease,L(0)沒有意義 - 因此L(1) = D(0) + T(1) - RootServer選主宕機(jī)恢復(fù)時(shí)間約2*Telect2 - D(1) = L(1) + D(0) = 2*D(0) + T(1) - 因此UpdateServer宕機(jī)恢復(fù)時(shí)間最長(zhǎng)約為4*Telect2OceanBase1.0技
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 機(jī)械工程原理與工藝實(shí)踐題
- 標(biāo)準(zhǔn)保證擔(dān)保合同范本模板
- 2023年二代微通道板資金申請(qǐng)報(bào)告
- 2025寧夏中匯化工有限公司招聘8人筆試參考題庫(kù)附帶答案詳解
- 2025年斗型布草車項(xiàng)目建議書
- 2025年上半年安徽馬鞍山雨山區(qū)政府部門招聘17人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2024年疊片機(jī)項(xiàng)目資金申請(qǐng)報(bào)告代可行性研究報(bào)告
- 2025年上半年安徽馬鞍山博望區(qū)政府部門招聘派遣制人員27人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2024年熱敏型CTP版項(xiàng)目資金籌措計(jì)劃書代可行性研究報(bào)告
- 2025年上半年安徽省譙城區(qū)直單位選調(diào)筆試易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 2025山西國(guó)際能源集團(tuán)社會(huì)招聘258人筆試參考題庫(kù)附帶答案詳解
- 普華永道中天會(huì)計(jì)師事務(wù)所-人工智能機(jī)遇在汽車領(lǐng)域
- 2025年皖西衛(wèi)生職業(yè)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)新版
- 2025年湖南高速鐵路職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)傾向性測(cè)試題庫(kù)附答案
- 腰椎穿刺的護(hù)理
- 2025屆高考英語二輪復(fù)習(xí)備考策略課件
- 活在課堂里 課件
- 潔凈室空調(diào)凈化系統(tǒng)驗(yàn)證方案(通過BSI和華光審核)
- 2024年遼陽職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)及答案解析
- 中國(guó)春節(jié)習(xí)俗簡(jiǎn)介0001
- 高二數(shù)學(xué)教學(xué)進(jìn)度計(jì)劃表
評(píng)論
0/150
提交評(píng)論