Hive 错误:NotImplementedException:不支持以“TEXT”格式扫描表,因为该表有一个复杂类型为“ARRAY”的列

Hive 错误:NotImplementedException:不支持以“TEXT”格式扫描表,因为该表有一个复杂类型为“ARRAY”的列,hive,bigdata,impala,complex-data-types,Hive,Bigdata,Impala,Complex Data Types,我和BigData技术有一个新的合作伙伴。 我创建了一个带有列数据类型数组的表 CREATE TABLE movies ( movie_id int, title string, genres ARRAY<STRING> ) ROW FORMAT DELIMITED FIELDS TERMINATED BY ':' COLLECTION ITEMS TERMINATED BY '|' MAP KEYS TERMINATED BY '#' LINE

我和BigData技术有一个新的合作伙伴。 我创建了一个带有列数据类型数组的表

CREATE TABLE movies (
    movie_id int, 
    title string, 
    genres ARRAY<STRING>
) 
ROW FORMAT DELIMITED 
FIELDS TERMINATED BY ':' 
COLLECTION ITEMS TERMINATED BY '|' 
MAP KEYS TERMINATED BY '#' 
LINES TERMINATED BY '\n';
并将一些数据加载到表中。 现在我正在运行一个select查询,然后在Impala中显示下面的错误

SELECT COUNT(*) AS total_movies FROM movies;

ERROR: NotImplementedException: Scan of table 'assignment_hive_impala.movies' in format 'TEXT' is not supported because the table has a column 'genres' with a complex type 'ARRAY<STRING>'.
Complex types are supported for these file formats: PARQUET.
我不知道它为什么会显示这个错误。 谁能解释一下错误并帮我解决它


谢谢

看起来您正在从文本文件加载源文件/数据。正如错误中指出的,您不能将文本文件与复杂类型一起使用

如果您确实需要使用复杂类型进行测试,请将源数据转换为拼花地板并加载数据


您可以按照此操作将csv文件转换为拼花地板。

看起来您正在从文本文件加载源文件/数据。正如错误中指出的,您不能将文本文件与复杂类型一起使用

如果您确实需要使用复杂类型进行测试,请将源数据转换为拼花地板并加载数据

您可以按照下面的步骤将csv文件转换为拼花地板