【问题标题】:Trying to copy data from Impala Parquet table to a non-parquet table尝试将数据从 Impala Parquet 表复制到非 Parquet 表
【发布时间】: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 &lt;text_table&gt; AS SELECT * FROM &lt;parquet_table&gt;吗?根据Cloudera documentation,这应该是可能的。注意:确保您的&lt;text_table&gt; 不存在或使用不存在的表名,以免意外覆盖其他数据。
  • 太棒了。把它写下来作为答案,我会给你积分。
  • 很高兴它有帮助。我也写了它作为答案。

标签: sql hadoop impala parquet


【解决方案1】:

你有没有尝试过简单地做

 CREATE TABLE <text_table> 
     AS 
 SELECT * 
   FROM <parquet_table>

根据Cloudera documentation,这应该是可能的。

注意:确保你的表不存在或使用一个不存在的表名,以免意外覆盖其他数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    • 2015-07-30
    • 2023-04-05
    • 2020-11-05
    • 2021-08-15
    • 1970-01-01
    相关资源
    最近更新 更多