Kudu原理_各个角色的作用|学习笔记

简介: 快速学习Kudu原理_各个角色的作用

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

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


Kudu 原理_各个角色的作用


内容介绍:

一、Master server

二、tablet server


Kudu 在集群中有两种角色,Master server 以及 tablet server


一、Master server

Master server 有如下特点:

1.Master server 中存储的其实也就是一个 tablet,这个 tablet 中存储系统的元数据,所以 Kudu 无需依稳 Hive

2.客户端访问某一张表的某一部分数据时,会先询间 Master server,获取这个数据的位置,去对应位置获取或者存储数据

3.虽然 Master 比较重要,但是其承担的职责并不多,数据量也不大,所以为了增进效率,这个 tablet 会存储在内存中。

4.生产环境中通常会使用多个 Master server 来保证可用性。

image.png

在 Kudu 当中存储的结构大致为,第一点,客户端想要去读取某一个表中数据的时候,第一步会先去找Master server,Master server 当中有一个 Master tablet ,client 找到 Master server 中的 Master tablet,来得知获取的这张表在哪一个 tablet server 中存,所以 Master server 管理的是表的元数据,总体的元数据也可以理解为表的访问路径,比如说要访问这张表,但是不知道在哪一个服务器里,就可以问 Master server。跟 tablet server 比起来 Master server 的任务过于轻松,Master server 中所做的事情并不多,所存储的元数据也并不多,kudu 只管理几百个节点,而 HDFS 要管理成千上万个节点,但 name note 的元数据也在内存中存,所以kudu为了优化性能,Master的元数据也在内存中。这个 tablet 与其它 tablet 相同,Master tablet 有三个 tablet。Master 的一个r tablet 是由两个复制的。

5.Master server 作用如下:

(1)Masterserver 是用于存储元数据

(2)这些元数据在一个特殊的 tablet 中存

(3)为了优化性能 Master 的元数据也在内存中。

(4)Master 的 tablet 的复制因子也是3,会有两个额外的副本

(5)Master serye 支持高可用(因为部署了三个 Master,tablet 就会分布到三个 Master 中,所以生产环境中通常会使用多个 Master serye 来保证可用性,因为 tablet 支持复制有两个额外的副本。)


二、tablet server

Tablet server 中也是 tablet,但是其中存储的是表数据。且 Master 中存一个 tablet,但 Tablet server 可以控制存多少个 tablet。

Tabletservor 的任务非常重,其负责和数据相关的所有操作,包括存储,访间,压缩,其还负责将数据复制到其它机器。与 tablet server 相比 Master 任务轻节点少但内存高。

image.png

因为 Tabletsorver 特殊的结构,其任务过于繁重,几乎负责了 kudu 所有的工作,所以有如下的限制

(1)Kudu 最多支持300个服务器,建议 Tablet server 最多不超过100个

(2)建议每个 Tablet server 至多包含2000个 tablet(包含 Follower)这一点与 HDFS 和 Hbase 有很大区别,Hbase 的扩展性是源自 HDFS 的,所以 Hbase 扩展性是比较好的,但是 kudu 扩展性比较差但足够用。并且kudu服务器都是内存很大的商用服务器。

(3)建议每个表在每个 Tablet server 中至多包含60个 tablet(包含 Follower)

(4)每个 Tablet server 至多管理8TB 数据

(5)理想环境下,一个 tabtet loador 应该对应一个 CPU 核心,以保证最优的扫描性能。tabtet 自身是可以复制的,复制因子默认是三,可以有两个额外副本。不限制具体核心的运算性能,只要有一个并行单位就可以。kudu 不仅对存储和内存要求比较高,对 CPU 要求也很高。要保证 kudu 的扫描性能。

Master server 负责存储元数据,Tablet server 负责存储 tablet,一个 tablet又是某一张表的某一个分区。

相关文章
|
1月前
|
存储 关系型数据库 MySQL
|
11月前
|
SQL 安全 关系型数据库
php开发实战分析(8):mysql类库的操作高级使用API开发(字段操作、权限分配、日期格式、跨表查询,数据分表)
php开发实战分析(8):mysql类库的操作高级使用API开发(字段操作、权限分配、日期格式、跨表查询,数据分表)
308 0
|
SQL 存储 关系型数据库
OushuDB 创建和管理表的基本结构之表的基本概念
OushuDB 创建和管理表的基本结构之表的基本概念
55 0
|
存储 SQL 缓存
MySQL数据库系统中的核心组件一共有哪些?底层原理是什么?
MySQL数据库系统中的核心组件一共有哪些?底层原理是什么?
287 0
|
存储 NoSQL 分布式数据库
kudu原理_存储原理|学习笔记
快速学习kudu原理_存储原理
124 0
kudu原理_存储原理|学习笔记
|
缓存 分布式计算 Hadoop
Spark 原理_运行过程_概念介绍 | 学习笔记
快速学习 Spark 原理_运行过程_概念介绍
103 0
Spark 原理_运行过程_概念介绍 | 学习笔记
|
存储 SQL 分布式计算
Kudu原理_总体设计|学习笔记
快速学习Kudu原理_总体设计
81 0
Kudu原理_总体设计|学习笔记
|
SQL 存储 分布式计算
概述介绍-和 Hive 关系、异同 | 学习笔记
快速学习 概述介绍-和 Hive 关系、异同
164 0
概述介绍-和 Hive 关系、异同 | 学习笔记
|
SQL 分布式计算 前端开发
架构组件&查询处理流程--笔记总结 | 学习笔记
快速学习 架构组件&查询处理流程--笔记总结
70 0
|
机器学习/深度学习 算法 关系型数据库
MySQL组复制构建在Paxos分布式算法基础上实现的
MySQL组复制构建在Paxos分布式算法基础上实现的
333 0