歡迎來(lái)到新的數(shù)據(jù)庫(kù)時(shí)代

原文

云數(shù)據(jù)庫(kù)的出現(xiàn)感猛,正在悄無(wú)聲息的七扰,深刻的推動(dòng)了這一趨勢(shì)的到來(lái):一些服務(wù),如亞馬遜的 S3陪白、谷歌的 BigQuery颈走、Snowflake、Databricks咱士,盡管已經(jīng)能夠很輕松的存儲(chǔ)不同數(shù)據(jù)源的不同數(shù)據(jù)類(lèi)型立由,大量數(shù)據(jù)計(jì)算的問(wèn)題似乎已經(jīng)得到了解決,但還有一些企業(yè)序厉,希望它們能夠存儲(chǔ)更多更全面的信息锐膜,從而獲得更好的用戶體驗(yàn)和商業(yè)收入。

現(xiàn)在是創(chuàng)建一家數(shù)據(jù)庫(kù)公司最好的時(shí)機(jī)脂矫。

數(shù)據(jù)庫(kù)公司在過(guò)去 10 年中欢策,已經(jīng)籌集了超過(guò) 87 億美元,其中近一半的資金笼痛,即 41 億美元,是在過(guò)去 24 個(gè)月內(nèi)籌集的牺堰,相比于 2019 年的 8.49 億美元,增加了很多(根據(jù)私募股權(quán)基金統(tǒng)計(jì))颅围。 根據(jù) Snowflake 和 Databricks 的天價(jià)估值伟葫,和 2021 年 160 億美元的收入,這并不奇怪院促,這緣于市場(chǎng)的增長(zhǎng)筏养。這個(gè)市場(chǎng)在過(guò)去四年里翻了一番,達(dá)到近 900 億美元常拓,預(yù)計(jì)在未來(lái)四年里將再次翻番渐溶。可以說(shuō)弄抬,這是一個(gè)絕佳的機(jī)會(huì)茎辐。

下圖是 2021 年數(shù)據(jù)庫(kù)融資的清單。

20年前掂恕,你只有一個(gè)選擇拖陆,那就是關(guān)系型數(shù)據(jù)庫(kù)。

今天懊亡,隨著云依啰、微服務(wù)、分布式應(yīng)用店枣、全球規(guī)模速警、實(shí)時(shí)數(shù)據(jù)、深度學(xué)習(xí)的出現(xiàn)艰争,新的數(shù)據(jù)庫(kù)架構(gòu)出現(xiàn)了坏瞄,這是為了滿足處理超算的性能要求。不同的系統(tǒng)用于快速讀取甩卓,和快速寫(xiě)入鸠匀。專(zhuān)門(mén)用于支持臨時(shí)分析的系統(tǒng),或用于非結(jié)構(gòu)化逾柿、半結(jié)構(gòu)化缀棍、事務(wù)性、關(guān)系性机错、圖形或時(shí)間序列的數(shù)據(jù)爬范。當(dāng)然,也有用于緩存弱匪、搜索青瀑、基于索引、事件的數(shù)據(jù)。

每個(gè)人都有不同的性能需求斥难,包括高可用性枝嘶、橫向擴(kuò)展、分布式一致性哑诊、故障轉(zhuǎn)移保護(hù)群扶、分區(qū)容忍、無(wú)服務(wù)器和完全管理镀裤。

因此竞阐,企業(yè)平均需要用七個(gè)或更多不同的數(shù)據(jù)庫(kù)中存儲(chǔ)數(shù)據(jù)(比如 Snowflake 作為你的數(shù)據(jù)倉(cāng)庫(kù),Clickhouse 用于臨時(shí)分析暑劝,Timescale 用于時(shí)間序列數(shù)據(jù)骆莹,Elastic 用于搜索數(shù)據(jù),S3 用于日志担猛,Postgres 用于交易汪疮,Redis 用于緩存或應(yīng)用數(shù)據(jù),Cassandra 用于復(fù)雜工作負(fù)載毁习,Dgraph 用于關(guān)系數(shù)據(jù)或動(dòng)態(tài)模式)。這一切的前提卖丸,是假設(shè)你的服務(wù)部署在云中纺且,并且你已經(jīng)從頭開(kāi)始建立了一個(gè)現(xiàn)代數(shù)據(jù)堆棧。

