HBase 对比 Kudu

2018-08-22  本文已影响408人  千反田爱瑠爱好者
对比方面 HBase Kudu
开发语言 Java Java、C++(核心)
数据模型 key-value系统,无模式 强类型的结构化表
软件架构 利用ZK进行Master选举,数据存储到HDFS实现容错 使用Raft协议实现高可用,底层数据存储使用Raft实现多副本
存储方式 列簇式存储 纯列式存储
数据分区 一致性哈希 Hash或Range
索引 支持 不支持
数据一致性 强一致 Snashot和External Consisitency

架构

HBase

Kudu

存储

HBase

Kudu

读写过程

HBase

特点

写过程

读过程

Kudu

特点

写过程(插入)

写过程(更新)

读过程

特点

HBase和Kudu在读取一条数据时都需要从多个文件中搜寻相关信息。Kudu将插入和更新操作分开,一条数据只可能存在于一个DiskRowset或者MemRowset中,只需要搜寻到一个rowset中存在指定数据就不用继续往下找了,用户不能设置更新和插入时的timestamp值,减少了在rowset中DeltaFile的读取数量。这样在scan情况下可以结合列式存储的优点实现较高的读性能,特别是在更新数量较少的情况下能够有效提高scan性能。

上一篇 下一篇

猜你喜欢

热点阅读