<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          TiDB 社區(qū) | 黃東旭:可插拔性 × 調(diào)度能力 × 云上幾乎無(wú)限的資源 = ?丨PingCAP DevCon 2021

          共 6463字,需瀏覽 13分鐘

           ·

          2021-07-30 21:54

          這次我分享的主題和 2019 年還是一樣的——《The  Future  of Database》,如果你是 PingCAP 的老朋友,參加過(guò)之前幾次 DevCon 就會(huì)知道,這是我的一個(gè)保留節(jié)目。如果要說(shuō)我哪里有一些與眾不同的氣質(zhì),我覺(jué)得除了發(fā)型之外,還有一個(gè)是對(duì)技術(shù)的信仰和執(zhí)著。這個(gè)保留節(jié)目我們還是聊聊技術(shù)。

          過(guò)去兩年, TiDB 在技術(shù)上發(fā)生的最大變化是什么?可能有很多同學(xué)覺(jué)得性能變得越來(lái)越好,功能變得越來(lái)越多,生態(tài)功能越來(lái)越大,其實(shí)不是。

          從一個(gè)程序員角度看,在過(guò)去兩年中 TiDB 其實(shí)完成了一個(gè)很重要的轉(zhuǎn)變,那就是開(kāi)發(fā)模式的轉(zhuǎn)變。上圖中左邊是一個(gè)工程師對(duì)著屏幕在寫代碼,這是我們?cè)缒暝诘谝粋€(gè)辦公室里面開(kāi)始寫 TiDB 第一行代碼的狀態(tài)。旁邊放了一瓶可樂(lè)和披薩,想到什么寫什么?,F(xiàn)在 TiDB 整個(gè)研發(fā)流程越來(lái)越像右邊這張圖,一個(gè)小工廠流水線化做月餅。雖然現(xiàn)在離中秋節(jié)還稍微有點(diǎn)距離,還是很可愛(ài)。

          TiDB 這兩年最重要的一件事情,是研發(fā)流程以一個(gè)全新的發(fā)版模型去做軟件工程,我們稱它為“火車發(fā)版”模型。這個(gè)模型的特點(diǎn),是我們會(huì)把很多大的 feature 以小的迭代進(jìn)行逐步增量發(fā)布,意味著更易于管理發(fā)布周期。

          很多人可能會(huì)說(shuō)“關(guān)我什么事?”,這件事情非常重要的意義在于,TiDB 從一個(gè)純粹社區(qū)的開(kāi)源軟件開(kāi)始慢慢變成面向企業(yè)級(jí)的數(shù)據(jù)庫(kù)產(chǎn)品。說(shuō)得再接地氣一點(diǎn),用戶真實(shí)場(chǎng)景里面需要的 feature 最快兩個(gè)月就能合并到 TiDB 的主干,并交付給用戶。

          兩年前,我的演講題目也是《The Future of Database》,上圖是兩年前演講的截圖。向量化,當(dāng)時(shí)這是一個(gè)挑戰(zhàn),現(xiàn)在已經(jīng)完成了;TiFlash ,當(dāng)時(shí)只是在草圖上設(shè)計(jì)的一個(gè)架構(gòu),在 5.0 引入 MPP 后讓它變成了一個(gè)真正的 Real-time HTAP 的數(shù)據(jù)庫(kù);IPC /異步提交,5.0 的性能和穩(wěn)定性都得到了穩(wěn)步提升;TiDB DBaaS,現(xiàn)在 TiDB Cloud 已經(jīng)是服務(wù)千家萬(wàn)戶,服務(wù)全球各個(gè)地方的真實(shí)產(chǎn)品;本地事務(wù)異地多活,兩年時(shí)間也做完了。

          兩年前的五大構(gòu)想,今天都變成了現(xiàn)實(shí)。

          從 2019 年到現(xiàn)在的兩年時(shí)間中,在這些 feature 背后我們經(jīng)歷了什么?是兩年時(shí)間超過(guò)三萬(wàn)個(gè) PR 的合并。人總是有成長(zhǎng)的,兩年前的我和現(xiàn)在的我區(qū)別是什么?發(fā)型沒(méi)有變,T 恤也是一樣的,變化的是 TiDB 合并了三萬(wàn)多個(gè) PR?;仡^看我兩年前的 PPT,我在思考一個(gè)問(wèn)題,TiDB 的競(jìng)爭(zhēng)力或核心優(yōu)勢(shì)是什么?很多數(shù)據(jù)庫(kù)都說(shuō)自己的核心優(yōu)勢(shì)是性能好、功能多。那么,TiDB 的優(yōu)勢(shì)是什么?

          兩年前我的 PPT 里面有一頁(yè)叫 Everything  is  Pluggable,我覺(jué)得特別有味道,TiDB 的真正優(yōu)勢(shì)在于技術(shù)開(kāi)放性。架構(gòu)開(kāi)放就意味著能夠產(chǎn)生更多的連接,更多連接意味著更快的迭代速度、更多的可能性。

          為什么 TiDB 的系統(tǒng)核心優(yōu)勢(shì)是開(kāi)放性?大家可以花幾秒鐘時(shí)間去思考一下,這一個(gè)思考的角度,讓我這兩年慢慢開(kāi)始變成一個(gè)哲學(xué)家。這個(gè)角度是:?jiǎn)螜C(jī)數(shù)據(jù)庫(kù)和分布式數(shù)據(jù)庫(kù)最本質(zhì)的區(qū)別是什么?做分布式數(shù)據(jù)庫(kù)的工程師的這些痛苦和幸福的根源在哪里?我們真正的敵人是什么?我們要解決什么樣的問(wèn)題?我們?cè)趺唇鉀Q這些問(wèn)題?

          作為一個(gè)系統(tǒng)的設(shè)計(jì)者,在思考系統(tǒng)的時(shí)候,我覺(jué)得我們真正的敵人是復(fù)雜性。TiDB 這么一個(gè)幾百萬(wàn)行代碼的軟件,跑在 3 臺(tái)機(jī)器上,跑在 30 臺(tái)、300 臺(tái)、3 萬(wàn)臺(tái)的服務(wù)器上還是這一套代碼。大家想象一下, 3 臺(tái)機(jī)器的復(fù)雜性和 3 萬(wàn)臺(tái)機(jī)器的復(fù)雜性是一樣的嗎?

          我們生活中見(jiàn)過(guò)最復(fù)雜的系統(tǒng)是什么?就是活生生的生命,生命是最復(fù)雜的系統(tǒng)。包括每個(gè)人每天在和這個(gè)世界發(fā)生各種各樣的交互,我們沒(méi)有辦法預(yù)料明天。我們?nèi)タ瓷@么一個(gè)復(fù)雜的系統(tǒng),我們往里看人的生命最開(kāi)始就是一個(gè)受精卵,細(xì)胞不停分裂,很簡(jiǎn)單。再往下看 DNA,排列組合,所以我覺(jué)得從生命和自身的角度看,才能真正找到解決對(duì)抗復(fù)雜性的辦法,這就簡(jiǎn)單了。

          這里有肖邦老師的一句話,真正難的事情是把系統(tǒng)做簡(jiǎn)單,簡(jiǎn)單意味著美。TiDB 在這方面的設(shè)計(jì)理念和很多的常規(guī)做法還是有點(diǎn)不一樣的,剛才我提到一句話,我們幸福和痛苦的根源在哪?剛才也提到我們是一個(gè)不一樣的公司,技術(shù)上往深去思考我們到底和其他的數(shù)據(jù)庫(kù)區(qū)別是什么?最根源的區(qū)別我覺(jué)得在于核心的設(shè)計(jì)理念,當(dāng)理解了 TiDB 核心設(shè)計(jì)理念再去看 TiDB 的技術(shù)架構(gòu)設(shè)計(jì),有很多具體技術(shù)問(wèn)題大家自然就能夠想通了,也能想到為什么我們會(huì)這么做。

          左邊這是一個(gè)慣常思維,1) 我要做一個(gè)數(shù)據(jù)庫(kù),2) 做一個(gè)分布式數(shù)據(jù)庫(kù)會(huì)怎么做,3) 我試著把這些數(shù)據(jù)庫(kù)上面的表給做分片,分區(qū)表,不同的分區(qū)放在不同的服務(wù)器上就是分布式了。

          我們過(guò)去從來(lái)沒(méi)有做過(guò)數(shù)據(jù)庫(kù),但是我們有一個(gè)瘋狂的想法,這個(gè)想法就是我們要做一個(gè)分布式數(shù)據(jù)庫(kù),我們開(kāi)始是去定義數(shù)據(jù)最小的流轉(zhuǎn)單元,像剛才看到的那張動(dòng)圖里面的細(xì)胞一樣,我們?nèi)ザx這些細(xì)胞的分裂、合并、移動(dòng),復(fù)制,繁殖。把這些規(guī)則用最極簡(jiǎn),正交,自洽的規(guī)則賦予這些細(xì)胞生命,讓這些細(xì)胞長(zhǎng)成一個(gè)數(shù)據(jù)庫(kù),是 TiDB 最核心的理念。單機(jī)數(shù)據(jù)庫(kù)和分布式數(shù)據(jù)庫(kù)本質(zhì)區(qū)別在什么,分布式數(shù)據(jù)庫(kù)在一臺(tái)臺(tái)機(jī)器上是可以生長(zhǎng)的。

          左邊這張圖解釋了一下,常規(guī)是這樣去設(shè)計(jì),幾乎所有的數(shù)據(jù)庫(kù)都是從上往下設(shè)計(jì)的,TiDB 是一個(gè) bottom-up 的設(shè)計(jì),先定義底層細(xì)胞,在讓它長(zhǎng)成一個(gè)數(shù)據(jù)庫(kù)的樣子。

          下一個(gè)問(wèn)題,讓大家思考幾秒鐘,給大家鋪墊一下,左邊的名詞,兩地三中心,異地多活,跨地域數(shù)據(jù)分布能力,本地事務(wù),動(dòng)態(tài)熱點(diǎn)打散,實(shí)時(shí)在線撈數(shù),只讀表。這些功能的共同點(diǎn)是什么?

          問(wèn):如果我要去實(shí)現(xiàn)這些功能該怎么去實(shí)現(xiàn)?這些功能背后的共同點(diǎn)是什么?有沒(méi)有一個(gè)關(guān)鍵的點(diǎn),解決了這個(gè)點(diǎn)所有能力都能馬上擁有,有沒(méi)有這樣的東西?

          答案揭曉,剛才所有這些技術(shù)的名詞和所有的這些剛才提到的用戶看到的東西,背后都依賴一個(gè)能力就是“調(diào)度”,剛才我提到了那個(gè)問(wèn)題,一個(gè)單機(jī)數(shù)據(jù)庫(kù),一個(gè)單機(jī)系統(tǒng)和分布式系統(tǒng)最本質(zhì)的區(qū)別到底是什么?我給出答案是可調(diào)度能力,這是區(qū)別于單機(jī)系統(tǒng)最主要的能力??烧{(diào)度能力是開(kāi)放的基礎(chǔ),開(kāi)放架構(gòu)不能讓這個(gè)數(shù)據(jù)庫(kù)以不變應(yīng)萬(wàn)變,這個(gè)萬(wàn)變就像把自己重塑成更適合用戶的場(chǎng)景的數(shù)據(jù)庫(kù),如果沒(méi)有這樣的能力分布式系統(tǒng)就變得沒(méi)有意義,就不能說(shuō)自己是一個(gè)開(kāi)放的系統(tǒng)。
          所以,這個(gè)其實(shí)是 TiDB 在技術(shù)架構(gòu)上最核心最閃光的價(jià)值。今天聊技術(shù),我們?cè)诳烧{(diào)度性上做了哪些事情,這是一盤大棋,不是一個(gè) feature,這是一個(gè)理念,我們看這個(gè)理念過(guò)去現(xiàn)在和未來(lái)會(huì)長(zhǎng)成什么樣子。熟悉 Raft Proxy 技術(shù)的朋友,底層架構(gòu)上,剛才我提到的細(xì)胞是基于 Raft 復(fù)制協(xié)議的復(fù)制組,這其實(shí)是我們整個(gè)調(diào)度最細(xì)粒度的單元,我們?cè)谶@些一個(gè)個(gè)數(shù)據(jù)復(fù)制組上賦予它自我繁殖、分裂、合并、移動(dòng)的能力。右邊這張圖有一個(gè) Learner,用戶會(huì)心一笑,選擇這樣的單元作為細(xì)胞是很合適的,每一個(gè)細(xì)胞的行為都是一樣的,它是同構(gòu)的。

          我們?cè)俜棚w一下,原來(lái) Learner 這個(gè)技術(shù)的第一次引用我們想給它找一個(gè)應(yīng)用場(chǎng)景,這個(gè)應(yīng)用場(chǎng)景就是 TiFlash,本來(lái)只是我們腦中一個(gè)小實(shí)驗(yàn),我能不能在這個(gè)細(xì)胞上讓它多復(fù)制一小塊,讓它干點(diǎn)別的事情? 當(dāng)時(shí),我們覺(jué)得 AP 能力不太強(qiáng),需要底層數(shù)據(jù)存儲(chǔ)列存的數(shù)據(jù)結(jié)構(gòu),我們把這個(gè)架構(gòu)在副本上讓它支持列存,于是 TiDB 就有了 HTAP 的能力,在這個(gè)基礎(chǔ)上不到兩年時(shí)間一個(gè)小團(tuán)隊(duì)把整個(gè) Real-Time HTAP 這個(gè)系統(tǒng)就做出來(lái)了。

          為什么這么快做出來(lái)?TiFlash 是可調(diào)度性的理念絕佳的一個(gè)例子,而且我腦子里還有很多很奇怪的想法,Real-Time HTAP,TiFlash 只是開(kāi)始。

          最細(xì)粒度的調(diào)度能力,可調(diào)度上的調(diào)度能力,我們?cè)龠M(jìn)一步往上看,有一些朋友熟悉 Foreign Data Wrapper(FDW),現(xiàn)在 TiDB 還不支持 Foreign Data Wrapper。這個(gè)功能比較好理解的一個(gè)說(shuō)法,讓 TiDB 把其他的數(shù)據(jù)源當(dāng)作它內(nèi)部一張表來(lái)進(jìn)行查詢,比如說(shuō)當(dāng)這個(gè)功能支持了以后,我可以把 Redis 作為 TiDB 中的一張外表,把 MySQL 數(shù)據(jù)作為一張外表,可以一起關(guān)聯(lián)分析 HBase 這些數(shù)據(jù)。

          但是,F(xiàn)DW 意義僅僅停留在"聯(lián)邦查詢"嗎?我在思考這個(gè) feature 是為什么?因?yàn)槲以诳催@個(gè) feature 的時(shí)候聯(lián)想到關(guān)于數(shù)據(jù)庫(kù)的本質(zhì),數(shù)據(jù)庫(kù)這種軟件的本質(zhì)是什么?當(dāng)你拋開(kāi)所有的數(shù)據(jù)結(jié)構(gòu),存儲(chǔ)的能力,拋開(kāi)所有功能,數(shù)據(jù)庫(kù)里面到底存了什么東西?數(shù)據(jù)庫(kù)把所有剛才我說(shuō)的概念都剝離開(kāi),它只干兩件事情,一是存儲(chǔ)真實(shí)的數(shù)據(jù),另外一部分是叫做索引,數(shù)據(jù)庫(kù)無(wú)非就是數(shù)據(jù)和索引,怎么在這兩種概念中輾轉(zhuǎn)騰挪。按照剛才的思路把整個(gè)數(shù)據(jù)庫(kù)當(dāng)成數(shù)據(jù)和索引的容器,索引這個(gè)概念其實(shí)就是一種特殊映射的表關(guān)系,索引也是一張表,你要索引的內(nèi)容對(duì)應(yīng)到數(shù)據(jù)上的映射關(guān)系。

          那我們就跟著這個(gè)思路重新思考 FDW。右邊是我的靈魂畫風(fēng),有點(diǎn)難以看懂,今天整個(gè)數(shù)據(jù)庫(kù)行業(yè)的趨勢(shì),其中一個(gè)趨勢(shì)是各種各樣的細(xì)分領(lǐng)域的數(shù)據(jù)庫(kù)誕生,圖數(shù)據(jù)庫(kù),向量搜索數(shù)據(jù)庫(kù),全文檢索數(shù)據(jù)庫(kù),TiDB 能不能把這些數(shù)據(jù)庫(kù)的能力變成它的索引能力?比如說(shuō)我有一張表這里面存儲(chǔ)著用戶的關(guān)系,用戶的信息,大家知道在一個(gè)關(guān)系上的搜索、查詢用圖的模型更好,如果是用傳統(tǒng)的比如說(shuō)我用索引的數(shù)據(jù)結(jié)構(gòu)查詢得很慢,用圖模型可以極大加速這個(gè)性能。如果從這個(gè)角度去思考,TiDB 的索引能夠接入其他的這些數(shù)據(jù)庫(kù),讓其他的數(shù)據(jù)庫(kù)作為 TiDB 的索引,同時(shí)以一個(gè)統(tǒng)一的接口給用戶提供服務(wù),是不是打開(kāi)了新世紀(jì)大門的感覺(jué)?

          今天大會(huì)的主題是開(kāi)放×連接×預(yù)見(jiàn)

          我覺(jué)得特別有意思就是這個(gè)“×”號(hào),我也不知道這些東西加進(jìn)去以后能對(duì) TiDB 的生態(tài)帶來(lái)多大的可能性,任何人試圖去預(yù)估它的價(jià)值都是傲慢的,我們能做的就是把這些基礎(chǔ)給開(kāi)發(fā)者打好,這是索引的部分。

          我們?cè)侔涯抗馔驴?,?shù)據(jù)庫(kù)的本質(zhì)一個(gè)是數(shù)據(jù),一個(gè)是索引,現(xiàn)在我們看數(shù)據(jù),關(guān)于數(shù)據(jù)大家第一個(gè)聯(lián)想就是存儲(chǔ)引擎,數(shù)據(jù)的存儲(chǔ)是最關(guān)鍵的一個(gè)話題。熟悉 TiDB 整體系統(tǒng)架構(gòu)的同學(xué)肯定對(duì)左邊這張靈魂畫風(fēng)的圖不會(huì)陌生,剛才我提到 TiDB 在內(nèi)部其實(shí)是把數(shù)據(jù)已經(jīng)拆分成了無(wú)數(shù)個(gè)小小的細(xì)胞,每個(gè)細(xì)胞是一個(gè)復(fù)制組,分裂,合并,移動(dòng)。但是在物理層面上存儲(chǔ)我們現(xiàn)在是使用基于 Database 的 Real-time HTAP。TiKV 底層用的是 Rocks DB ,TiFlash 用的存儲(chǔ)引擎我們命名叫 Delta tree,兩種引擎。

          還能不能有更多?

          在存儲(chǔ)上去體現(xiàn)開(kāi)放性和可調(diào)度性的能力,有一個(gè)基礎(chǔ)的前提就是對(duì)存儲(chǔ)引擎進(jìn)行抽象,熟悉 TiDB 的代碼的同學(xué)如果去看它的代碼倉(cāng)庫(kù),發(fā)現(xiàn)有一個(gè)很有意思的文件夾叫 Engine API,這件事情特別有意思,我直接把代碼放上了,意思就是我們?cè)噲D去對(duì)存儲(chǔ)本身的能力進(jìn)行抽象,這個(gè)抽象是一個(gè)基礎(chǔ)。

          這個(gè)抽象的意義在哪?我們?yōu)槭裁醋鲞@件事情?我對(duì)未來(lái)的一個(gè)判斷,為什么一般來(lái)說(shuō)數(shù)據(jù)庫(kù)技術(shù)負(fù)責(zé)人總會(huì)談到性能、功能,為什么今天我們來(lái)討論哲學(xué)?因?yàn)槲矣X(jué)得從更長(zhǎng)的一個(gè)維度來(lái)看,當(dāng)你的軟件在保持高速迭代能力的時(shí)候,它是一個(gè)動(dòng)態(tài)的進(jìn)化過(guò)程,進(jìn)化的終局是什么?

          先來(lái)看性能,在 TiDB 發(fā)展過(guò)程中,每一個(gè)版本都保持著 100% 性能提升的速度往前走,可以保持到 6.0,7.0 每次都是百分之百增長(zhǎng),未來(lái)優(yōu)化是無(wú)止境的。我個(gè)人認(rèn)為,不會(huì)說(shuō)發(fā)明了一種新的硬件和算法解決了全世界所有應(yīng)用場(chǎng)景的性能問(wèn)題,粒度會(huì)變得越來(lái)越細(xì),有一些優(yōu)化用于某些具體場(chǎng)景,比如用來(lái)存用戶的關(guān)聯(lián)和關(guān)系就是圖的模型最好。但是有一點(diǎn),我覺(jué)得用戶不用去關(guān)心他在使用什么樣的數(shù)據(jù)庫(kù)的結(jié)構(gòu),哪一塊數(shù)據(jù)在使用哪一種數(shù)據(jù)結(jié)構(gòu),這些都不重要。

          右邊的圖透露了 TiDB 在做的巨大的一個(gè)事情,信息量非常大,我們做的事情,剛才 Engine API 的抽象讓我們能做一件事情,熟悉 TiDB 的朋友都知道,我們?cè)谝慌_(tái)存儲(chǔ)節(jié)點(diǎn)上是共享一個(gè)存儲(chǔ)引擎,現(xiàn)在我們慢慢對(duì)每一塊數(shù)據(jù)分片,每一個(gè)細(xì)胞讓它能夠自己擁有自己的存儲(chǔ)引擎,這個(gè)事情在我們實(shí)驗(yàn)室里已經(jīng)做完了,效果非常棒,當(dāng)時(shí)都震驚了。

          下一步發(fā)展,當(dāng)我把數(shù)據(jù)的細(xì)胞存儲(chǔ)拆分了以后,下一步到底是不是 Delta tree 這件事情不重要了,比如我有一部分?jǐn)?shù)據(jù)在業(yè)務(wù)場(chǎng)景里面一年只訪問(wèn)一次,但是不能丟,我又不希望用 SSD 來(lái)存,我能不能用云上 S3 的存儲(chǔ),甚至在一張表里面的一個(gè)數(shù)據(jù)特別熱,對(duì)一致性要求沒(méi)有那么高,是不是能在內(nèi)存中對(duì)這一塊數(shù)據(jù)的形態(tài)做一個(gè)變換。而且更有意思的是,這些所有的變換都是動(dòng)態(tài)的,對(duì)業(yè)務(wù)都是透明的,回想剛才我說(shuō)的可調(diào)度性和細(xì)胞這幾個(gè)概念。

          我剛才說(shuō)所有這些技術(shù)都是為了一件事情,都需要構(gòu)建在一個(gè)基礎(chǔ)上,剛才我說(shuō)了分布式系統(tǒng)的終局,分布式系統(tǒng)可調(diào)度是它的核心優(yōu)勢(shì),這個(gè)基礎(chǔ)我相信各位大概能夠猜出是什么,我需要有一個(gè)近乎無(wú)限的彈性資源池,就是云。關(guān)于云的重要性我覺(jué)得現(xiàn)在整個(gè)行業(yè)還在低估,現(xiàn)在天天說(shuō)云,但是我覺(jué)得云其實(shí)是構(gòu)建未來(lái)新一代軟件的最重要的一個(gè)基石。

          我覺(jué)得對(duì)于云有一個(gè)很好的說(shuō)法,我作為一個(gè)軟件工程師看待云就像什么?我用了無(wú)限的資源,就像一堆積木我怎么去拼,手上有多少錢能拼成什么樣子。右邊這張圖是 Flink 的架構(gòu),F(xiàn)link 是一個(gè)很有意思的產(chǎn)品,它上市有各種各樣的新聞,但是我最早注意到它是在 2016 年,它發(fā)表第一篇論文的時(shí)候,我看那篇論文,是我這幾年最喜歡的論文之一,那篇論文更大意義在于它開(kāi)創(chuàng)了一種新的軟件設(shè)計(jì)的思路,開(kāi)創(chuàng)了新的物種,基于云的服務(wù)去構(gòu)建的基礎(chǔ)軟件,它是第一個(gè),但絕對(duì)不是最后一個(gè),TiDB 在這個(gè)領(lǐng)域是走在最前面的軟件之一。

          TiDB 的核心思想,開(kāi)放性體現(xiàn)在可插拔,存儲(chǔ)和計(jì)算可插拔、可調(diào)度,借用今天主題“ × ”號(hào),乘以調(diào)度能力,可插拔以后還能調(diào)度,細(xì)粒度,粗粒度調(diào)度,乘以云上幾乎無(wú)限的資源它又等于什么。
          回顧一下我今天的題目,The Future  Database,終極的 Future 是什么,這張圖是我理想中的數(shù)據(jù)庫(kù)的樣子:底層各種各樣的資源池,各種各樣的云,公有云、私有云,混合云;上面中間邏輯這一層是數(shù)據(jù)平臺(tái),用戶不同的業(yè)務(wù)不同數(shù)據(jù),對(duì)數(shù)據(jù)庫(kù)有不同要求,數(shù)據(jù)庫(kù)會(huì)根據(jù)用戶的需要自動(dòng)去重塑自己;在不同的顆粒度上,從副本分布我們?nèi)プ鋈蚩鐢?shù)據(jù)中心部署,這種能力對(duì)于 TiDB 來(lái)說(shuō)工程代價(jià)并不是太高,剛我說(shuō)調(diào)度能力,索引,我們通過(guò) FDW 未來(lái)可以引入各種各樣多種形態(tài)的索引。開(kāi)了一個(gè)小小腦洞,圖的數(shù)據(jù)庫(kù)作為 TiDB 的索引,根據(jù)用戶需求變換自己的形態(tài)。

          所以,大膽預(yù)測(cè)一下,剛才那個(gè)公式“可插拔性 × 調(diào)度能力 × 云上幾乎無(wú)限的資源 = ?”,數(shù)據(jù)庫(kù)作為一個(gè)獨(dú)立的軟件形態(tài)我認(rèn)為會(huì)被顛覆,同時(shí)意味著整個(gè)數(shù)據(jù)庫(kù)的“數(shù)據(jù)服務(wù)平臺(tái)化”會(huì)崛起,我們下一代很多在場(chǎng)的各位為人父母,下一代的小朋友可能到他們寫程序的年紀(jì),可能不知道什么是 CPU,什么是內(nèi)存,什么是磁盤,什么是操作系統(tǒng),可能看到的就是一個(gè)個(gè)云服務(wù),比如要用數(shù)據(jù)庫(kù)的時(shí)候好象有一個(gè) TiDB 的東西,我把信用卡綁上去之后就可以直接用一個(gè) SQL 的接口里操作就完了,不需要知道什么叫索引, 什么叫 Delta tree。

          我們回頭看一下今天我們大會(huì)三個(gè)關(guān)鍵字,開(kāi)放,連接,預(yù)見(jiàn),只有開(kāi)放的架構(gòu)才能有更多連接,更多的連接才能讓我們有更好未來(lái),這是今天我關(guān)于 TiDB 的技術(shù)和設(shè)計(jì)理念的分享。

          瀏覽 67
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产小黄片在线播放 | 少女操逼 | 一级a片丰满女人性爱免费视频 | 日本成人三级片在线观看网站 | 特黄录像|