FoundationDB NoSQL 数据库已支持 ACID 事务

阅读数:1428 2013 年 5 月 2 日

FoundationDB 数据库平台结合了 NoSQL 的可伸缩性与跨数据库内所有数据的 ACID 事务。FoundationDB 团队 3 月份宣布了他们的新NoSQL 数据库平台。

由于可伸缩性的原因,NoSQL 数据库通常不支持跨多个数据元素的 ACID 事务,但是没有很强的事务保证可能会导致数据的不一致性。FoundationDB 构建于分布式、无共享的架构之上,它使用了一个叫做“层次”( Layer )的概念,将不同的数据模型映射到数据库中有序的键和值上,从而支持多样化的应用和数据模型。在这些“层次”上面的应用继承了核心数据库的高性能、数据一致性和运行特性。

InfoQ 采访了 FoundationDB 团队的 Dave Rosenthal 和 Nick Lavezzo,谈到了新发布的版本,产品特性,该产品与关系数据库模型和其他 NoSQL 数据库技术相比结果如何等话题。

Nick 谈到了该数据库产品的当前状态。新版本目前还出于 beta 阶段,但已经为成为真正的产品做好了准备。过去几年,它一直在进行内部测试,光是alpha 测试就有一年多了。

当被问及 FoundationDB 与关系数据库(RDBMS)和其他 NoSQL 数据库相比结果如何时,Dave 说 FoundationDB 结合了 NoSQL 系统简单的 API 及分布式设计与关系数据库的 ACID 事务。

InfoQ:你们能否详细说明一下,该数据库是如何支持 CAP 理论的,对于一致性、可用性和分区容忍性这三个因素,分别意味着什么?

DaveCAP 理论指出,当分布式系统中出现分区时,我们需要在一致性和可用性之间做出取舍。任何事务数据库都要保证一致性,与之相同,FoundationDB 也选择了一致性。同时支持这些能力的系统很难构建,但并非不可能

InfoQ:使用 FoundationDB 数据库有什么限制或约束吗?

Dave对于 FoundationDB 设计时未打算支持的功能,以及当前版本中已知的限制,我们仔细编写了文档。我们认为,对于和数据库同等重要的任何工具,理解其限制也是非常重要的。

InfoQ:NoSQL 数据库的未来会如何,你们认为在整个数据管理环境中,关系数据库将扮演什么角色?

Dave当然,关系数据库短期内还是离不了的,但它最擅长的领域会不断被其他数据库技术侵蚀。首先受到冲击的是分析类市场,比如被 Teradata 这样的数据库替代,而且 Hadoop 正在迅速成为批量处理的新标准。NoSQL 数据库正在证明它们作为可伸缩运营系统替代方案的有效性。

FoundationDB 将提供免费的社区版本,以及支持更大规模集群功能的许可版本。 社区版本会包含 FoundationDB 的全部功能,允许产品部署。开发者现在可以注册申请 beta 版本,评测 FoundationDB 并通过 beta 社区网站贡献自己的“层次”。

该网站还提供了几份白皮书,其中有FoundationDB 的设计与实现信息。

查看英文原文 FoundationDB NoSQL Database Supports ACID Transactions

收藏

评论

微博

发表评论

注册/登录 InfoQ 发表评论