【发布时间】:2016-01-29 19:39:54
【问题描述】:
我在 Impala 中移动数据,而不是我的设计,我丢失了一些数据。我需要将镶木地板表中的数据复制回其原始的非镶木地板表。最初,开发人员使用脚本中的一个简单的衬线来完成此操作。由于我对数据库一无所知,尤其是对 Impala,我希望你能帮助我。这是用于转换为我需要反转的镶木地板表的一行。
impalaShell -i <ipaddr> use db INVALIDATE METADATA <text_table>;
CREATE TABLE <parquet_table> LIKE <text_table> STORED AS PARQUET TABLE;
INSERT OVERWRITE <parquet_table> SELECT * FROM <text_table>;
谢谢。
【问题讨论】:
-
你试过简单地做
CREATE TABLE <text_table> AS SELECT * FROM <parquet_table>吗?根据Cloudera documentation,这应该是可能的。注意:确保您的<text_table>不存在或使用不存在的表名,以免意外覆盖其他数据。 -
太棒了。把它写下来作为答案,我会给你积分。
-
很高兴它有帮助。我也写了它作为答案。