與 5-10 年前相比稍浆,這些服務(wù)和平臺(tái)的性能和穩(wěn)定性是無(wú)可比擬的载碌。同時(shí),數(shù)據(jù)庫(kù)層的可擴(kuò)展性和碎片化也逐漸開(kāi)始帶來(lái)新的挑戰(zhàn)衅枫。例如嫁艇,在不同的模式和系統(tǒng)之間進(jìn)行同步,編寫(xiě)新的 ETL 作業(yè)來(lái)銜接多個(gè)數(shù)據(jù)庫(kù)的工作負(fù)載弦撩,持續(xù)的交叉通信和連接問(wèn)題步咪,在這么多不同的系統(tǒng)中管理動(dòng)態(tài)擴(kuò)展集群的開(kāi)銷(xiāo),或者在新集群或系統(tǒng)上線時(shí)進(jìn)行數(shù)據(jù)傳輸益楼。每一個(gè)都有不同的擴(kuò)展猾漫、分支、傳播感凤、分片和資源要求悯周。

更重要的是,每月都有新的數(shù)據(jù)庫(kù)出現(xiàn)陪竿,用于解決企業(yè)大規(guī)模生產(chǎn)中的下一個(gè)挑戰(zhàn)禽翼。

新時(shí)代的數(shù)據(jù)庫(kù)

因此,現(xiàn)在的問(wèn)題,未來(lái)的數(shù)據(jù)庫(kù)闰挡,真的需要像今天一樣锐墙,被反復(fù)重新定義嗎?

我認(rèn)為解总,不應(yīng)該是這樣的贮匕。

與此同時(shí),我希望下一代數(shù)據(jù)庫(kù)的外觀與上一代有很大不同花枫。它們應(yīng)該具有以下能力刻盐。

  • 最重要的計(jì)算、查詢和基礎(chǔ)設(shè)施劳翰,可以位于商品存儲(chǔ)層之上敦锌。
  • 不需要對(duì)基礎(chǔ)數(shù)據(jù)進(jìn)行遷移或重組。
  • 不需要重新編寫(xiě)或解析查詢佳簸。
  • 在多個(gè)存儲(chǔ)引擎之上工作乙墙,無(wú)論是列式、非關(guān)系式還是圖式生均。
  • 將配置听想、可用性和規(guī)模的復(fù)雜性轉(zhuǎn)移到代碼中。
  • 允許應(yīng)用程序調(diào)用一個(gè)單一的接口马胧,無(wú)論底層數(shù)據(jù)基礎(chǔ)設(shè)施如何汉买。
  • 作為無(wú)服務(wù)器或管理服務(wù),開(kāi)箱即用佩脊。
  • 在單人和多人模式下蛙粘,為開(kāi)發(fā)者優(yōu)先的體驗(yàn)而構(gòu)建。
  • 為現(xiàn)有(藍(lán)海)和新(綠地)項(xiàng)目提供第 0 天的價(jià)值威彰。

