Добавление пользовательских метаданных в схему фрейма данных с использованием формата таблицы iceberg

#apache-spark #apache-spark-sql #apache-spark-mllib #apache-spark-ml #apache-spark-2.0

Вопрос:

Я добавляю пользовательские метаданные в схему фреймов данных в своем приложении PySpark, используя StructField поле метаданных

Это прекрасно работало, когда я записывал файлы паркета непосредственно в s3. Пользовательские метаданные были доступны при чтении этих файлов parquet, как и ожидалось.

Но это не работает с использованием формата таблицы айсберга. Ошибки нет, но df.schema.fields.metadata она всегда пуста.

Есть ли способ решить эту проблему?

Ответ №1:

Решается, убедившись, что ключом всегда является «комментарий»

Например: {‘комментарий’: ‘my_metadata_info_field’}