云关系型数据库:NuoDB
NuoDB云数据库管理系统,该系统支持SQL查询,ACID事务(原子性、一致性、隔离性、持久性),更可方便地扩展至多个节点。它是为一些公司而专门设计的,这些公司需要将数据库扩展至多个服务器,并且不想失去关系代数和事务保障的能力。
传统的关系型数据库最大的问题之一在于不便扩展至多个节点。NuoDB被设计成便于扩展、可容错、高性能——提供比其他关系型数据更优秀的单节点性能。据NuoDB首席架构师Seth Proctor所说:
无需使用分片技术,NuoDB直接提供了横向扩展、高可用性、数据冗余等特性,而且安全可靠、管理方便还支持多租户技术。
为了实现这些,NuoDB在进程间使用了多版本并发控制和智能的对象协调方案。Seth解释道:
这些让我们能够在操作数据库的时候保持高度乐观、还可以异步批量地执行,我们还能预防许多故障以及云端发生的网络异常。我们已经减少了耐用点的事务处理,一旦出现故障也能立马恢复,在需要增加容量或想要迁移运行流程时也会变得更加灵活。这意味着你能够在不关闭数据库或降低可用性级别的情况下做全面的升级。
在模式和数据类型演化方面,NuoDB比许多关系型数据提供了更大的灵活性。它还能不中断使用的情况下动态改变模式,还允许用户自定义数据类型,在应用程序改进的时候还能很容易地更新和重新定义这些数据类型。
NuoDB起初只发布了Java和C++版本的驱动程序,但在本文撰稿之时,针对Node.js、PHP、Ruby、.NET等编程语言的驱动程序也已经发布。它同时还支持Java世界里的Hibernate和Rails开发者使用的Active Record。
NuoDB最初的免费版本最多只支持两台机器——虚拟机或是物理机器都可以。NuoDB还提供了没有使用限制的开发版,但该版本只能在非生产环境中使用。你还可以向NuoDB购买授权,授权费用取决于需要支持的主机数目和数据库大小。
来自:http://www.infoq.com/cn/news/2013/03/nuodb