【问题标题】:load data into impala partitioned table将数据加载到 impala 分区表中
【发布时间】:2014-08-21 20:10:17
【问题描述】:

我在 HDFS 中有以下目录结构中的数据:

/exported/2014/07/01/00/SEARCHES/part-m-00000.bz2
                                 part-m-00001.bz2
/exported/2014/07/01/02/SEARCHES/part-m-00000.bz2
                                 part-m-00001.bz2
                                 part-m-00003.bz2
.
.
.
.
/exported/2014/08/01/09/SEARCHES/part-m-00005 .bz2

每个子目录下有多个零件文件。

我想将此数据集加载到 impala 表中,所以使用以下查询来创建表:

CREATE EXTERNAL TABLE search(time_stamp TIMESTAMP, ..... url STRING,domain STRING) PARTITIONED BY (year INT, month INT, day INT.hour INT) 行格式分隔字段以'\t'结尾;

然后

ALTER TABLE search ADD PARTITION (year=2014, month=08, day=01) LOCATION '/data/jobs/exported/2014/08/01/*/SEARCHES/';

但加载失败并出现以下错误:

ERROR: AnalysisException: Failed to load metadata for table: magneticbi.search_mmx
CAUSED BY: TableLoadingException: Failed to load metadata for table: search_mmx
CAUSED BY: RuntimeException: Compressed text files are not supported: part-m-00000.bz2

不确定执行此操作的正确方法是什么。

有人可以帮忙吗?

谢谢

【问题讨论】:

    标签: database hadoop database-schema cloudera impala


    【解决方案1】:

    这里有一个link to a table from Cloudera,描述了您的选择。总结一下:

    Impala 支持以下压缩编解码器:

    • 活泼。推荐它在压缩比和解压缩速度之间的有效平衡。 Snappy 压缩非常快,但 GZIP 可以节省更多空间。不支持文本文件。
    • GZIP。当需要实现最高级别的压缩(并因此最大程度地节省磁盘空间)时推荐使用。不支持文本文件。 放气。不支持文本文件。
    • BZIP2。不支持文本文件。
    • LZO,仅适用于文本文件。 Impala 可以查询 LZO 压缩的 Text 表,但目前无法创建它们或向其中插入数据;在 Hive 中执行这些操作。

    【讨论】:

      猜你喜欢
      • 2020-07-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-16
      • 2015-03-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多