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来在多个节点之间进行通信和同步。
上一篇: 测试oracle表空间自动扩展
下一篇: 分享学习 PHP 源码的方法