程序员

数据湖实操讲解【 JindoTable 计算加速】第二十二讲:对 Hive 数

作者:admin 2021-07-29 我要评论

本期导读 【JindoTable 计算加速】第二十二讲 主题 对 Hive 数仓表进行高效小文件合并d JindoFS 对 OSS 上数据进行训练加速 讲师 辰石 阿里巴巴计算平台事业部 ...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)
本期导读 【JindoTable 计算加速】第二十二讲


主题 对 Hive 数仓表进行高效小文件合并d JindoFS 对 OSS 上数据进行训练加速

讲师 辰石 阿里巴巴计算平台事业部 技术专家


内容框架

背景介绍主要功能实操演示


直播回放链接 22讲

https://developer.aliyun.com/live/247112

一、背景介绍小文件如何产生 ? ? 动态分区插入数据 产生大量的小文件 从而导致 map 数量剧增reduce 数量越多 小文件也越多( reduce 的个数和输出文件是对应的)数据源本身就包含大量的小文件小文件带来的问题 ? ? 小文件会开很多 map 一个 map 开一个 JVM 去执行 所以这些任务的初始化 启动 执行会浪费大量的资源 严重影响性能小文件会给底层文件系统带来很大压力 如在 HDFS 中 每个小文件对象约占150 byte 如果小文件过多会占用大量内存。这样 NameNode 内存容量严重制约了集群的扩展。小文件解决方案从小文件产生的途经就可以从源头上控制小文件数量

? ?? 使用 Sequencefile 作为表存储格式 不要用 textfile 在一定程度上可以减少小文 件

? ?? 减少 reduce 的数量(可以使用参数进行控制)

? 少用动态分区 用时记得按 distribute by 分区

对于已有的小文件 我们可以通过以下几种方案解决

? 通过参数进行调节 设置 map/reduce 端的相关参数

? 重建表 建表时减少 reduce 数量

? 使用 hadoop archive 命令把小文件进行归档

二、主要功能JindoTableJindoTable 提供表或分区级别的热度统计、存储分层和表文件优化的功能 常见命令如下

? -accessStat/-leastUseStat

? -cache/-uncache/-archive/-unarchive/-archiveTable/-unarchiveTable/-status

? -optimize

? -showTable/-showPartition/-listTables

? -dumpmc

? -moveTo

Hive表小文件合并Jindo table –showTable/-showPartition –t db.tablename -p partitionSpec 显示表格或者分区的状态,如果表文件过小会提示文件过小

image.png

image.png

Jindo table –optimize db.tablename 优化表存储层的数据组织

image.png

Jindo table –optimize db.tablename 优化后检查表的状态以及目录格式如下

image.png

image.png


三、实操演示


对 hive 数仓表进行小文件高效合并演示





?点击回放链接 直接观看第22讲视频回放 获取讲师实例讲解

? ?https://developer.aliyun.com/live/247112



?Github链接

https://github.com/aliyun/alibabacloud-jindofs


不错过每次直播信息、探讨更多数据湖 JindoFS OSS 相关技术问题 欢迎扫码加入钉钉交流群

69c0a02cc68742fca5d49d92413dc67a.png


本文转自网络,原文链接:https://developer.aliyun.com/article/785988

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 数据湖实操讲解【 JindoTable 计算加速

    数据湖实操讲解【 JindoTable 计算加速

  • 秒懂消息队列

    秒懂消息队列

  • 什么是Spring Framework 框架?

    什么是Spring Framework 框架?

  • 3分钟带你了解版本控制系统的发展历史

    3分钟带你了解版本控制系统的发展历史

腾讯云代理商
海外云服务器