不使用distcp命令将hive数据从一个Hadoop集群移动到另一个Hadoop集群?

时间:2015-10-13 06:59:12

标签: hadoop

如何在不使用myhex_int=0x5 #integer with value 5 myhex_str='%02d'%myhex_int #string '05',use '0x02d' if you prefer this #to return it to an integer again: myhex2=int(myhex_str,16) #set base to 16 #integer with value 5 命令的情况下将配置单元数据从一个Hadoop集群移动到另一个Hadoop集群。因为我们不能用这个。我们还有其他选择,如Sqoop或Flume?

1 个答案:

答案 0 :(得分:0)

distcp 是将大量数据从一个hadoop群集移动到另一个群集的有效方法。

Sqoop和Flume不能用于将数据从一个hadoop集群传输到另一个集群。 Sqoop主要用于在hadoop和关系数据库之间移动数据,而Flume用于向Hadoop提取流数据。

您的另一个选择是使用:

  1. 像Kafka一样的高吞吐率msg队列,但这比使用distcp更复杂。
  2. 使用传统的hadoop fs shell命令,例如cpget,后跟put
  3. 仅在您讨论Hive数据时,您还应考虑在群集之间保持hive元数据(Metastore)同步。