許多由來(lái)已久的問(wèn)題正在推動(dòng)這個(gè)未來(lái)的數(shù)據(jù)庫(kù):

  1. 沒(méi)有人愿意將數(shù)據(jù)遷移到一個(gè)新的數(shù)據(jù)庫(kù)出牧。每一個(gè)新的數(shù)據(jù)庫(kù)引入到一個(gè)組織中,其成本是你已經(jīng)擁有的數(shù)據(jù)庫(kù)數(shù)量的 N2 問(wèn)題歇盼。遷移到一個(gè)新的架構(gòu)舔痕、模式、配置旺遮,以及需要重新優(yōu)化的再平衡赵讯、查詢規(guī)劃、擴(kuò)展耿眉、資源需求等等边翼,往往是 [價(jià)值/(時(shí)間+成本)]接近零的問(wèn)題。這可能是一個(gè)驚喜鸣剪,但今天仍有數(shù)十億美元的 Oracle 實(shí)例仍在為關(guān)鍵的應(yīng)用程序提供動(dòng)力组底,而且它們很可能不會(huì)消失丈积。
  2. 大部分的殺手锏不會(huì)出現(xiàn)在存儲(chǔ)層。計(jì)算和存儲(chǔ)的分離债鸡,已經(jīng)極大的提高了性能江滨,現(xiàn)在,它允許使用超級(jí)便宜的原始存儲(chǔ)厌均,和精細(xì)調(diào)整的唬滑、可彈性擴(kuò)展的計(jì)算/查詢/infra 層。存儲(chǔ)層可以成為數(shù)據(jù)基礎(chǔ)設(shè)施的中心棺弊,并以各種不同的方式被多種工具利用晶密,以解決路由、解析模她、可用性稻艰、規(guī)模、翻譯等問(wèn)題侈净。
  3. 數(shù)據(jù)庫(kù)正在慢慢地分拆成高度專(zhuān)業(yè)化的服務(wù)尊勿,擺脫過(guò)去那種過(guò)于復(fù)雜的、被鎖定的方法畜侦。沒(méi)有一個(gè)數(shù)據(jù)庫(kù)可以完全解決交易和分析用例元扔;具有快速讀寫(xiě)、高可用性和一致性旋膳;同時(shí)解決邊緣的緩存問(wèn)題摇展,并根據(jù)需要進(jìn)行水平擴(kuò)展。但是溺忧,在存儲(chǔ)引擎的基礎(chǔ)上將其分解成一系列的層,可以引入一系列新的服務(wù)盯孙,以提供新的性能和保障水平鲁森。例如,可以根據(jù)用戶振惰、查詢和數(shù)據(jù)意識(shí)優(yōu)化緩存的動(dòng)態(tài)緩存服務(wù)歌溉;根據(jù)數(shù)據(jù)分布查詢需求和數(shù)據(jù)變化率管理分片;通過(guò)連接池和資源管理實(shí)現(xiàn)高可用性和水平擴(kuò)展的代理層骑晶;解決模式間異步和同步傳播的數(shù)據(jù)管理框架痛垛;或者 GraphQL 和關(guān)系型數(shù)據(jù)庫(kù)之間的翻譯層。這些多維度的問(wèn)題可以作為程序化的解決方案桶蛔,在代碼中構(gòu)建匙头,與數(shù)據(jù)庫(kù)本身解耦,并且性能明顯更好仔雷。
  4. 目前為止蹂析,人們一直在規(guī)模和簡(jiǎn)單性之間權(quán)衡舔示。Postgres、MySQL 和 Cassandra 都非常強(qiáng)大电抚,但很難搞好惕稻。Firebase 和 Heroku 超級(jí)容易使用,但不能擴(kuò)展蝙叛。這些數(shù)據(jù)庫(kù)技術(shù)擁有龐大的安裝基礎(chǔ)和強(qiáng)大的引擎俺祠,并經(jīng)受住了 Facebook 和 Netflix 級(jí)別規(guī)模的時(shí)間考驗(yàn)。但是根據(jù)你的需求借帘,調(diào)整它們往往需要一個(gè)博士和一個(gè)數(shù)據(jù)庫(kù)專(zhuān)家團(tuán)隊(duì)蜘渣,就像 Facebook、Netflix姻蚓、Uber宋梧、Airbnb 的團(tuán)隊(duì)一樣。對(duì)于我們其他人狰挡,就會(huì)在一致性和隔離性捂龄、分片、鎖定加叁、時(shí)鐘偏差倦沧、查詢規(guī)劃、安全它匕、網(wǎng)絡(luò)等方面掙扎展融。像 Supabase 和 Hydras 這樣的公司可以用標(biāo)準(zhǔn)的 Postgres 安裝,在上面建立強(qiáng)大的計(jì)算和管理層次豫柬,既可以有 Postgres 的拓展性告希,也可以有 Firebase 或 Heroku 的簡(jiǎn)單性。
  5. 30 多年來(lái)烧给,數(shù)據(jù)庫(kù)索引模型一直沒(méi)有改變燕偶。今天,我們?nèi)匀皇褂猛ㄓ玫拇〉铡⒁坏肚械乃饕该矗?B 樹(shù)和哈希表,而對(duì)于數(shù)據(jù)榴鼎,卻像黑箱一樣摸不透伯诬。稍微具備一些數(shù)據(jù)意識(shí),例如利用累積分布函數(shù)(CDF)巫财,正如我們?cè)?Learned Indexes 中看到的那樣盗似,可以導(dǎo)致更小的索引,更快的查找平项,增加并行性桥言,并減少 CPU 的使用萌踱。我們甚至還沒(méi)有開(kāi)始展示下一代的索引,這些索引已經(jīng)適應(yīng)了我們數(shù)據(jù)的形狀和變化号阿。
  6. 幾乎沒(méi)有機(jī)器學(xué)習(xí)被用來(lái)提高數(shù)據(jù)庫(kù)性能并鸵。相反,今天我們定義靜態(tài)規(guī)則集和配置扔涧,以優(yōu)化查詢性能园担、成本建模和工作量預(yù)測(cè)。這些組合的枯夜、多維的問(wèn)題集對(duì)人類(lèi)來(lái)說(shuō)太復(fù)雜了弯汰,無(wú)法配置,是完美的機(jī)器學(xué)習(xí)問(wèn)題湖雹。磁盤(pán)咏闪、內(nèi)存和 CPU 等資源被很好地描述,查詢歷史被很好地理解摔吏,數(shù)據(jù)分布也可以被定義鸽嫂。我們可以看到查詢性能、成本和資源利用率提高了 10 倍征讲,而且再也看不到嵌套循環(huán)連接据某。
  7. 數(shù)據(jù)平臺(tái)和工程團(tuán)隊(duì)不希望成為DBA、DevOps或SRE诗箍。他們希望他們的系統(tǒng)和服務(wù)能夠開(kāi)箱即用癣籽,而不必考慮資源、連接池滤祖、緩存邏輯筷狼、吸塵、查詢規(guī)劃匠童、更新索引等問(wèn)題桑逝。今天的團(tuán)隊(duì)希望有一套強(qiáng)大的端點(diǎn),易于部署俏让,并能正常工作。
  8. 對(duì)操作實(shí)時(shí)數(shù)據(jù)的需求正在推動(dòng)對(duì)混合系統(tǒng)的需求茬暇。交易系統(tǒng)可以快速地將新的記錄寫(xiě)入一個(gè)表首昔,并具有很高的準(zhǔn)確性、速度和可靠性糙俗。一個(gè)分析系統(tǒng)可以在一組表和數(shù)據(jù)中快速搜索勒奇,以找到答案。隨著流式數(shù)據(jù)和分析系統(tǒng)對(duì)更快響應(yīng)的需求巧骚,HTAP(混合交易/分析處理)系統(tǒng)的想法正在出現(xiàn)——特別是對(duì)于那些具有高度操作性的用例——意味著非常高水平的新寫(xiě)入/記錄和更靈敏的遙測(cè)或分析業(yè)務(wù)指標(biāo)赊颠。這引入了一種新的架構(gòu)模式格二,即交易和分析數(shù)據(jù)和系統(tǒng)開(kāi)始相互接近,并不統(tǒng)一竣蹦。

