数据湖实操讲解【 JindoTable 计算加速】第二十一讲:分层更高效,对 Hive 数仓进行热度/冷度统计

本期导读 :【JindoTable 计算加速】第二十一讲


主题:分层更高效,对 Hive 数仓进行热度/冷度统计uid + JindoFSOSS 上数据进行训练加速

讲师:羊川,阿里巴巴计算平台事业部 开发工程师


内容框架:

  • 热/冷度统计介绍
  • 热/冷度统计用法
  • 演示


直播回放链接:(21讲)

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

一、热/冷度统计介绍

为什么要分层统计    

  • Hadoop

   • 所有数据一视同仁

   • 数据量增加时,成本也在增加


  • OSS

   • 横向拓展

多种数据存储类型

   • 不同计费方式

OSS 数据存储类型

  • 标准

   • 0.12元/GB/月

  • 低频访问

   • 0.08元/GB/月

  • 归档

   • 0.033元/GB/月

  • 冷归档

   • 0.015元/GB/月

数据热/冷度统计

  • 区分不同类型数据
  • 降低成本
  • 缓存加速


二、热/冷度统计用法

适用范围

  • 引擎

   • Hive

   • Spark

   • Presto

  • 版本

   • 冷度统计( EMR-3.35/4.9之后的版本

   • 热度统计EMR-3.33/4.3之后的版本

   • 暂不支持 DLF 数据湖元数据

  • 自建 Hadoop 集群

   • 需要结合其他JindoFS的服务一起使用

Hive 开启热度统计

  • 登陆阿里云 E-MapReduce 控制台进入自己的集群
  • 集群服务 –> Hive –> 配置
  • 搜索参数 hive.exec.post.hooks,在其后追加 com.aliyun.emr.table.hive.HivePostHook
  • 保存 -> 自动更新配置 -> 重启 HiveServer2

Hive 开启冷度统计

  • 参照热度统计配置 hive.exec.post.hooks
  • 服务配置 -> hive-site -> 自定义配置

 • key:hive.hook.update.access.time.enabled

 • value:true

  • 保存配置 -> 重启 All Components

Spark 开启热度统计

  • SmartData 3.2.X版本后,Spark 默认开启数据收集

Spark 开启冷度统计

  • 登陆阿里云 E-MapReduce 控制台进入自己的集群
  • 集群服务 -> Spark -> 配置

 • 搜索参数 spark.sql.queryExecutionListeners,确保参数值中包括 com.aliyun.emr.table.spark.SparkSQLQueryListener,如果存在多个 listener,使用英文分号隔开。

  • 服务配置 -> spark-defaults -> 自定义配置

 • key: spark.sql.query.update.access.time.enabled

 • value: true

 • 保存配置

 • 重启 All Components

Presto 开启热度统计

  • SmartData 3.2.X版本后,Presto 默认开启数据收集

Presto 开启冷度统计

  • 登陆阿里云 E-MapReduce 控制台进入自己的集群
  • 集群服务 -> Presto -> 配置

 • 搜索参数 event-listener.name,确保参数值中包括 jindo-presto-post-event-listener

  • 服务配置 -> event-listener.properties -> 自定义配置

 • key: listener.update.access.time.enabled

 • value: true

 • 保存配置

 • 重启 All Components

热度统计用法

  • 语法

 • jindo table –accessStat -d -n

days 和 topNums 都是正整数

当 days 为1时,表示查询从本地时间当天00:00起的所有访问记录


  • 功能

 • 查询指定时间范围内,访问最多的 N 个表或分区的记录


  • 示例:查询过去7天内访问次数最多的20条表或分区记录

 • jindo table -accessStat –d 7 –n 20

冷度统计用法

  • 语法

 • jindo table –leastUseStat -n [-i/-ignoreNever]

nums 是显示的记录数量,为正整数

-i/-ignoreNever 为可选参数,会过滤从未被访问过的表或分区


  • 功能

 • 展示最久未被访问的表或分区


  • 示例:查询最久未被访问的20条表或分区的记录

 • jindo table –leastUseStat –n 20


三、演示


  • 配置参数
  • 操作数据
  • 热/冷度功能展示


相关文档链接:

  • 热度统计使用文档:

https://help.aliyun.com/document_detail/264174.html

  • 冷度统计使用文档:

https://help.aliyun.com/document_detail/264175.html



点击回放链接,直接观看第21讲视频回放,获取讲师实例讲解:

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




Github链接:

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


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

数据湖实操讲解【 JindoTable 计算加速】第二十一讲:分层更高效,对 Hive 数仓进行热度/冷度统计

上一篇:C++语言基础 例程 内置函数


下一篇:选型宝访谈:AI时代,如何重新定义客服软件?