OceanBase企業(yè)級數(shù)據(jù)庫介紹_第1頁
OceanBase企業(yè)級數(shù)據(jù)庫介紹_第2頁
OceanBase企業(yè)級數(shù)據(jù)庫介紹_第3頁
OceanBase企業(yè)級數(shù)據(jù)庫介紹_第4頁
OceanBase企業(yè)級數(shù)據(jù)庫介紹_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、透明可擴(kuò)展的企業(yè)級數(shù)據(jù)庫OceanBase 企業(yè)級數(shù)據(jù)庫介紹目錄什么是透明可擴(kuò)展透明可擴(kuò)展的理論基礎(chǔ)透明可擴(kuò)展的關(guān)鍵設(shè)計 OceanBase實踐企業(yè)級數(shù)據(jù)庫:Oracle、SQLServer、DB2云數(shù)據(jù)庫:Amazon Aurora、Amazon Redshi魔力四象限行業(yè)現(xiàn)狀A(yù)BILITY TO EXECUTECHALLENGERSftMarkLogicMongoDBIntersystemsLEADERSMicrosoftOracleAmazon Web ServicesSAPIBMEnterpriseDBDataStaxMapRActianNICHE PLAYERSGoogle Alib

2、aba CloudVISIONARIESCOMPLETENESS OF VISIONAs of June 2018Gartner.Inc企業(yè)級數(shù)據(jù)庫面臨的問題單機(jī)不可擴(kuò)展$成本高云數(shù)據(jù)庫:開源數(shù)據(jù)庫 + 存儲計算分離解決了存儲可擴(kuò)展問題,但事務(wù)和SQL不可擴(kuò)展開源數(shù)據(jù)庫核心能力距離企業(yè)級數(shù)據(jù)庫仍有較大差距云數(shù)據(jù)庫 != 透明可擴(kuò)展DB(寫入)DB(只讀)存儲集群Hybrid clouds require excellent distributed OLTP DBMS, and the memory/storage architecture still requires a lot of wor

3、k. In addition, data security and data management are both issues that need to be considered.C MohanICDE 2019, IBM Fellow分庫分表 != 透明可擴(kuò)展middleware中間件分庫分表分布式數(shù)據(jù)庫全局索引全局快照跨服務(wù)器復(fù)雜查詢跨服務(wù)器DML語句帶容錯能力的分布式事務(wù)無需業(yè)務(wù)修改,按需擴(kuò)容核心能力可擴(kuò)展(存儲、事務(wù)、SQL)線性可擴(kuò)展持續(xù)可用,穩(wěn)定企業(yè)級數(shù)據(jù)庫功能通過核心業(yè)務(wù)和benchmark證明透明可擴(kuò)展的企業(yè)級數(shù)據(jù)庫目錄什么是透明可擴(kuò)展透明可擴(kuò)展的理論基礎(chǔ)透明可擴(kuò)展的關(guān)鍵

4、設(shè)計 OceanBase實踐原子性(A)事務(wù)操作要么全部成功,要么全部失敗一致性(C)一個事務(wù)只能使數(shù)據(jù)庫從一個一致的狀態(tài)跳轉(zhuǎn)到另一個一致的狀態(tài),不能破壞主鍵唯一或者所有列之 和為固定值之類的約束隔離性(I)多個并發(fā)事務(wù)互相不影響,就如同多個事務(wù)串行執(zhí)行一般持久性(D)一旦事務(wù)成功提交,它對數(shù)據(jù)庫的影響是永久的事務(wù)ACID1978年, Jim Gray阻塞協(xié)議:參與者宕機(jī)/協(xié)調(diào)者宕機(jī)一臺機(jī)器故障導(dǎo)致整個集群不可服務(wù)分布式事務(wù):2PC協(xié)議的陷阱參 與 者協(xié)調(diào)者參 與 者PrepareCommittedPreparePreparedPreparedCommitCommitCommitted X 分

5、布式事務(wù)的應(yīng)對方案中間件XA:依賴數(shù)據(jù)庫NOSQL系統(tǒng):CAP理論,回避一致性與分布式事務(wù)云時代的架構(gòu)選擇:直面問題,采用Paxos + 2PC分布式事務(wù):Paxos + 2PCConsensus on Transaction CommitJim Gray and Leslie Lamport Microsoft Research1 January 2004Revised 19 April 2004,8 September 2005二階段參與者二階段參與者二階段參與者事務(wù)管理器事務(wù)管理器事務(wù)管理器ReplicaReplicaReplicaPaxosPaxosPaxosLeader主備同步模式:

6、最高保護(hù)模式、最高性能模式、最高可用模式CAP:P無法規(guī)避,C與A不可兼得Paxos的高可用與CAP的可用性Paxos高可用:單點故障時多數(shù)派能否快速恢復(fù)CAP可用性:單點故障時故障節(jié)點能否恢復(fù)CAP與PaxosConsistencyAvailabilityPartition ToleranceCACPAPRaft的得與失得:順序提交日志,大簡化Paxos失:并發(fā)能力更差,犧牲可用性,異地部署有風(fēng)險常見系統(tǒng)做法Paxos陣營:Google Spanner,Ant Financial OceanBase 1.0,Amazon DynamoDBRaft陣營:Ant Financial OceanB

