Hive中如何快速的复制一张分区表(包括数据)
来源:互联网 发布:影响数据质量的因素 编辑:程序博客网 时间:2024/06/05 08:22
关键字:Hive 复制表
Hive中有时候会遇到复制表的需求,复制表指的是复制表结构和数据。
如果是针对非分区表,那很简单,可以使用CREATE TABLE new_table AS SELECT * FROM old_table;
那么如果是分区表呢?
首先想到的办法可能是:
先创建一张和old_table结构相同的new_table,包括分区;可以使用CREATE TABLE new_table LIKE old_table;
接下来使用动态分区,把old_table的数据INSERT到new_table中。
这个方法当然可以,但可能不是最快的。
其实可以这样做:
1. CREATE TABLE new_table LIKE old_table;
2. 使用hadoop fs -cp 命令,把old_table对应的HDFS目录的文件夹全部拷贝到new_table对应的HDFS目录下;
3. 使用MSCK REPAIR TABLE new_table;修复新表的分区元数据;
看例子:
有一张分区表t1,只有两个分区,每个分区中都有一条数据,如下:
创建一张相同表结构的新表t2;
使用hadoop fs -cp命令把t1对应HDFS目录的所有文件夹复制到t2对应的HDFS目录下:
在Hive用使用MSCK REPAIR TABLE t2;修复新表t2的分区元数据;
OK,新表t2已经复制好了,它和t1有着相同的表结构,分区结构,分区以及数据。
转自:http://lxw1234.com/archives/2015/09/484.htm
阅读全文
0 0
- Hive中如何快速的复制一张分区表(包括数据)
- Hive中如何快速的复制一张分区表(包括数据)
- Hive中如何快速的复制一张分区表(包括数据)
- SQL2000中如何在两个数据库之间复制表(包括其中的数据)
- Hive中分区表的操作
- hive中快速对表结构数据进行复制
- hive中快速对表结构数据进行复制
- Hive学习笔记 --- Hive中创建分区表,并且查询数据
- 在SqlServer中如何使用Sql语句将一张表的数据复制到另一张表
- excel sheet中数据的快速复制
- 如何每日增量加载数据到Hive分区表
- 如何每日增量加载数据到Hive分区表
- 导入作业数据集total.csv到Hive中,用日期做为分区表的分区ID
- hive 的表操作问题 hive中简单介绍分区表
- 本地复制一张innodb表的数据
- 复制一张表的数据或结构
- 将一个库里的一张表中的数据复制到另一个库的一张表中
- HIVE的分区表
- Java递归的简单实现
- hdu 6130 Kolakoski(多校联赛)
- 微信小程序Page中data数据操作和函数调用
- Node.js 入门简介
- JS中的phototype
- Hive中如何快速的复制一张分区表(包括数据)
- vuex2.0 基本使用(2) --- mutation 和 action
- 人工智能到底用GPU还是FPGA?
- Python中的打开文件对话框
- 暑期 tensorflow+CNN+mnist
- 20位活跃在Github上的国内技术大牛
- HDU 2571 命运
- 【怎样写代码】确保对象的唯一性 -- 单例模式(三):单例模式
- leetcode 416. Partition Equal Subset Sum