Clustrix Sierra分布式數(shù)據(jù)庫系統(tǒng):云計算時代的MySQL
NewSQL數(shù)據(jù)庫初創(chuàng)公司 Clustrix最近獲得1650萬美元的C輪融資,該輪融資的投資方包括紅杉資本(Sequoia Capital)、U.S. Venture Partners以及ATA Ventures。而截至目前為止,這家成立于2005年的創(chuàng)新公司總?cè)谫Y金額已經(jīng)高達4650萬美元。Clustrix公司總部在舊金山,在2006年曾是 Y Combinator資助的一個創(chuàng)業(yè)項目。
Clustrix在兩年前曾推出了一個可高度擴容的伸縮式數(shù)據(jù)庫解決方案Sierra,它提供了和SQL數(shù)據(jù)庫相似的功能,同時還可以對數(shù)據(jù)存儲進行擴展。Clustrix Sierra在業(yè)內(nèi)被稱之為云計算時代的MySQL。
公司的CEO Robin Purohit告訴記者:“我們已經(jīng)在世界上多家云平臺之上運行了自己的應(yīng)用,但是現(xiàn)在我們的目標(biāo)是將這個分布式系統(tǒng)開放給開發(fā)者。”而且最近Clustrix在AWS平臺上發(fā)布了專有的數(shù)據(jù)庫5.0新版本。當(dāng)然該版本在Rackspace、GoGrid、Equinix以及BlueBoxGroup等平臺上也可以運行。 (2010年,在Clustrix 初始版本發(fā)布的時候,GigaOM的記者Stacey Higginbotham對該產(chǎn)品也做了 報道。)
Clustrix Sierra
Clustrix Sierra是一款分布式數(shù)據(jù)庫系統(tǒng),它既支持最簡單的Key-Value格式,又兼容MySQL的功能,同時能非常簡單通過添加新的節(jié)點來存儲數(shù)十億條數(shù)據(jù)。它的功能主要體現(xiàn)在下面這四個方面:
擴展和高可用性方面:只要添加一個節(jié)點,就能在吞吐量等性能指標(biāo)上實現(xiàn)線性提升,最多能擴展到幾百個節(jié)點。
速度方面:其解決傳統(tǒng)數(shù)據(jù)庫寫數(shù)據(jù)慢的情況,并保證了讀數(shù)據(jù)的速度。
兼容MySQL:其支持MySQL所有功能,并支持ACID(Atomicity, Consistency, Isolation, Durability),而且在遷移現(xiàn)有MySQL方面非常方便。
在線修改和擴展方面:不僅能在生產(chǎn)環(huán)境中動態(tài)添加新的節(jié)點,而且能在在線的情況下修改數(shù)據(jù)庫的表結(jié)構(gòu)。
運作機制
首先,Clustrix Sierra系統(tǒng)主要有三個核心模塊組成:其一是Distributed Query Compiler(分布式查詢編譯器)。其二是分布式Shared-Nothing執(zhí)行引擎(Execution Engine)。其三是支持同步事務(wù)(ransactional concurrent)的存儲引擎(Storage Engine)。而且整個系統(tǒng)通過整合這三大核心模塊來實現(xiàn)其主要功能。Clustrix Sierra數(shù)據(jù)庫架構(gòu)圖如下:

運行流程
當(dāng)很多查詢發(fā)送至Front-end Network,系統(tǒng)會通過Database Personality Module來將這些查詢翻譯成系統(tǒng)內(nèi)部的格式,接著系統(tǒng)會通過上面提到的Distributed Query Compiler和執(zhí)行引擎以并行的些查詢,并通過存儲引擎在SSD上來存儲數(shù)據(jù),在NVRAM上存儲日志方面的修改,最后通過Infiniband來在多個節(jié)點之間進行通信和同步。