当前位置: 首页 > article >正文

Hive迁移,小表(10G以下的),分区快速修复批量脚本

hive迁移要迁移元数据(mysql),要迁移实际数据hdfs,迁移完后如果有分区,通常是不能访问的。

这里就要修复分区了,如果是大表,几十T这种,迁移可能花了24小时,那么你修复分区也可能花这么久,这种表就得手动分区比较快。参考这个几分钟。hive迁移后修复分区慢,怎么办?-CSDN博客

大表就只有那么多张,其他大部分都是小表,比如我这个小表有2000张。

主要用的是MSCK REPAIR TABLE table_name

脚本如下

repair_table.sh

#!/bin/bash

# 设置beeline的连接信息
BEELINE_CMD="beeline -u jdbc:hive2://your_hive_server:10000 -n your_username -p your_password"
#kerbers方式
#BEELINE_CMD="beeline -u jdbc:hive2://xxx:7001/xxx;principal=hadoop/xxx@xxxx"

# 读取包含表名的txt文件
while IFS= read -r table_name
do
    # 执行MSCK REPAIR TABLE命令
    echo "Repairing partitions for table: $table_name"
    $BEELINE_CMD -e "MSCK REPAIR TABLE $table_name;"
    if [ $? -eq 0 ]; then
        echo "Successfully repaired partitions for table: $table_name"
    else
        echo "Failed to repair partitions for table: $table_name"
    fi
done < "$1"

建议第一次,先在下面的table.txt,提供几张小表,测试下,然后没问题,在一次性丢几千张表进去。

用法,准备一个含所有表名的txt

table.txt

里面的内容是

table_name123

ods_a
ods_a12
dwd_b

用法

sh repair_table.sh table.txt

成功,之后自己beeline去hive里面查下就行了


http://www.kler.cn/a/506417.html

相关文章:

  • 梁山派入门指南4——定时器使用详解,包括定时器中断、PWM产生、输入捕获测量频率
  • openharmony标准系统方案之瑞芯微RK3568移植案例
  • Elasticsearch:Jira 连接器教程第一部分
  • Vue3 Element-Plus el-tree 右键菜单组件
  • Deep4SNet: deep learning for fake speech classification
  • 智能科技与共情能力加持,哈曼重新定义驾乘体验
  • 硬件学习笔记--31 IEC62053-21相关内容介绍
  • 基于代理的RAG实现-Agentic RAG
  • Kafka消息轨迹方案设计与实现
  • 新型智慧园区解决方案:AI赋能场景,核心架构全解析
  • 一个超级简单的清晰的LSTM模型的例子
  • (双系统)Ubuntu+Windows解决grub引导问题和启动黑屏问题
  • 记录一次RPC服务有损上线的分析过程
  • 2025年01月14日Github流行趋势
  • Elasticsearch容器启动报错:AccessDeniedException[/usr/share/elasticsearch/data/nodes];
  • 栈算法篇——LIFO后进先出,数据与思想的层叠乐章(下)
  • MATLAB自带函数,使用遗传算法,求函数最小值,附代码
  • 用python进行大恒相机的调试
  • SpringSecurity-前后端分离
  • 码编译安装httpd 2.4,测试
  • CryptoMamba:利用状态空间模型实现精确的比特币价格预测
  • 基于多个边缘盒子部署的综合视频安防系统的智慧地产开源了
  • Python如何在指定行追加内容
  • IDEA测试报错java.lang.NullPointerException空指针异常解决办法
  • Jetbrains 官方微信小程序插件已上线!
  • 数据存取:存取方式、操作、技术、挑战、相关学术分享