Hive中parquet压缩格式分区表的跨集群迁移记录

文章目录

环境与需求

集群环境

华为FushionInsight A

华为FushionInsight B

华为集群管理机 local

Hive 3.1.0

HDFS 3.3.1

需求描述

华为A集群中将我们的数据迁移到华为B集群,其中数据经过华为集群管理机local跳转。

数据样例:分区表 外部表 .parquet压缩

操作步骤

STEP 1

记下表所在华为A集群的HDFS位置,使用命令desc formatted 'tablename';获取,如'hdfs://hacluster/user/hive/warehouse/bigdata.db/tablename'

记下建表语句,使用命令show create table 'tablename;'

STEP 2

查看表在华为A集群的HDFS占用空间,使用命令hdfs dfs -du -h 'hdfs://hacluster/user/hive/warehouse/bigdata.db/tablename',稍后将表大小记录,并判断存储是否满足要求。

STEP 3

STEP 2条件满足,使用命令hdfs dfs -get '粘贴在STEP 1中复制的位置',将表完整内容get到本地管理机local。

此时如果表存储过大,我们根据要迁移的表的分区进行get操作也可以,将对应分区名跟在位置后,如'hdfs://hacluster/user/hive/warehouse/bigdata.db/tablename/2023',一般表示2023年的分区。

STEP 4

在华为B集群中创建迁移的表,STEP 1中我们已经拿到了建表语句,需要修改位置:'hdfs://hacluster/user/hive/warehouse/bigdata.db/tablename',请修改位置为默认Hive默认数据库的位置。

STEP 5

将STEP 3 中的文件put到华为集群B的'hdfs://hacluster/user/hive/warehouse/bigdata.db/tablename/2023'目录下。

在华为集群B执行hdfs dfs -du -h hdfs://hacluster/user/hive/warehouse/bigdata.db/tablename,确认数据成功上传。

STEP 6

在建表语句中可以看到分区的字段date,再执行HQL语句alter table tablename add partition(date='2023')

相关推荐
牛奶咖啡132 天前
大数据Hadoop运维应用实践——HIVE与Hadoop实现整合_Hive的配置安装与使用
大数据·hive·hive的配置与安装·metastore服务的配置·hiveserver2服务配置·hive的常用sql操作·beeline的使用
Zhu7583 天前
在k8s集群环境部署高可用的Apache Hadoop3.1.1定制版集群
hadoop·kubernetes
Y3815326623 天前
3 种 SERP 数据 ETL 方案对比:实时 / 定时 / 流式
数据仓库·etl
还有你Y4 天前
软件工程架构
hadoop·架构·软件工程
向夏威夷 梦断明暄4 天前
基于Tez引擎的 Hive SQL 性能优化
hive·sql·性能优化
这个DBA有点耶4 天前
交易型数据库是什么?OLTP核心能力与2026选型指南
数据库·数据仓库·sql·database·数据库架构·olap·dba
RestCloud5 天前
Informatica迁移国产ETL完整实施指南:ETLCloud自动化平滑替换方案
数据仓库·etl·etlcloud·数据传输·数据集成工具·informatica·国产化替代
德昂信息dataondemand6 天前
全量还是增量?聊聊数仓ETL中的数据同步策略
数据仓库·etl
观远数据7 天前
数据集成平台选型战卡:DataFlow对比传统ETL的5个维度与红线排除项
数据仓库·etl