您的位置:首页 > 博客中心 > 数据库 >

NewSQL数据库VoltDB特性简介

时间:2022-03-14 03:47

VoltDB是一个革命性的新型数据库产品,被称作NewSQL数据库。它基于H-Store,号称比当前数据库产品的吞吐量高45倍,同时又具有很高的扩展性。它的特性主要有以下几点:

?  高吞吐、低延迟:通过内存计算,存储过程和串行数据访问实现。

?  可扩展性:自动分区和复制,保证性能和可扩展性。

?  高可用性:同步的多主复制(在VoltDB中叫K-safety)。

?  持久化:数据库快照与命令日志(command log)的创新技术组合。



 

这与分布式缓存GemFire中的mirrored region和partitioned region的概念很像。在GemFire这,mirrored region包含全量数据,而partitioned region只包含分区数据。但不同的是,VoltDB是根据表的特点选择复制或分区,而GemFire则通过mirrored region将其他分区数据抓取到一起形成全量的数据镜像。

gxlsystem.com,布布扣

 

如果一个事务涉及多个分区的数据访问,那么其处理流程如下图所示。一个结点会充当协调者(coordinator),负责分发任务给其他结点,并收集结果,完成任务。

gxlsystem.com,布布扣


 

关于数据同步问题的解决,任何发生在复制分区上的操作都会发送给各个拷贝的结点去执行,来保证一致性。如果其中一个结点失败,那么数据库会继续发送这个操作给失败的结点。因此在这一点上VoltDB与传统数据库有很大不同,不存在多主(multi-master)情况下的数据同步冲突问题。所以K-safety也叫做同步多主复制。



 

那command log与传统的WAL(write-ahead log)有什么区别呢?(待深入研究)

gxlsystem.com,布布扣

总结

但这样也不代表VoltDB是万能的,其设计和特性决定了其应用场景,VoltDB比较适合高频率请求、短事务的应用,像金融、零售、Web2.0等,以及流式数据应用,像推荐引擎、实时广告平台、点击流处理、欺诈交易检测等。

参考资料

1 VoltDB Technical Overview

2 Using VoltDB

 

热门排行

今日推荐

热门手游