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

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