Как вставить искровой паркет в стол-УЛЕЙ?

#apache-spark #pyspark #hive #hiveql

#apache-spark #pyspark #улей #hiveql

Вопрос:

У меня есть таблица spark parquet на диске со следующей схемой :

 id1 : STRING
weight: array (nullable = true)
  |-- element: struct (containsNull = true)
  

Используя HIVE SQL, я хочу вставить это в таблицу улья.
Однако при подключении в качестве внешней таблицы происходит сбой.

 CREATE EXTERNAL TABLE IF NOT EXISTS nn.mytable1 (
        id1     STRING,
        weight  ARRAY <STRING>
    )    
    ROW FORMAT DELIMITED
    FIELDS TERMINATED BY 't'
    STORED AS PARQUET
    location "/user/xxxx/myfile/";
  

Связано ли это с преобразованием массива struct в массив STRING ?

Комментарии:

1. Не могли бы вы также поделиться примерами данных.

2. СОЗДАЙТЕ ВНЕШНЮЮ ТАБЛИЦУ, ЕСЛИ НЕ СУЩЕСТВУЕТ nn.mytable1 (СТРОКА id1, МАССИВ весов <СТРОКА> ), СОХРАНЕННУЮ КАК расположение ПАРКЕТА «/user/xxxx/myfile/»;

3. Я имею в виду удалить «ФОРМАТ СТРОКИ С РАЗДЕЛИТЕЛЯМИ, ПОЛЯ ЗАКАНЧИВАЮТСЯ НА ‘ t’ «, поскольку вы сохраняете таблицу spark parquet как таблицу hive parquet.

4. Как литейный массив Struct -> Массив СТРОК выполняется в УЛЬЕ? это автоматически и сглаживается?