hive sql:CREATE TABLE ******detail_cm_es( key string COMMENT '主键ID' ,trade_code string COMMENT '交易编码' ,waybill_number string COMMENT '运单号' ,fee_type string COMMENT '费用项编码' ,fee_type_name string COMMENT '费用项名称' ,fee decimal(18,2) COMMENT '费用项金额' ,shiping_month string COMMENT '寄件') COMMENT 'XXXXXX' ROW FORMAT SERDE 'org.elasticsearch.hadoop.hive.EsSerDe' STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler' WITH SERDEPROPERTIES ( 'serialization.format'='1') TBLPROPERTIES (....);
主要是无法解析STORED BY的语法
创建hive外部表
1条答案
按热度按时间8wtpewkr1#
解决HiveCreateTableParser代码:
`
if (lexer.identifierEquals(FnvHash.Constants.STORED)) {
lexer.nextToken();
if (lexer.token() == Token.AS) {
lexer.nextToken();
if (lexer.identifierEquals(FnvHash.Constants.INPUTFORMAT)) {
HiveInputOutputFormat format = new HiveInputOutputFormat();
lexer.nextToken();
format.setInput(this.exprParser.primary());
`
` public static class HiveStatementParserForKye extends HiveStatementParser {