Что вам нужно, это динамический раздел или раздел на основе значения поля / столбца.
Мы используем блоки данных Azure для обработки таких вещей, и, если необходимо повторять их, запланируйте записную книжку с помощью фабрики данных Azure v2. В записной книжке вы можете создать скрипт pyspark следующим образом (обратите внимание, что этот код является просто шаблоном, который он не тестировал)
extractData = spark.read.parquet("<<<input blob storage path>>>")
extractData = extractData\
.withColumn("transaction_year", year("transaction_date"))\
.withColumn("transaction_month", month("transaction_date"))
extractData.write.mode("overwrite") \
.partitionBy("transaction_year", "transaction_month") \
.parquet("<<<output blob storage path>>>")
Можем ли мы использовать только фабрику данных Azure? Предполагается, что вы используете Azure Data Factory v2 - трудно (не невозможно) создать раздел на основе значения поля по сравнению с приведенным выше.
Сказав, что существует общедоступный предварительный просмотр потока данных сопоставления фабрики данных Azure - под крышками он использует блоки данных Azure для вычислений. Я не тестировал / или играл, может быть, вы могли бы использовать трансформационное действие, например условное разделение . Но опять же использовать Databricks просто.