kudu原理_ Kudu是什么|学习笔记

简介: 快速学习kudu原理_ Kudu是什么

开发者学堂课程【2020版大数据实战项目之DMP广告系统(第一阶段)kudu原理_ Kudu是什么】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/676/detail/11754


kudu原理_ Kudu是什么


kudu 原理

1.kudu 是什么

在做数据处理或者数据分析的时候,大致有多种任务,和数据相关的和数据库相关的和存储相关的有两类任务需要去做,第一类为数据分析,第二类为数据的插入和读取。数据分析一般情况下处理的是慢数据,而插入和读取一般指的是快数据。

2.数据分析

假设要统计全年的销售额,还要统计全表的扫描,要查看每一条的数据,不会对所有列进行处理。插入和读取(快数据,往 Hive 当中去插入一条数据):一般针对 Hive 的数据插入,以文件作为单位,以一个分区作为单位来进行插入,但是假如现在有业务系统,它将消息放到队列中后我们要进行逐条处理。处理完以后就是一个实时的系统,实时系统处理完以后逐条插入数据库,对于这种场景用 Hive 数据分析的方式明显不太靠谱,可以使用 HBase ,它强调的是要插一条数据性能不能太差,要使用到一些内存上的基数,你要让插入的性能变得更好。

在进行数据分析的时候,往常使用到的就是 HDFS

3.HDFS 上的数据分析

HDFS 是一种能够非常高效的进行数据分析的存储引擎

(1)HDFS 有很多支持压缩的列式存储的文件格式,性能很好,例如 Parquet 和 ORC

(2)HDFS 本身支持并行读取的一个文件系统,它是在分布式上把文件分布成小的分片去进行存储,所以一个计算单元去处理一个分片内容。

4.HBase 可以进行高效的数据插入和读取。

HBase 主要用于完成一些对实时性要求比较高的场景,HBase之所以可以进行高效的插入和读取,主要是因为HBase特殊的设计,HBase 在进行数据插入和读取的时候是有内存支持的,并且它本身有活跃机制。所以呢它的插入和读取是比较高效的,

(1)HBase 能够以极高的吞吐量来进行数据存储,无论是批量加载,还是大量 put 都可以

(2)HBase 能够对主键进行非常高效的扫描,因为其根据主键进行排序和维护

(3)但是对于主键以外的列进行扫描则性能会比较差,所以它不适合做数据分析,因为数据分析是要进行全表扫描的。HBase 如果不能在这方面性能提升的话,那在做数据分析的时候,速度就会比较慢,吞吐量也没有 HDFS 上的高。

5.Kudu 的设计目标

Kudu 最初的目标是成为一个新的存储引擎,可以进行快速的数据分析,又可以进行高效的数据随机插入。这样就能简化数据从源端到 Hadoop 中可以用于被分析的过程, Kudu 性能介于 HDFS 和 HBase 之间,Kudu 的批量性能没有HDFS 好,Kudu 的快速插入和读取性能没有 HBase 好,但是 Kudu 擅长这两件事情。既能高效数据分析,又能快速插入。所以有如下的一些设计目标。

(1)尽可能快速的扫描,达到 HDFS中Parquet 的二分之一速度。

(2)尽可能的支持随机读写,达到1ms 的响应时间。

(3)kudu是列式存储的存储引擎,并且Kudu的API和Hive其他数据库是有区别的,和HBse比较像。

(4)支持 NOSQL 样式的 API,例如 put(逐条插), get(逐条取), delete(逐条删除), scan(批量扫描)。

kudu 功能比较均衡,因此在各种地方它的应用场景比较多,因为可能在很多场景都用不到像 HBase 那么好的快速的数据处理,也用不到像 HDFS 那么好的扫描性能。那么 Kudu 就是适合的。

相关实践学习
lindorm多模间数据无缝流转
展现了Lindorm多模融合能力——用kafka API写入,无缝流转在各引擎内进行数据存储和计算的实验。
云数据库HBase版使用教程
  相关的阿里云产品:云数据库 HBase 版 面向大数据领域的一站式NoSQL服务,100%兼容开源HBase并深度扩展,支持海量数据下的实时存储、高并发吞吐、轻SQL分析、全文检索、时序时空查询等能力,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景首选数据库,是为淘宝、支付宝、菜鸟等众多阿里核心业务提供关键支撑的数据库。 了解产品详情: https://cn.aliyun.com/product/hbase   ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
存储 缓存 分布式计算
【Hbase】(十一)详解 HBase 表的设计原则
【Hbase】(十一)详解 HBase 表的设计原则
1249 0
【Hbase】(十一)详解 HBase 表的设计原则
|
存储
Kudu遇到的问题
Kudu遇到的问题
174 0
|
存储 数据挖掘 分布式数据库
kudu入门 _应用场景_kudu|学习笔记
快速学习kudu入门 _应用场景_kudu
128 0
kudu入门 _应用场景_kudu|学习笔记
|
存储 缓存 负载均衡
HBase 原理_4 | 学习笔记
快速学习 HBase 原理_4
166 0
HBase 原理_4 | 学习笔记
|
存储 SQL 分布式计算
HBase 原理_1 | 学习笔记
快速学习 HBase 原理_1
181 0
HBase 原理_1 | 学习笔记
|
存储 负载均衡 监控
HBase 原理_5 | 学习笔记
快速学习 HBase 原理_5
151 0
HBase 原理_5 | 学习笔记
|
存储 缓存 分布式计算
HBase 原理_3 | 学习笔记
快速学习 HBase 原理_3
180 0
HBase 原理_3 | 学习笔记
|
存储 监控 分布式数据库
HBase 原理_6 | 学习笔记
快速学习 HBase 原理_6
133 0
HBase 原理_6 | 学习笔记
|
存储 Java 关系型数据库
HBase 原理_2 | 学习笔记
快速学习 HBase 原理_2
201 0
|
存储 分布式数据库 开发者
HBase表设计_8 | 学习笔记
快速学习 HBase表设计_8
156 0