在 impala 中将文件从一个表传输到另一个表
Posted
技术标签:
【中文标题】在 impala 中将文件从一个表传输到另一个表【英文标题】:Transfer files from one table to another in impala 【发布时间】:2021-06-05 08:37:47 【问题描述】:我在 impala 中有两个表,我想将数据从一个移动到另一个。 两个表都有类似的 hdfs 路径
/user/hive/db/table1 or table2/partitiona/partitionb/partitionc/file
我知道使用INSERT INTO
将数据从一个表移动到另一个表的过程。
我不知道如何移动 hdfs 路径中的文件,或者如果这会自动发生在 INSERT INTO statement
另外,如果在创建设置中对表进行了排序,如果有任何数据插入其中,它也会被排序吗?
【问题讨论】:
【参考方案1】:它自动发生并由 hive 完成。当您执行 INSERT INTO table1 SELECT * FROM table2
时,hive 会将数据从 /user/hive/db/table1
复制到 table2/partitiona/partitionb/partitionc/file
。
您不必移动任何东西。您可能需要分析 table1 以获得更好的性能。
回答你的第二个问题,如果你在创建table1时使用sort by
,那么table1中的数据将自动排序,而不管table2中的数据是否排序。
【讨论】:
以上是关于在 impala 中将文件从一个表传输到另一个表的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Flutter 中将数据从一个函数传输到另一个函数?具体这种情况