3

我有一个使用 parquet 在 hive 0.131 中创建的外部表

CREATE external table if not exists tbl (
          occurred_at timestamp,
          user_phone string,
          usergk BIGINT,
          enabled boolean,
          classgk int,
          title string,
          eta int,
          latitude decimal(9,6),
          longitude decimal(9,6),
          device_type string,
          device_os_version string,
          event_at_utc timestamp

         )

    PARTITIONED BY (country string, occured_date date)
    STORED AS parquet
    LOCATION 's3://XXX'

当我在 HIVE 0.13 中查询时,一切看起来都很好,但是当我尝试在 Presto 中对这个表进行简单查询时(即 select * from tbl limit 10 )我得到了一个错误:

Can not read Parquet column: [HiveColumnHandle{clientId=hive,
name=occured_date, hiveType=date, hiveColumnIndex=-1, partitionKey=true}]
java.lang.RuntimeException: java.lang.IllegalArgumentException: 
Can not read Parquet column: [HiveColumnHandle{clientId=hive, name=occured_date, hiveType=date, hiveColumnIndex=-1, partitionKey=true}]

当我写下特定列(即从 tbl 限制 10 中选择发生的_at)时,我得到了像 '14173-10-07 02:42:56' 这样的奇怪结果,而在 hive 中它显示了有意义的结果

它可能与 hive 0.13 使用的镶木地板格式有关吗?

4

0 回答 0