将文件从一个 table 传输到 impala 中的另一个

Transfer files from one table to another in impala

我在 impala 中有两个 table,我想将数据从一个转移到另一个。 两个 table 都有像

这样的 hdfs 路径
/user/hive/db/table1 or table2/partitiona/partitionb/partitionc/file

我知道 INSERT INTO 将数据从一个 table 移动到另一个的过程。 我不知道如何移动 hdfs 路径中的文件,或者如果 INSERT INTO statement

自动发生这种情况

此外,如果table在创建设置中排序,如果有任何数据插入其中,它也会被排序吗?

它自动发生并由 hive 完成。当您执行 INSERT INTO table1 SELECT * FROM table2 时,hive 将数据从 /user/hive/db/table1 复制到 table2/partitiona/partitionb/partitionc/file
您不必移动任何东西。您可能需要分析 table1 以获得更好的性能。

回答你的第二个问题,如果你在创建table1时使用sort by,那么无论table2中的数据是排序的还是未排序的,table1中的数据都会自动排序。