




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、TiDB 技術(shù)演進(jìn)及生態(tài)發(fā)展勢(shì)高則圍廣,TiDB 技術(shù)演進(jìn)及生態(tài)發(fā)展商鞅之“大盤滅國棋”說起商鞅代表秦國執(zhí)黑子先行于天元密使:我許你重下商鞅:中樞之地,輻射四極,雄視八荒密使:先生招招高位,步步懸空,全無根基實(shí)地 商鞅:旦有高位,豈無實(shí)地?棋道,以圍地為歸宿,但必以取勢(shì)為根本。勢(shì)高則圍廣,勢(shì)卑則圍小。明勢(shì) - 分布式關(guān)系型數(shù)據(jù)庫,未來已來立勢(shì) - TiDB 從最難的路開始蓄勢(shì) - TiDB 關(guān)鍵技術(shù)創(chuàng)新取勢(shì) - TiDB 破繭而出及高速演進(jìn)圍廣 - TiDB 用戶與人才的繁榮明勢(shì) - 開源分布式關(guān)系型數(shù)據(jù)庫,未來已來“到 2020 年將有超過 500 億的終端與設(shè)備聯(lián)網(wǎng),未來超過 50% 的數(shù)
2、據(jù)需要在網(wǎng)絡(luò)邊緣側(cè)分析、處理與存儲(chǔ),到2025年,物聯(lián)網(wǎng)將產(chǎn)生 95% 的實(shí)時(shí)數(shù)據(jù)。”-IDC“到 2020 年,平均下來,一個(gè)人每天會(huì)產(chǎn)生 1.5GB 的數(shù)據(jù),每輛車會(huì)產(chǎn)生 4TB 的數(shù)據(jù),每架飛機(jī)會(huì)產(chǎn)生 40TB 的數(shù) 據(jù),每個(gè)小型的工廠會(huì)產(chǎn)生 1PB 的數(shù)據(jù)”-IntelCEOBianKzanchirr時(shí)代機(jī)遇 - 數(shù)據(jù)量爆炸性增長與數(shù)據(jù)庫現(xiàn)狀的矛盾現(xiàn)有數(shù)據(jù)存儲(chǔ)技術(shù)制約有狀態(tài)的數(shù)據(jù)難以擴(kuò)展,數(shù)據(jù)孤島;大數(shù)據(jù)技術(shù)棧處理時(shí)延高,并發(fā)處理能力弱;實(shí)時(shí)分析時(shí)效慢,數(shù)據(jù)服務(wù)價(jià)值低;用戶需求按需水平擴(kuò)展,靈活的業(yè)務(wù)不再受制于基礎(chǔ)架構(gòu);高并發(fā)、響應(yīng)延時(shí)低且穩(wěn)定;實(shí)時(shí)決策;“防范化解金融風(fēng)險(xiǎn)特別是防止發(fā)
3、生系統(tǒng)性金融風(fēng)險(xiǎn),是金融工作的根本性任務(wù)。要加快金融市場(chǎng)基礎(chǔ)設(shè)施建設(shè),穩(wěn)步 推進(jìn)金融業(yè)關(guān)鍵信息基礎(chǔ)設(shè)施國產(chǎn)化。”-2019年2月,習(xí)近平在主持中共中央政治局第十三次集體學(xué)習(xí)時(shí)發(fā)表重要講話。加強(qiáng)分布式數(shù)據(jù)庫研發(fā)應(yīng)用。-2019年8月,中國人民銀行金融科技發(fā)展規(guī)劃(20192021年)時(shí)代機(jī)遇 - 金融供給側(cè)結(jié)構(gòu)性改革開源軟件正在改變 IT 行業(yè)開源,是當(dāng)今基礎(chǔ)軟件領(lǐng) 域取得世界范圍內(nèi)成功 的最優(yōu)路徑。Redhat 市值 300+ 億美金MongoDB 市值 90+ 億美金Elastic Search 市值 60+ 億美金Cloudera 市值 20+ 億美金Confluent(Kafka)D 輪
4、 1.25 億美元融資(2019.1)Databricks(Spark)E 輪 2.5 億美元融資(2019.2)Redis Labs E 輪 6000 萬美元融資(2019.8)CockRoach Labs C 輪 5500 萬美元融資(2019.8)PingCAP(TiDB)C 輪 5000 萬美元融資(2018.9)立勢(shì) - TiDB 從最難的路開始不妥協(xié)的設(shè)計(jì)目標(biāo)回歸到 2015,重新設(shè)計(jì)一個(gè)數(shù)據(jù)庫,我 們認(rèn)為具備如下目標(biāo):擴(kuò)展性(Scale-out),動(dòng)態(tài)彈性不僅僅是數(shù)據(jù)量,還包括吞吐量強(qiáng)一致高可用標(biāo)準(zhǔn) SQL 與 事務(wù)(ACID )MySQL 協(xié)議基于云HTAP核心業(yè)務(wù)數(shù)據(jù)在公司有
5、多少副本?如何從 30+ - 10-行列混合、多計(jì)算引擎不放低的標(biāo)準(zhǔn)要求最高的客戶挑戰(zhàn)最難的場(chǎng)景兩個(gè)行業(yè)高地技術(shù)要求最高的互聯(lián)網(wǎng)穩(wěn)定可靠最苛刻的金融蓄勢(shì) - TiDB 關(guān)鍵技術(shù)創(chuàng)新高度分層的架構(gòu)MySQL Drivers(e.g. JDBC)TiDBTiKVMySQL ProtocolRPC無狀態(tài)的計(jì)算層分布式且支持事務(wù)的Key-Value 存儲(chǔ)引擎PD自動(dòng)、自定義調(diào)度API (gRPC)Transaction MVCCMulti-Raft (gRPC) RocksDBSQLASTLogical PlanOptimizedLogical PlanCost ModelSelectedPhysic
6、al PlanStatistics擴(kuò)展性(彈性)的基礎(chǔ) - 自動(dòng)分片(-, +)TiKV Key SpaceRegion (Range)ID: RegionX Range: start_key, end_key)Region Metadatastart_keyend_key來尋址。全局有序的 KV map按照等長大小策略自動(dòng)分裂分片(96 M)每個(gè)分片是連續(xù)的 KV,通過 Start/End key每個(gè)分片 Seek 成本固定我們稱該分片為 Region,它是復(fù)制Sor、ted調(diào)Ma度p的最小單位每一個(gè)分片也是彈性的Region 1 a-z)Region 1 a-z)increaseRegio
7、n 1 a-n)Region 2 n-z)SplitRegion 2 n-z)Region 1 a-n)decreasedecreaseRegion 1 a-z)Merge自動(dòng) merge96 MB 自增分片20 MB 合并分片SplitMerge彈性的復(fù)制組、強(qiáng)一致的復(fù)制算法Raft 、Multi - raftleader、follower、learner目前是強(qiáng)主模式、讀寫在 leader 上4.0 版本開啟 followerreadVS當(dāng)你創(chuàng)建一個(gè)表TiKV Node 3Store 3TiKV Node 1Store 1TiKV Node 2Store 2Region 1*Region
8、1Region 1Lets say, the amount of data within Region 1 exceeds the threshold (default: 96MB)PDPDPD隨著數(shù)據(jù)量的增加,開始了自動(dòng)分裂TiKV Node 3Store 3TiKV Node 1Store 1TiKV Node 2Store 2Region 1*Region 1Region 1Lets say, the amount of data within Region 1 exceeds the threshold (default: 96MB)PDPDPDI think I should spl
9、it up Region 1Rart 復(fù)制組隨著分片分裂而增加TiKV Node 3Store 3TiKV Node 2Store 2TiKV Node 1Store 1 Region 1*Region 1Region 2*Region 1Region 2Region 2Region 1 will be split into two smaller regions.(the leader of Region 1 sends a Split command as a special log to its replicas via the Raft protocol.Once the Split
10、command is successfully committed by Raft, that means the region has been successfully split.)PDPDPD副本絲滑的搬遷TiKV Node 3Store 3TiKV Node 2Store 2TiKV Node 1Store 1 Region 1*Region 1Region 1Region 2*Region 2Region 2TiKV Node 4Store 4PDPDPDPD: “Hey, Node1, create a new replica of Region 2 in Node 4, and
11、 transfer your leadership of Region 2 to Node 2”復(fù)制一個(gè)新的 followerTiKV Node 3Store 3TiKV Node 2Store 2TiKV Node 1Store 1 Region 1*Region 1Region 1Region 2Region 2*Region 2TiKV Node 4Store 4Region 2PDPDPD業(yè)務(wù)無感的副本遷移,讓集群動(dòng)態(tài)成為可能TiKV Node 3Store 3TiKV Node 2Store 2TiKV Node 1Store 1 Region 1*Region 1Region 1R
12、egion 2*Region 2TiKV Node 4Store 4Region 2PDPDPDPD: “OK, Node 1, delete your local replica of Region 2”彈性的靈魂 - 調(diào)度Node 1Node 2PDScheduling StrategeCluster InfoAdminHeartBeatScheduling CommandRegion CConfigMovement分片數(shù)量、Leader、吞吐量自動(dòng)平衡自定義調(diào)度接口支持跨 IDC 表級(jí)同時(shí)寫R入egion ARegion B動(dòng)態(tài)擴(kuò)展的數(shù)據(jù)庫打破了單表數(shù)據(jù)量的天花板打破了單集群寫入吞吐量的
13、天花板讓表級(jí)多 IDC 同時(shí)寫入成為可能讓海量數(shù)據(jù)下 HTAP 成為了可能分布式事務(wù)去中心化的兩階段提交通過 PD 全局受時(shí)(TSO)4M timestamps 每秒每個(gè) TiKV 節(jié)點(diǎn)分配單獨(dú)區(qū)域存放鎖信 息( CF lock)Google Percolator 事務(wù)模型TiKV 支持完整事務(wù) KV API默認(rèn)樂觀事務(wù)模型也支持悲觀事務(wù)模型(3.0+ 版本)默認(rèn)隔離級(jí)別: Snapshot IsolationTiDB 計(jì)算引擎 TiDBserver完全重構(gòu)的高度兼容 MySQL 計(jì)算引擎標(biāo)準(zhǔn) SQL 支持,DML & DDL支持 Online DDL,加字段秒回二級(jí)索引、Partition、
14、View、Window functionRBO & CBO相比 MySQL,更多的算子,hash join、 index join最大程度的下推策略、謂詞、聚合、TOP-N、limit向量化執(zhí)行引擎分布式執(zhí)行引擎SQLASTLogical PlanOptimized Logical PlanCost ModelSelected Physical Plantidb-serverStatisticsTiKVTiKVTiKVTiKVTiKVTiKVTiKV Cluster取勢(shì) - TiDB 破繭而出及高速演進(jìn)3.0 我們做的不僅僅如此。易用性更多的系統(tǒng)視圖,通過 SQL 進(jìn)行慢查詢分析。新的功能分區(qū)
15、表Titan 存儲(chǔ)引擎,將大 value 分離,減少讀寫放大,思想來自 WiscKey。插件系統(tǒng),白名單、審計(jì)等:RBAC優(yōu)化器準(zhǔn)確性提升,快速統(tǒng)計(jì)信息等:Fast/Increamental Analyze:悲觀鎖:Pessimistic Lock (experimental)SQL 執(zhí)行計(jì)劃管理與綁定:SQL Plan Management靜默 Region:優(yōu)化冷 Region 心跳策略:Hibernate regions分布式 GC 機(jī)制:讓 GC 更高效并行:Distributed GC性能提升4.5x 提 升 TPC-C benchmark1.5x 提升 Sysbench bench
16、markHTAP 偽命題?還是可探索的HTAP 必須是在一個(gè)計(jì)算引擎、一個(gè)存儲(chǔ)引擎嗎?我們認(rèn)為,HTAP 是針對(duì)業(yè)務(wù)來說,DB 透明且實(shí)效。擴(kuò)展性為 HTAP 奠定了基礎(chǔ),但還遠(yuǎn)遠(yuǎn)不夠。借助大數(shù)據(jù)生態(tài),我們研發(fā)了 TiSpark,豐富了計(jì)算能力。但仍然有兩個(gè)核心矛盾行存對(duì)于分析場(chǎng)景不友好沒有列存,你們也敢說自己是 HTAP?無法做到 Workload 隔離SparkExecSparkExecExecTiKVTiKVTiKVSparkDriverTiSparkTiSparkTiSparkTiSparkTiKVPlacement Driver (PD)gRPCgRPCretrieve data l
17、ocationSparkretrieve data from TiKVTiKV準(zhǔn)實(shí)時(shí)更新的列存 - TiFlash通過 Raft Learner 獨(dú)立同步一套列存Raft Learner 提供極低消耗的副本同步Raft Learner 讀取協(xié)議配合 MVCC 提供強(qiáng)一致的讀取通過 Label 進(jìn)行物理隔離AP / TP 作業(yè)互相無影響部分基于 ClickHouse準(zhǔn)實(shí)時(shí)更新的列存TiDB/TiSpark + TiKV/TiFlash兩個(gè)獨(dú)立的行列存儲(chǔ)引擎、兩個(gè)獨(dú)立的計(jì)算引擎通過 Raft 復(fù)制來代替繁重的 ETL,可以支持準(zhǔn)實(shí)時(shí)的 OLAP30 個(gè)業(yè)務(wù)副本可收斂到 10 個(gè),甚至更少下一步,同
18、一個(gè) Query,優(yōu)化器可以進(jìn)行不同的尋址沒有覆蓋 100% 場(chǎng)景的 HTAP,但支持的范圍可以一直擴(kuò)大相似性能、更高易用性圍廣 - TiDB 用戶與人才的繁榮堅(jiān)定開源Github: 20000+ stars, 開源分布式 NewSQL 領(lǐng)域排名第一;Github:400+ contributors,代碼貢獻(xiàn)者遍布全球;合作開發(fā)機(jī)構(gòu)包括 三星、美團(tuán)、知乎、微眾銀行等;2018年度全球最佳開源軟件獎(jiǎng)(by InfoWorld);CNCF 第一個(gè) Key-Value 數(shù)據(jù)庫項(xiàng)目(2019.5);CNCF Landscape(2017.6);Bigdata Landscape(2018.7);CNCF 基金會(huì)統(tǒng)計(jì)的旗下開源項(xiàng)目全球各 組織貢獻(xiàn)排行榜排名第六;同時(shí)是全球前十名中唯一的創(chuàng)業(yè)公司,貢 獻(xiàn)僅次于華為;人才戰(zhàn)略我們認(rèn)為:TiDB 人才是最終的競(jìng)爭力。所以, 在這個(gè) ToB 的行業(yè),我們采取 ToC的策略。我們內(nèi)部叫做 ToE,面向所有和 TiDB 相關(guān)的Enginer。為此,我們發(fā)起了 TiDB User Group (TUG
溫馨提示
- 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. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 充分條件與必要條件教學(xué)設(shè)計(jì)
- 統(tǒng)編版語文四下《第七單元復(fù)習(xí)》課件
- 動(dòng)物檢疫個(gè)人工作總結(jié)模版
- 流動(dòng)商住樓小區(qū)重大危險(xiǎn)源專項(xiàng)的施工組織方案
- 大學(xué)生職業(yè)規(guī)劃大賽《國際商務(wù)專業(yè)》生涯發(fā)展展示
- 老年臥床女性護(hù)理
- 普通服務(wù)員年終總結(jié)模版
- 員工消防培訓(xùn)試題及答案
- 銀行投行面試題目及答案
- 一級(jí)建造師資格考試試題及答案
- 安全生產(chǎn)重在提升執(zhí)行力
- 糜爛性胃炎的護(hù)理查房
- 攝影測(cè)量與遙感課件
- 注塑模具分類及結(jié)構(gòu)組成課件
- 裂解裂化工藝作業(yè)培訓(xùn)課件
- 酒店客房技能實(shí)訓(xùn)中式鋪床
- 工程部管理制度及工程部管理制度(工程公司)
- 基于ZYNQ的時(shí)鐘同步平臺(tái)的設(shè)計(jì)
- 回火爐安全操作規(guī)程
- 《輸變電工程建設(shè)標(biāo)準(zhǔn)強(qiáng)制性條文》施工實(shí)施計(jì)劃
- GB/T 19494.1-2023煤炭機(jī)械化采樣第1部分:采樣方法
評(píng)論
0/150
提交評(píng)論