大数据学习

Kudu:Apache Kudu 简介和架构

2020-12-12  本文已影响0人  xiaogp

摘要:KuduHdfsHbase

Kudu简介

Kudu是由Cloudera开源的存储引擎,可以同时提供低延迟的随机读写和高效的批量数据分析能力,他是一个融合HdfsHbase功能的新组件,具备介于两者之间的新存储组件。

Kudu和Hbase Hdfs对比.png

Kudu架构

Kudu使用单个Master节点管理集群和元数据,使用任意数量的Table Server节点来存储实际数据,可以部署多个Master节点来提高容错。
Kudu架构中分为Master ServerTablet ServerTableTablet

Kudu架构.png

数据模型

Kudu的设计是面向结构化存储的,数据模型与传统的关系型数据库类似,一个 Kudu集群由多个表组成,每个表由多个字段组成,一个表必须指定一个由若干个(>=1)字段组成的主键,如下图:

数据模型.png

底层数据模型

Kudu的底层存储基于table/tablet/replica视图级别的底层存储系统

kudu底层存储.png

数据分区策略

Kudu对表进行横向分区,Kudu表会被横向切分存储在多个tablets中。不过相比与其他存储引擎,Kudu提供了更加丰富灵活的数据分区策略。一般数据分区策略主要有两种,一种是Range Partitioning,另一种分区策略是Hash Partitioning

Kudu支持用户对一个表指定一个范围分区规则和多个 Hash 分区规则

kudu分区.png

Kudu的读写更新流程

kudu写入流程.png
kudu读取流程.png
kudu更新流程.png

Kudu web ui

通过http访问Kudu web ui,http://master主机名:8051

master主页.png

点击Masters看到只有一个master单节点,角色是leader,以及rpc地址http地址,分别用来使用kudu和查看kudu

点击master.png

点击Tablet Server看到有3个注册的tablet server,分布在三台机器,3个成功0个失败,点击进入可以到每个tablet server的页面

点击tablet server.png

点击Tables可以查看表的表名,状态,tablet数量,磁盘占用大小

点击tables.png

点击某个表可以查看表的主键,数据类型,分区,impala建表语句


点击表.png
上一篇 下一篇

猜你喜欢

热点阅读