繁体   English   中英

将6000亿条记录从一个配置单元表加载到另一个

[英]Loading 600billion records from 1 hive table into another

我在1个数据库中有一个配置单元外部表,其中包含大约6,000亿条记录和100列。 我需要将数据原样复制到其他数据库的同一表中。 我正在尝试编写一个火花代码,但是它花了很多时间。 有什么建议我将如何编写代码? 我是新来的火花!

不要复制,请放在原处。 在另一个数据库中创建外部表,其位置指向数据位置。

USE YOUR_DATABASE;
CREATE EXTERNAL TABLE abc ... LOCATION 'hdfs://your/data';

如果需要,使用MSCK REPAIR TABLE abc;恢复分区MSCK REPAIR TABLE abc; ALTER TABLE abc RECOVER PARTITIONS; 如果您正在使用EMR。

如果您绝对需要将数据复制到另一个位置(并且如果您在Amazon支付的EC2集群上,则需要为此花钱的话),请使用distcp(分布式复制工具)

hadoop distcp hdfs://your/data hdfs://your/data2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM