Разметка Apache Hudi в произвольном формате

В настоящее время я делаю POC на Apache Hudi с искрой (scala).

У меня возникла проблема при сохранении фрейма данных с разделением.

Худи сохраняет фрейм данных с path/valueOfPartitionCol1/valueOfPartitionCol2....используя свойство PARTITIONPATH_FIELD_OPT_KEY.

Но мое требование path/COL1=value/COL2=value.... Подобно тому, как искра разделяет данные с помощью partitionBy().

Любой, кто пробовал настраивать разметку с помощью Hudi может мне помочь?

2 ответа

Может это помочь? установите config HIVE_STYLE_PARTITIONING_OPT_KEY=true, как показано ниже:

  batchDF.write.format("org.apache.hudi")

          .option(HIVE_STYLE_PARTITIONING_OPT_KEY, true)

          .mode(SaveMode.Append)
          .save(bathPath)

Вы можете создать собственную реализацию KeyGenerator класс, Реализация override def getKey(record: GenericRecord): HoodieKeyкласс. В этом методе вы получаете экземплярGenericRecord и вернуть класс HoodieKey() который позволяет вам определить свою собственную логику для создания раздела пути

Другие вопросы по тегам