如何将 Hive 数据按分区归档到 OSS | 学习笔记

本文涉及的产品
对象存储 OSS,标准 - 本地冗余存储 20GB 3个月
对象存储 OSS,内容安全 1000 次 1年
对象存储OSS,敏感数据保护2.0 200GB 1年
简介: 快速学习如何将 Hive 数据按分区归档到 OSS。

开发者学堂课程【数据湖 JindoFS + OSS 实操干货36讲如何将 Hive 数据按分区归档到 OSS】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/833/detail/13964


如何将 Hive 数据按分区归档到 OSS


内容介绍

一、背景/具体功能介绍

二、实现原理详解

三、使用实例


一、背景/具体功能介绍

传统集群架构

• 存储计算一体

• 存储量与计算量无法始终匹配

• 存储无法水平扩展

• 存储与计算竞争硬盘资源1.png

存储分层架构

• 计算资源动态伸缩

• 存储资源使用云存储作为 HDFS 的替代或补充

• 相比存算分离架构,对于已有 HDFS 数据比较平滑,可以逐渐过渡到存算分离架构2.png

数据仓库

• 数据仓库是大数据的典型场景

• 每天的 ETL 作业新增大量数据

• Hive 支持分区表,使用分区可以快速裁剪数据

• Hive 数仓中大量 Hive 表以时间日期作为分区字段

• 在数仓中很多表的较老的日期分区平常一般不会被访问,可以考虑把这部分数据移出 HDFS

• Hive 的每个分区都有自己的 storagedescriptor,可以有单独的存储路径

分区表的结构

partitionedtablexx

• 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 完成后可以移动数据.


二、实现原理详解

• Jindodistcp 作为底层工具

• 使用 jindodistcp 事务模式

• 使用 HDFS 文件锁保证同一时间每个分区只有一个作业在操作

• 先修改分区元数据再清理 hdfs 数据确保数据可用


三、使用实例

参数     说明

要移动的表

目标路径,为表级别的路径,分区路径会在这个路径下自动创建

分区过滤条件表达式,支持基本运算符,不支持udf.

根据分区创建时间,创建时间超过给定天数的分区进行移动

整个moveTo任务的最大task并发度,默认为1

-o/-overWrite 是否覆盖最终目录。分区级别覆盖,不会覆盖本次移动不涉及的分区

-r/-removeSource 是否在移动完成后删除源路径

本地日志目录,默认为/tmp//

-e/-explain 如果指定explain模式,不会触发实际操作,仅打印会同步的分区

• 数据准备

• 移动分区字段 ds 大于 ‘b’的分区3.png

• 检查移动后的分区情况4.png

 

相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
相关文章
|
7月前
|
存储 人工智能 Kubernetes
AI 场景深度优化!K8s 集群 OSSFS 2.0 存储卷全面升级,高效访问 OSS 数据
阿里云对象存储OSS是一款海量、安全、低成本、高可靠的云存储服务,是用户在云上存储的高性价比选择…
|
4月前
|
存储 监控 调度
阿里云对象存储OSS之间进行数据转移教程
讲解如何在阿里云对象存储OSS之间进行跨账号、跨地域、以及同地域内的数据迁移,包括数据迁移之前的准备工作和实施数据迁移以及一些后续操作
|
4月前
|
存储 安全 数据管理
服务器违规资源被删,数据定时备份OSS 云存储才是 “救命稻草”
在数字化时代,数据已成为企业与个人的核心资产。然而,服务器违规、硬件故障等问题频发,导致数据丢失、业务中断,甚至造成不可挽回的损失。为保障数据安全与业务连续性,定时备份至关重要。阿里云国际站OSS提供高效、可靠的云存储解决方案,支持自动定时备份,帮助用户轻松应对数据风险。本文详解OSS备份操作步骤与注意事项,助你为数据穿上“防护甲”,实现安全无忧存储。
|
7月前
|
存储 人工智能 测试技术
AI 场景深度优化!K8s 集群 OSSFS 2.0 存储卷全面升级,高效访问 OSS 数据
OSSFS 2.0通过轻量化协议设计、协程化技术及FUSE3低级API重构,实现大文件顺序读写与小文件高并发加载的显著提升,在实际测试中表现出高达数十倍的吞吐量增长。适用于机器学习训练、推理等对高带宽低延迟要求严苛的场景,同时支持静态和动态挂载方式,方便用户在ACK集群中部署使用。
732 34
|
9月前
|
存储 Ubuntu 数据管理
使用s3cmd 2.x 与 Cyberduck 管理在 DigitalOcean Spaces 对象存储中的数据
通过 `s3cmd` 2.x 和 Cyberduck,你可以轻松管理 DigitalOcean Spaces 中的数据。`s3cmd` 提供了强大的命令行操作能力,适合脚本化和自动化任务,而 Cyberduck 提供了直观的图形界面,便于日常手动操作。掌握这两种工具的使用方法,将极大提高你的数据管理效率。希望本文能帮助你更好地使用 DigitalOcean Spaces。
196 7
|
SQL 数据采集 数据挖掘
大数据行业应用之Hive数据分析航班线路相关的各项指标
大数据行业应用之Hive数据分析航班线路相关的各项指标
406 1
|
SQL 分布式计算 数据库
【大数据技术Spark】Spark SQL操作Dataframe、读写MySQL、Hive数据库实战(附源码)
【大数据技术Spark】Spark SQL操作Dataframe、读写MySQL、Hive数据库实战(附源码)
713 0
|
7月前
|
SQL 分布式计算 大数据
大数据新视界 --大数据大厂之Hive与大数据融合:构建强大数据仓库实战指南
本文深入介绍 Hive 与大数据融合构建强大数据仓库的实战指南。涵盖 Hive 简介、优势、安装配置、数据处理、性能优化及安全管理等内容,并通过互联网广告和物流行业案例分析,展示其实际应用。具有专业性、可操作性和参考价值。
大数据新视界 --大数据大厂之Hive与大数据融合:构建强大数据仓库实战指南
|
SQL 分布式计算 Java
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
大数据-96 Spark 集群 SparkSQL Scala编写SQL操作SparkSQL的数据源:JSON、CSV、JDBC、Hive
278 0
|
SQL 分布式计算 大数据
大数据处理平台Hive详解
【7月更文挑战第15天】Hive作为基于Hadoop的数据仓库工具,在大数据处理和分析领域发挥着重要作用。通过提供类SQL的查询语言,Hive降低了数据处理的门槛,使得具有SQL背景的开发者可以轻松地处理大规模数据。然而,Hive也存在查询延迟高、表达能力有限等缺点,需要在实际应用中根据具体场景和需求进行选择和优化。
1051 6