I have two Hive tables of the same structure (schema). What would be an efficient SQL request to concatenate them into a single table with the same structure?

Update, this works quite fast in my case:

CREATE TABLE xy AS SELECT * FROM ( SELECT *
FROM x UNION ALL
SELECT *
FROM y ) tmp;

有帮助吗?

解决方案

If you are trying to merge table_A and table_b into a single one, the easiest way is to use the UNION ALL operator. You can find the syntax and use cases here - https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Union

其他提示

"union all" is a right solution but might be expensive, resource/time wise. I'd recommend creating a table with two partitions, one for table A and another for Table B. This way, no need to merge (or union all). The merged table is available as soon as both partitions get populated.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top