7、ase 0.5, Tencent TDSQL,以及一系列開源系統(tǒng)Raft or Paxos123456123456等待X主機(jī)備機(jī)PaxosRaft目錄什么是透明可擴(kuò)展透明可擴(kuò)展的理論基礎(chǔ)透明可擴(kuò)展的關(guān)鍵設(shè)計OceanBase實踐全局一致性 / 強(qiáng)一致的全局索引多種數(shù)據(jù)分區(qū),二級分區(qū)分區(qū)分裂:數(shù)據(jù)量太大或者load太高時自動分裂分區(qū)合并:數(shù)據(jù)刪除較多,相鄰分區(qū)自動合并分布式分區(qū)表PartitionsTableAPP服務(wù)器自動上下線負(fù)載重新均衡邏輯復(fù)制與物理復(fù)制自動負(fù)載均衡調(diào)度總控工作機(jī)P1P2P3工作機(jī)P2P3P4工作機(jī)P1P3P4工作機(jī)P1P2P4多因子負(fù)載均衡計算均衡(CPU&內(nèi)存),存儲均

8、衡(磁盤占用)計算存儲資源配比和實際業(yè)務(wù)不匹配存儲遷移耗時長,計算負(fù)載變化快存儲計算分離分布式數(shù)據(jù)庫負(fù)責(zé)計算均衡,存儲集群負(fù)責(zé)存儲均衡負(fù)載均衡的兩難選擇分布式 數(shù)據(jù)庫存儲集群主備切換不殺事務(wù):新事務(wù)在新的主分區(qū)開啟,進(jìn)行中事務(wù)在線遷移分區(qū)分裂不殺事務(wù):新事務(wù)在分裂后的新分區(qū)開啟,進(jìn)行中事務(wù)在線遷移分區(qū)容錯POP1P2P1分區(qū)分裂P1P1P1主備切換P1已完成事務(wù)進(jìn)行中事務(wù)新開啟事務(wù)P1讀寫請求重試,防止重試任務(wù)級重試Proxy在線升級,數(shù)據(jù)庫在線session遷移異常處理:磁盤/服務(wù)器hung住,“半死不活”全鏈路請求容錯分布式 數(shù)據(jù)庫ProxyAPPProxyProxy分布式數(shù)據(jù)庫跨機(jī)場景獲

9、取全局事務(wù)版本號(SCN)主備強(qiáng)同步兩階段提交分布式執(zhí)行計劃異步執(zhí)行不占用工作線程協(xié)程降低線程切換開銷分布式線程模型工 作 線 程工 作 線 程工 作 線 程日志緩沖區(qū)日志線程異步回調(diào) 應(yīng)答客戶端強(qiáng)類型系統(tǒng)行迭代批處理推模型提升代碼局部性編譯執(zhí)行并行執(zhí)行HTAP執(zhí)行引擎int compare(Key k1,Key k2)int ret = 0;if ( INT = k1.get_type() & INT = k2.get_type() ret = int_compare(k1.get_value(), k2.get_value(); else if NUMBER = k1.get_type()

10、& NUMBER = k2.get_type() ret = number_compare(k1.get_value(), k2.get_value();AggregateProjectFilterScanselect count(*) from store_sales where ss_item_sk = 1000;volcano模型基于代價的查詢優(yōu)化器Adaptive Cursor Sharing解決大小賬號問題SQL Plan Management執(zhí)行計劃演進(jìn)企業(yè)級查詢優(yōu)化器老計劃新計劃流量老計劃基線新計劃基線演進(jìn)新計劃無 性能回退根據(jù)基線 復(fù)現(xiàn)計劃單機(jī)數(shù)據(jù)庫:串行優(yōu)化 = 算子局部并行

11、化并行優(yōu)化createtablet1(aintprimary key, bint, cint) partition byhash(a)partitions4;createtablet2(aintprimary key, bint, cint) partition byhash(a)partitions4;createtablet3(aintprimary key, bint, cint) partition byhash(a)partitions5;select* fromt1,t2,t3 where t1.a= t2.aand t2.b = t3.b;HJMJt2t3t1并行化PWHJEX(

12、HASH)t1EX(HASH)PWMJEX(HASH)t2EX(HASH)t3第一階段第二階段PWHJEX(HASH)PWMJt1t2EX(HASH)t3最優(yōu)計劃(大概率)目錄什么透明可擴(kuò)展透明可擴(kuò)展的理論基礎(chǔ)透明可擴(kuò)展的關(guān)鍵設(shè)計OceanBase實踐阿里巴巴、螞蟻金服自主研發(fā)的企業(yè)級分布式關(guān)系數(shù)據(jù)庫第一次將Paxos協(xié)議引入到關(guān)系數(shù)據(jù)庫領(lǐng)域,實現(xiàn)持續(xù)可用工業(yè)級shared nothing分布式數(shù)據(jù)庫架構(gòu),無需業(yè)務(wù)修改代碼透明可擴(kuò)展全局一致的數(shù)據(jù)庫視圖跨服務(wù)器復(fù)雜查詢MySQL全兼容,Oracle部分兼容,原生多租戶支持關(guān)于OceanBase螞蟻金服:支付寶核心鏈路100%支付量, 網(wǎng)商銀行全部流量,并已進(jìn)軍國際業(yè)務(wù)OceanBase使用情況在浙商銀行、南京銀行、蘇州銀行、廣東 農(nóng)信、人保健康險等外部客戶的互聯(lián)網(wǎng)核 心系統(tǒng)中,承擔(dān)交易數(shù)據(jù)庫的重要角色交易支付透明拆分螞蟻金服交易支付按照user_id拆分N份,需要擴(kuò)容到M*N份痛點:中間件+業(yè)務(wù)拆分,需要上百人年開發(fā)量,技術(shù)風(fēng)險很高解決方案:OceanBase分區(qū)表實現(xiàn)透明拆分透明拆分分區(qū)表分區(qū)表分區(qū)表螞蟻金服會員系統(tǒng),根據(jù)user_id,user_name,email查找用戶信息痛點:單機(jī)數(shù)據(jù)庫,只能垂直擴(kuò)展,無法水平擴(kuò)展解決方案:OceanBas

溫馨提示

  • 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

提交評論