在不使用export + distcp + import的情况下在不同的配置集群上执行简单的HQL后保存配置单表

时间:2016-01-15 11:31:42

标签: hive hiveql apache-hive

我在群集X中有一个表A

我想要执行一些HQL( select * from A where A.country = 'INDIA')&将表B中的输出保存在集群Y中。

我可以在表A &上执行HQL将数据存储在表格温度中。然后,使用以下命令将此配置单元表导出到集群Y中的表B

EXPORT TABLE temp TO 'path/to/hdfs_clusterX';

hadoop distcp hdfs:///path/to/hdfs_clusterX hdfs:///path/to/hdfs_clusterY

IMPORT TABLE Y FROM 'path/to/another/hdfs

还有其他更好的方式而不是创建表格温度吗?

1 个答案:

答案 0 :(得分:0)

从A中选择*,其中A.country ='INDIA';

将上面的选择结果插入到其他表中,然后使用以下命令将其导出到群集上的某个位置: 假设表名是test

将表格测试导出到'/ path';

之后使用distcp命令将其移动到另一个群集

hadoop distcp源路径目标路径;