数据湖实操讲解【数据迁移】第四讲:如何将 Hive 数据按分区归档到 OSS

简介: 数据湖 JindoFS+OSS 实操干货 36讲 每周二16点准时直播!扫文章底部二维码入钉群,线上准时观看~ Github链接: https://github.com/aliyun/alibabacloud-jindofs/blob/master/docs/jindo_distcp/jindo_distcp_overview.md

本期导读 :【数据迁移】第四讲

主题:如何将 Hive 数据按分区归档到 OSS
讲师:健身,阿里巴巴计算平台事业部 EMR 技术专家
内容框架:
  • 背景/具体功能介绍
  • 实现原理详解
  • 使用实例
直播回放链接:(3/4讲)

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

一、背景/功能简述

传统集群架构

  • 存储计算一体
  • 存储量与计算量无法始终匹配
  • 存储无法水平扩展
  • 存储与计算竞争硬盘资源

640 (4).png

存储分层架构

  • 计算资源动态伸缩
  • 存储资源使用云存储作为 HDFS 的替代或补充
  • 相比存算分离架构,对于已有 HDFS 数据比较平滑,可以逐渐过渡到存算分离架构

640 (5).png

数据仓库

  • 数据仓库是大数据的典型场景
  • 每天的 ETL 作业新增大量数据
  • Hive 支持分区表,使用分区可以快速裁剪数据
  • Hive 数仓中大量 Hive 表以时间日期作为分区字段
  • 在数仓中很多表的较老的日期分区平常一般不会被访问,可以考虑把这部分数据移出 HDFS
  • Hive 的每个分区都有自己的 storagedescriptor,可以有单独的存储路径

分区表的结构

partitioned_table_xx

  • dt=2021-05-16/category=1/
  • dt=2021-05-16/category=2/
  • dt=2021-05-16/category=5/
  • dt=2021-05-16/category=8/
  • dt=2021-05-15/category=2/
  • dt=2021-05-15/category=3/
  • dt=2021-05-15/category=4/
  • ……

使用 JindoTable 按分区归档数据

  • 在本地盘机型上,HDFS 可以提供较好的性能,对集群已有存储空间也能较好利用
  • 一般情况下用不到的数据移动到 OSS,释放集群存储空间,减小NameNode 压力
  • 需要读取这部分数据时,也可以直接从 OSS 读取,不影响上层作业
  • 每天 ETL 完成后可以移动数据

⭐具体文档下载和参考见 Github:
https://github.com/aliyun/alibabacloud-jindofs/blob/master/docs/tools/table_moveto.md

二、实现原理

  • Jindodistcp 作为底层工具
  • 使用 jindodistcp 事务模式
  • 使用 HDFS 文件锁保证同一时间每个分区只有一个作业在操作
  • 先修改分区元数据再清理 hdfs 数据确保数据可用

640 (6).png

三、使用示例

Dingtalk_20210519151931.jpg

640 (7).png

数据准备

640 (8).png

移动分区字段 ds 大于 ‘b’的分区

640 (9).png

检查移动后的分区情况

640 (10).png

直接观看视频回放,获取实例讲解~https://developer.aliyun.com/live/246750


⭐Github链接:
https://github.com/aliyun/alibabacloud-jindofs

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

相关文章
|
存储 监控 调度
如何在阿里云OSS之间进行数据迁移呢?
讲解如何在阿里云对象存储OSS之间进行跨账号、跨地域、以及同地域内的数据迁移,包括数据迁移之前的准备工作和实施数据迁移以及一些后续操作,使用在线迁移服务,您可以将第三方数据轻松迁移至阿里云对象存储OSS,也可以在对象存储OSS之间进行灵活的数据迁移。
|
存储 安全 数据处理
阿里云OSS如何支持大规模数据迁移和传输?
阿里云OSS凭借全球基础设施、无限扩展、高持久性、成本优化及安全防护等优势,成为企业大规模数据迁移与传输的首选。其支持智能分层存储、高速传输及多场景数据处理,提供端到端解决方案,助力企业高效构建全球化数据管道,实现数据价值最大化。
|
存储 缓存 分布式计算
OSS大数据分析集成:MaxCompute直读OSS外部表优化查询性能(减少数据迁移的ETL成本)
MaxCompute直读OSS外部表优化方案,解决传统ETL架构中数据同步延迟高、传输成本大、维护复杂等问题。通过存储格式优化(ORC/Parquet)、分区剪枝、谓词下推与元数据缓存等技术,显著提升查询性能并降低成本。结合冷热数据分层与并发控制策略,实现高效数据分析。
551 2
|
存储 运维 分布式计算
OSS迁移实战:从自建MinIO到阿里云OSS的完整数据迁移方案
本文介绍了从自建MinIO迁移至阿里云OSS的完整方案,涵盖成本优化、稳定性提升与生态集成需求。通过双写代理、增量同步、分层校验等技术,解决数据一致性、权限迁移、海量小文件处理等挑战,实现业务零中断与数据强一致性,最终达成79%的TCO降低和显著性能提升。
3309 0
|
SQL 存储 HIVE
hive分区与分桶
hive分区与分桶
1072 1
|
SQL DataWorks 监控
DataWorks产品使用合集之同步数据到Hive时,如何使用业务字段作为分区键
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
数据采集 DataWorks 安全
DataWorks产品使用合集之将按日分区的表同步数据到OSS数据源,该如何配置
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
412 1
|
机器学习/深度学习 分布式计算 大数据
MaxCompute产品使用问题之如何直接加载oss中的parque数据,无需指定列和分区
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
285 1
|
存储 分布式计算 大数据
MaxCompute产品使用合集之是否支持创建OSS外部表为分区表,并访问OSS上以分区方式存储的数据
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
SQL 分布式计算 DataWorks
DataWorks操作报错合集之在进行Hive分区truncate操作时遇到权限不足,怎么解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
427 0