一類(lèi)新的數(shù)據(jù)庫(kù)

一類(lèi)新的云數(shù)據(jù)庫(kù)公司正在出現(xiàn)顶猜,有效地將傳統(tǒng)的數(shù)據(jù)庫(kù)單體堆棧解構(gòu)為核心分層服務(wù);存儲(chǔ)痘括、計(jì)算长窄、優(yōu)化、查詢規(guī)劃纲菌、索引挠日、功能等等。像 ReadySet翰舌、Hasura嚣潜、Xata、Ottertune椅贱、Apollo懂算、Polyscale 和其他公司就是這一運(yùn)動(dòng)的例子,并迅速成為新的開(kāi)發(fā)者標(biāo)準(zhǔn)夜涕。

這些新的非捆綁式數(shù)據(jù)庫(kù)專(zhuān)注于解決緩存犯犁、索引、規(guī)模和可用性等硬問(wèn)題女器,并開(kāi)始消除性能和穩(wěn)定性之間的分歧酸役。更快速的數(shù)據(jù)庫(kù),永遠(yuǎn)穩(wěn)定的驾胆,能夠處理大規(guī)模數(shù)據(jù)涣澡,并具有數(shù)據(jù)意識(shí),模糊了傳統(tǒng)的操作和分析系統(tǒng)之間的分界線丧诺。未來(lái)看起來(lái)一片光明入桂。

