NewSQL类数据库的两个代表一个是国外的Google Spanner,另一个是国内的阿里OceanBase。这两个数据库中一个是国际上使用量最大的NewSQL。数据库,一个是国内使用量最大的NewSQL数据库。
(一)Google Spanner
Spanner是Google的全球级分布式数据库。Spanner具有高扩展性、多版本(multiversion)、世界级分布(globally distributed)及同步复制(synchronously-replicated)等特性。Spanner立足于高抽象层次,使用Paxos协议横跨多个数据集把数据分散到世界上不同数据中心的状态机中,世界范围内响应,出故障时客户副本之间可自动切换。当数据总量或服务器的数量发生改变时,为了平衡负载和处理故障,Spanner自动完成数据的重切片和跨机器(甚至跨数据中心)的数据迁移。Spanner可以轻松横跨数百个数据中心将万亿级数据库行扩展到数百万台机器中。高可靠性更是让应用程序如虎添翼,即使面对大范围的自然灾害,此系统的可靠性仍然能得到良好的保障(因为Spanner有着世界级数据转移)。最初的用户来自F1——使用了美国境内的5个拷贝。多数其他应用程序都是在同一个地理区域将数据复制3到5份,使用相对独立的故障模式。也就是说,多数的应用程序会选择低延迟超过高有效性,只用一两个数据中心来保障数据的可靠性。目前,Google的云服务中还没有提供Spanner,Google正在逐步将部分内部业务迁移到Spanner上,如Google广告业务,相信在不久的将来会看到Google Cloud正式推出Spanner云服务。
(二)阿里OceanBase(www.daowen.com)
OceanBase是一个支持海量数据的高性能分布式数据库系统,实现了数千亿条记录、数百TB数据上的跨行跨表事务,由淘宝核心系统研发部、运维、DBA、广告和应用研发等部门共同完成。在设计和实现上,OceanBase暂时摒弃了不紧急的DBMS的功能,如临时表、视图(view),研发团队把有限的资源集中到关键点上,当前OceanBase主要解决数据更新一致性、高性能的跨表读事务、范围查询、连接、数据全量及增量dump和批量数据导入。目前OceanBase已经应用于淘宝收藏夹,用于存储淘宝用户收藏条目和具体的商品、店铺信息,每天支持4000万~5000万的更新操作。目前,OceanBase还处于阿里集团内部推广应用的阶段,随着在内部系统上的逐渐稳定,后续阿里云可能会考虑提供OceanBase的云服务。
表2-5显示了OceanBase与分布式MySQL数据库之间的对比。
表2-5 OceanBase与分布式MySQL数据库对比
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。