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又是某一张表的某一个分区。

相关文章
|
Ubuntu
百度搜索:蓝易云【Ubuntu删除多余内核教程】
现在,你已经成功地删除了Ubuntu系统中多余的旧内核。请谨慎删除内核,确保保留当前正在使用的稳定内核以及至少一个备用内核,以防止出现意外问题。
428 2
|
机器学习/深度学习 存储 并行计算
一篇就够:高性能推理引擎理论与实践 (TensorRT)
本文分享了关于 NVIDIA 推出的高性能的深度学习推理引擎 TensorRT 的背后理论知识和实践操作指南。
14740 9
一篇就够:高性能推理引擎理论与实践 (TensorRT)
|
Kubernetes 容器 Perl
在K8S中,Pod的重启策略是什么?
在K8S中,Pod的重启策略是什么?
|
Java 测试技术 数据安全/隐私保护
🚀Java零基础-continue语句详解
【10月更文挑战第3天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
546 4
|
数据采集 前端开发 数据安全/隐私保护
使用 urllib.parse 模块优雅地处理 URL
使用 urllib.parse 模块优雅地处理 URL
280 9
|
机器学习/深度学习 算法 安全
基于YOLOv8深度学习的危险区域人员闯入检测与报警系统【python源码+Pyqt5界面+数据集+训练代码】YOLOv8、ByteTrack、目标追踪、区域闯入
基于YOLOv8深度学习的危险区域人员闯入检测与报警系统【python源码+Pyqt5界面+数据集+训练代码】YOLOv8、ByteTrack、目标追踪、区域闯入
|
数据采集 数据可视化 数据挖掘
如何进行有效的数据清洗?
如何进行有效的数据清洗?
1224 3
|
人工智能 Rust Apache
社区供稿 | 更长、更强、更开放,零一万物 Yi-1.5 系列开源模型发布一周广受好评
5 月 13 日,零一万物 Yi 系列开源模型全新升级为 Yi-1.5。相较于去年 11 月的开源版本,这次的 Yi-1.5 在保持原 Yi 系列模型优秀的通用语言能力的前提下,通过增量训练 500B 高质量 token,大幅提高了数学逻辑、代码能力。
|
机器学习/深度学习 并行计算 安全
ImportError: DLL load failed while importing libpaddle: 找不到指定的模块问题
【6月更文挑战第7天】ImportError: DLL load failed while importing libpaddle: 找不到指定的模块问题
3464 0