我在读取avro文件时遇到问题,在架构文件中有时间戳列名称
CREATE EXTERNAL TABLE sampe_table
(
username string,
tweet string,
`timestamp` long
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.avro.AvroSerDe'
STORED AS AVRO
LOCATION 'hdfs:////user/hive/warehouse/avrodata/'
错误
AILED:ParseException行5:12无法识别列类型中'long'')''STORED'附近的输入
我也设置了SET hive.support.sql11.reserved.keywords=false;
但我仍然有错误
答案 0 :(得分:0)
配置单元没有 Long
类型。
使用 Bigint
.. etc数据类型代替 long 。
HiveDDL:
CREATE EXTERNAL TABLE sampe_table
(
username string,
tweet string,
`timestamp` bigint
)
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.avro.AvroSerDe'
STORED AS AVRO
LOCATION 'hdfs:////user/hive/warehouse/avrodata/';
请参阅this链接,以获取有关Hive中所有受支持类型的更多详细信息。