开发者学堂课程【2020版大数据实战项目之DMP广告系统(第一阶段):kudu入门_对比】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/676/detail/11753
kudu入门_对比
内容介绍:
一、存储模型
二、性能
三、硬件需求
一、存储模型
1.结构
(1)Kudu 的存储模型是有结构的表
(2)OLTP 中代表性的 MySQL, Oracle 模型是有结构的表,不是关系型数据库。
(3)HBase 是看起来像是表一样的Key-Value 型数据,Key 是 RowKet 和列簇的组合,Value是具体的值。
2.主键
(1)Kudu 采用了Raft协议,所以 Kudu 的表中有唯一主键(本身在协议的内部就会自增一个消息序号,所以Raft是支持全局唯一 ID 的,这在分布式系统中是非常少见的)
(2)关系型数据库也有唯一主键
(3)HBase 的 Rowkey 并不是唯一主键
3.事务支持
(1)Kudu 缺少跨行的 AGID 事务(Kudu 是支持一些事务的,但是跨行的 ACID 做不到,它做不到跨行的要保持原则性一些特性做不到,有事物但没有跨行。)
(2)关系型数据库大多在单机上是可以支持 ACID 事务的(指原则性,一致性这些内容,但是关系型的数据库如果放在分布式环境下也不一定支持 ACID)
二、性能
1.Kudu 的随机读写速度目标是和 HBase 相似。但是这个目标建立在使用 SSD 基础之上
2.Kudu 的批量查询性能目标是比 HDFS 上的 Parquet 慢两倍以内
三、硬件需求
1.Hadoop 的设计理念是尽可能的减少硬件依赖,使用更廉价的机器,配置机械硬盘
2.Kudu 的时代 SSD 已经比较常见了能够做更多的磁盘操作和内存操作
3.Hadoop 不太能发挥比较好的硬件的能力,而 Kudu 为了大内存和 SSD 而设计,所以 Kudu 对硬件的需求会更大一些
Kudu 在随机读写和吞吐量两个方面很好,对于大部分系统是足够用的,kudu 是中间过渡的系统,能做大部分的工作,而对某些工作做的不够好。