Spark建表报错:context_feature字段MAP类型定义语法异常排查
错误原因及修正方案
错误原因
Spark SQL中MAP类型的语法格式为MAP<键数据类型, 值数据类型>,你在定义context_feature字段时,在键类型INT后面额外添加了一个左尖括号<,写成了MAP<INT,<ARRAY<MAP<INT,FLOAT>>>>,这种写法违反了Spark SQL的类型定义语法规则,SQL解析器无法识别该错误结构,因此触发了"no viable alternative at input"解析异常。
修正后的建表语句
DROP TABLE IF EXISTS hmi_feature_array; CREATE TABLE IF NOT EXISTS hmi_feature_array ( cycle_timestamp BIGINT, campaign_id BIGINT, arm ARRAY<BIGINT>, context_feature MAP<INT, ARRAY<MAP<INT,FLOAT>>> ) PARTITIONED BY(ds STRING) TBLPROPERTIES ( 'RETENTION' = '90', 'noUII' = '1' );
内容的提问来源于stack exchange,提问作者melatonin15
相关产品推荐
相关产品推荐