最后

我的個(gè)人主頁(yè) 里也同步進(jìn)行了更新,歡迎來(lái)逛逛驳阎。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末抗愁,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子呵晚,更是在濱河造成了極大的恐慌蜘腌,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,372評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件饵隙,死亡現(xiàn)場(chǎng)離奇詭異撮珠,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)金矛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)芯急,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)勺届,“玉大人,你說(shuō)我怎么就攤上這事娶耍∶庾耍” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,415評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵伺绽,是天一觀的道長(zhǎng)养泡。 經(jīng)常有香客問(wèn)我,道長(zhǎng)奈应,這世上最難降的妖魔是什么澜掩? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,157評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮杖挣,結(jié)果婚禮上肩榕,老公的妹妹穿的比我還像新娘。我一直安慰自己惩妇,他們只是感情好株汉,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,171評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著歌殃,像睡著了一般乔妈。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上氓皱,一...
    開(kāi)封第一講書(shū)人閱讀 51,125評(píng)論 1 297
  • 那天路召,我揣著相機(jī)與錄音,去河邊找鬼波材。 笑死股淡,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的廷区。 我是一名探鬼主播唯灵,決...
    沈念sama閱讀 40,028評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼隙轻!你這毒婦竟也來(lái)了埠帕?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,887評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤玖绿,失蹤者是張志新(化名)和其女友劉穎敛瓷,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體镰矿,經(jīng)...
    沈念sama閱讀 45,310評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,533評(píng)論 2 332
  • 正文 我和宋清朗相戀三年俘种,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了秤标。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片绝淡。...
    茶點(diǎn)故事閱讀 39,690評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖苍姜,靈堂內(nèi)的尸體忽然破棺而出牢酵,到底是詐尸還是另有隱情,我是刑警寧澤衙猪,帶...
    沈念sama閱讀 35,411評(píng)論 5 343
  • 正文 年R本政府宣布馍乙,位于F島的核電站,受9級(jí)特大地震影響垫释,放射性物質(zhì)發(fā)生泄漏丝格。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,004評(píng)論 3 325
  • 文/蒙蒙 一棵譬、第九天 我趴在偏房一處隱蔽的房頂上張望显蝌。 院中可真熱鬧,春花似錦订咸、人聲如沸曼尊。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,659評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)骆撇。三九已至,卻和暖如春父叙,著一層夾襖步出監(jiān)牢的瞬間神郊,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,812評(píng)論 1 268
  • 我被黑心中介騙來(lái)泰國(guó)打工高每, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留屿岂,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,693評(píng)論 2 368
  • 正文 我出身青樓鲸匿,卻偏偏與公主長(zhǎng)得像爷怀,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子带欢,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,577評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容