输出许多 CSV 文件,并在不影响性能的情况下合并为一个文件,通过 Azure 数据工厂使用映射数据流转换数据

Output Many CSV files, and Combing into one without performance impact with Transform data using mapping data flows via Azure Data Factory

我按照下面的例子,一切顺利。

https://docs.microsoft.com/en-gb/azure/data-factory/tutorial-data-flow

下面是关于输出文件和行的信息:

If you followed this tutorial correctly, you should have written 83 rows and 2 columns into your sink folder.

下面是我的示例的结果,它是正确的,具有相同的行数和列数。

下面是输出。请注意,文件总数是 77 个,不是 83 个,也不是 1 个。

问题::有这么多csv文件(77个项目)是否正确?

问题::如何在不减慢进程的情况下将所有文件合并为一个文件?

我可以按照下面的 link 创建一个文件,它会警告进程变慢。

How to remove extra files when sinking CSV files to Azure Data Lake Gen2 with Azure Data Factory data flow?

该过程生成的文件数量取决于多种因素。如果您在接收器的优化选项卡中设置了默认分区,这将告诉 ADF 使用 Spark 的当前分区模式,该模式将基于工作节点上可用的核心数。因此,文件的数量将根据您的数据在工作人员之间的分布方式而有所不同。您可以在接收器的优化选项卡中手动设置分区数。或者,如果您希望命名单个输出文件,您可以这样做,但它会导致 Spark 合并到单个分区,这就是您看到该警告的原因。您可能会发现写入该文件需要更长的时间,因为 Spark 必须合并现有分区。但这就是大数据分布式处理集群的本质。