Мне нужно написать временную метку в паркет, а затем прочитать ее с помощью Hive и Impala.
Чтобы написать ее, я попытался, например,
my.select(
...,
unix_timestamp() as "myts"
.write
.parquet(dir)
Затем, чтобы прочитать, я создалвнешняя таблица в Hive:
CREATE EXTERNAL TABLE IF NOT EXISTS mytable (
...
myts TIMESTAMP
)
При этом я получаю сообщение об ошибке
HiveException: java.lang.ClassCastException: org.apache.hadoop.io.LongWritable cannot be cast to org.apache.hadoop.hive.serde2.io.TimestampWritable
Я также пытался заменить unix_timestamp () на
to_utc_timestamp(lit("2018-05-06 20:30:00"), "UTC")
ита же проблема.В Impala он возвращает меня:
Column type: TIMESTAMP, Parquet schema: optional int64
В то время как метка времени должна быть int96.Как правильно написать метку времени в паркете?