Twitter曼哈頓數(shù)據(jù)庫的橫空出世表明當(dāng)今的數(shù)據(jù)庫技術(shù)已經(jīng)無法滿足大型互聯(lián)網(wǎng)公司的獨(dú)特需求,新一輪數(shù)據(jù)庫技術(shù)革命已經(jīng)啟動(dòng)。
Twitter是所有大型互聯(lián)網(wǎng)公司中產(chǎn)品實(shí)時(shí)性和技術(shù)進(jìn)化速度最快的一個(gè),本周Twitter在博客中公布了實(shí)時(shí)數(shù)據(jù)服務(wù)的核心引擎——曼哈頓(Manhattan)數(shù)據(jù)庫的技術(shù)細(xì)節(jié)。曼哈頓是一個(gè)分布式、實(shí)時(shí)數(shù)據(jù)庫,服務(wù)對(duì)象是Twitter公司內(nèi)部的多個(gè)團(tuán)隊(duì)和應(yīng)用。
曼哈頓數(shù)據(jù)庫的數(shù)據(jù)處理能力和速度讓當(dāng)今流行的開源數(shù)據(jù)庫相形見絀,這些數(shù)據(jù)庫已經(jīng)無法滿足Twitter規(guī)模的生產(chǎn)環(huán)境,正如Twitter軟件工程師Peter Schuller所言:
我們?yōu)榱俗屔a(chǎn)系統(tǒng)滿足各種產(chǎn)品的性能預(yù)期而四處救火,浪費(fèi)了太多時(shí)間。為一個(gè)新應(yīng)用配置存儲(chǔ)資源需要涉及太多的人工和流程。根據(jù)我們的經(jīng)驗(yàn),為Twitter這樣的大規(guī)模web業(yè)務(wù)開發(fā)和運(yùn)營(yíng)生產(chǎn)存儲(chǔ)環(huán)境,采用現(xiàn)成的數(shù)據(jù)庫技術(shù)已經(jīng)行不通了。
Schuller在博客中詳細(xì)介紹了Twitter如何開發(fā)出曼哈頓這樣的高可靠、高可用、易用的新一代數(shù)據(jù)庫。同時(shí)也公布了一些為曼哈頓數(shù)據(jù)庫設(shè)計(jì)的一些數(shù)據(jù)格式的細(xì)節(jié)。目前,用戶通過key-value存儲(chǔ)的方式使用曼哈頓數(shù)據(jù)庫,未來Twitter還計(jì)劃增加包括圖形界面在內(nèi)的用戶界面。曼哈頓數(shù)據(jù)庫有三個(gè)存儲(chǔ)引擎,分別面向只讀Hadoop數(shù)據(jù)、大量讀取數(shù)據(jù)和大量寫入數(shù)據(jù)。此外曼哈頓還內(nèi)置了很多服務(wù),包括導(dǎo)入Hadoop數(shù)據(jù),確保數(shù)據(jù)一致性和計(jì)算時(shí)間序列數(shù)據(jù)等。
對(duì)于開發(fā)者和工程師來說最重要的一點(diǎn)是,曼哈頓作為一種存儲(chǔ)服務(wù)可以像其他任何一種云存儲(chǔ)服務(wù)一樣使用。工程師數(shù)秒鐘就可以為應(yīng)用配置好存儲(chǔ)資源,無需等待安裝硬件或?qū)ο到y(tǒng)架構(gòu)進(jìn)行重新配置。Twitter將重點(diǎn)放在確保曼哈頓的多租戶使用的整體性能不會(huì)因某個(gè)租戶占用過多資源而受到影響。
Twitter計(jì)劃在擇日發(fā)布的曼哈頓數(shù)據(jù)庫技術(shù)白皮書中公布具體技術(shù)開發(fā)細(xì)節(jié)。作為開源軟件的重量級(jí)擁躉,Twitter很可能會(huì)在將來某個(gè)時(shí)間將曼哈頓數(shù)據(jù)庫技術(shù)開源。實(shí)際上,Twitter曾于2012年將其MySQL代碼開源,最近又與Facebook攜手開發(fā)WebScaleSQL開源數(shù)據(jù)庫項(xiàng)目。
Twitter曼哈頓數(shù)據(jù)庫的橫空出世表明當(dāng)今的數(shù)據(jù)庫技術(shù)已經(jīng)無法滿足大型互聯(lián)網(wǎng)公司的獨(dú)特需求。Twitter、Google、Facebook和LinkedIn已經(jīng)拋棄了最初的NoSQL技術(shù)(這些NoSQL技術(shù)正在進(jìn)入大型企業(yè)),紛紛開發(fā)下一代數(shù)據(jù)庫技術(shù),正如他們當(dāng)年開發(fā)Cassandra、Voldemort和BigTable那樣。也許曼哈頓將成為未來的Cassandra,而LinkedIn的Espresso成為新的MongoDB(編者按:MongoDB因獲得NSA投資而在發(fā)展中市場(chǎng)受挫),成為下一代創(chuàng)業(yè)公司開發(fā)者的寵兒。
聯(lián)系客服