在 I/O 2022 開(kāi)發(fā)者大會(huì)首日,Google 隆重推出了名為 AlloyDB 的全托管式 PostgreSQL 數(shù)據(jù)庫(kù)。與亞馬遜云服務(wù)(AWS)的 Aurora PostgreSQL 競(jìng)品相比,Google 宣稱(chēng) AlloyDB 具有翻倍的效率。此外在相同的工作負(fù)載下,AlloyDB 的運(yùn)行效率可達(dá)標(biāo)準(zhǔn) PostgreSQL 的四倍、分析查詢(xún)的速度也快了百倍。
熟悉 Google Cloud 生態(tài)的開(kāi)發(fā)者,或許不會(huì)對(duì)全管型 PostgreSQL 數(shù)據(jù)庫(kù)服務(wù)感到陌生。
此前該公司已經(jīng)為 PostgreSQL 和 Spanner 提供了 CloudSQL,且 Google Cloud 的全管理關(guān)系數(shù)據(jù)庫(kù)服務(wù)也提供了 PostgreSQL 兼容接口。
AlloyDB 的核心,仍基于標(biāo)準(zhǔn)的 PostgreSQL 數(shù)據(jù)庫(kù)來(lái)實(shí)現(xiàn)。只是為了能夠充分發(fā)揮谷歌自家基礎(chǔ)設(shè)施的實(shí)力,開(kāi)發(fā)團(tuán)隊(duì)才對(duì)于其內(nèi)核進(jìn)行了修改、同時(shí)努力保持在最新的版本狀態(tài)。
在 AWS 工作了很長(zhǎng)一段事件后,Andi Gutmans 于 2020 年跳槽到了 Google、并擔(dān)任數(shù)據(jù)庫(kù)產(chǎn)品的主管兼工程副總裁。
他表示,盡管 Google 在幫助企業(yè)將 MySQL 和 PostgreSQL 遷移到云端的工作中提供了很大的幫助,但還是未能充分照顧到那些想要遷移其遺留數(shù)據(jù)庫(kù)(比如 Oracle)到開(kāi)源服務(wù)的部分客戶(hù)。
究其原因,是因?yàn)樵S多企業(yè)用到了不止一個(gè)云服務(wù)提供商,同時(shí)希望能夠盡可能靈活地在任何地方運(yùn)行。在拖延了多年后,目前正有越來(lái)越多的客戶(hù)愿意投入資源來(lái)擺脫相關(guān)束縛。
隨著 Postgres 的崛起(以及 MySQL 的衰落)、并逐漸成為開(kāi)源關(guān)系數(shù)據(jù)庫(kù)的事實(shí)標(biāo)準(zhǔn),Google 推動(dòng)客戶(hù)向?qū)S玫母咝阅?PostgreSQL 服務(wù)遷移的動(dòng)力也變得更加充足。
Gutmans 補(bǔ)充道:許多 Google 客戶(hù)正希望將他們的關(guān)系數(shù)據(jù)庫(kù)用于分析用例,因而該 AlloyDB 開(kāi)發(fā)團(tuán)隊(duì)耗費(fèi)了大量的精力來(lái)確保 Postgres 能夠?yàn)檫@部分用戶(hù)帶來(lái)更好的性能體驗(yàn)。
在 AWS 工作期間,他曾帶領(lǐng)過(guò) AWS 諸多分析服務(wù)的管理工作,有機(jī)會(huì)了解到數(shù)據(jù)對(duì)客戶(hù)的重要性和關(guān)鍵性、并且積攢下了深厚的技術(shù)背景。
不過(guò)隨著行業(yè)風(fēng)向的轉(zhuǎn)變,與之交談的不再一定是一線(xiàn)開(kāi)發(fā)人員 —— 甚至不少客戶(hù)來(lái)自業(yè)務(wù)部門(mén)、或以分析師的身份來(lái)接洽。
在看到現(xiàn)實(shí)世界在如此融合的同時(shí),他也切實(shí)感受到了用戶(hù)希望從他們的數(shù)據(jù)中獲得實(shí)時(shí)的洞察力。
回到技術(shù)底層,可知 AlloyDB 建立在 Google 現(xiàn)有的基礎(chǔ)架構(gòu)之上、可將計(jì)算和存儲(chǔ)剝離開(kāi)來(lái) —— 與運(yùn)行 Spanner、BigQuery 和幾乎所有 Google 服務(wù)的基礎(chǔ)架構(gòu)層類(lèi)似。
除了專(zhuān)注于 PostgreSQL 的 AlloyDB,相關(guān)服務(wù)也已在競(jìng)爭(zhēng)中占據(jù)了相當(dāng)大的優(yōu)勢(shì)。然而在努力支持多個(gè)數(shù)據(jù)庫(kù)引擎 / 查詢(xún)語(yǔ)言的時(shí)候,你并不總能開(kāi)展面面俱到的優(yōu)化。
鑒于企業(yè)要求使用 Postgre 來(lái)遷移這些遺留數(shù)據(jù),Google 最終決定在該領(lǐng)域做到頂尖。通過(guò)內(nèi)核級(jí)的更改,該團(tuán)隊(duì)已實(shí)現(xiàn)超過(guò) 64 個(gè)虛擬內(nèi)核的線(xiàn)性擴(kuò)展。
而在分析方面,AlloyDB 團(tuán)隊(duì)也打造了一套基于機(jī)器學(xué)習(xí)的定制緩存服務(wù)來(lái)學(xué)習(xí)客戶(hù)的訪(fǎng)問(wèn)模式。然后將 Postgres 的行格式轉(zhuǎn)換為內(nèi)存中的列格式,以顯著提升執(zhí)行的效率。
(舉報(bào))