У меня есть файл .txt со столбцом с массивом строк, разделенных запятыми, заключенных в скобки, и я хотел бы провести некоторый анализ в AWS Athena / QS. Исходные данные выглядят так:
col_id col2
1 ["string1", "string2", "string3", "string4"]
2 ["string1", "string2"]
3 ["string1", "string2", "string3"]
...
Я создал таблицу в Афине со следующим:
create external table db.xx (
col1 string,
col2 array<string>
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
WITH SERDEPROPERTIES (
'serialization.format' = ' ',
'field.delim' = ' ',
'collection.delim' = ','
) LOCATION 's3://xxx'
TBLPROPERTIES ("skip.header.line.count"="1");
Таблица успешно создана, и столбец распознается как тип данных массива.
Однако я не могу получить доступ к элементам в массиве.
select element_at (col2,1) from table возвращает:
string1, string2, string3, string4
string1, string2
string1, string2, string3
Я также пытался удалить [] и "" из необработанных данных, но все равно получил те же результаты.