Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure数据工厂附加大量与csv文件具有不同架构的文件_Azure_Azure Sql Database_Azure Data Factory_Azure Databricks_Azure Synapse - Fatal编程技术网

Azure数据工厂附加大量与csv文件具有不同架构的文件

Azure数据工厂附加大量与csv文件具有不同架构的文件,azure,azure-sql-database,azure-data-factory,azure-databricks,azure-synapse,Azure,Azure Sql Database,Azure Data Factory,Azure Databricks,Azure Synapse,我们有500个CSV文件上载到Azure存储容器。这些文件使用4种不同的模式,这意味着它们几乎没有不同的列,并且某些列在所有文件中都是通用的 我们使用ADF和模式漂移来映射sink和source中的列,并能够编写文件 但这不起作用,它只对每个文件处理的第一个文件使用模式,这导致了数据问题。请就这个问题提出建议 我们运行了三个场景的管道,但问题没有得到解决。在所有三种情况下都会出现如下所述的相同问题: 1.映射不正确,即类型的描述和PayClass映射到WBSname和活动名称 2.如果其中一个文

我们有500个CSV文件上载到Azure存储容器。这些文件使用4种不同的模式,这意味着它们几乎没有不同的列,并且某些列在所有文件中都是通用的

我们使用ADF和模式漂移来映射sink和source中的列,并能够编写文件

但这不起作用,它只对每个文件处理的第一个文件使用模式,这导致了数据问题。请就这个问题提出建议

我们运行了三个场景的管道,但问题没有得到解决。在所有三种情况下都会出现如下所述的相同问题:

1.映射不正确,即类型的描述和PayClass映射到WBSname和活动名称 2.如果其中一个文件中少了一列(缺少列),也会干扰映射,即一个文件没有将组错误映射到其他列的资源类型

案例1 源和汇没有模式漂移 在源位置创建并上载所有列的空虚拟文件 具有列模式的派生表

案例2: 源和汇的模式漂移 在源位置创建并上载所有列的虚拟文件 具有列模式的派生表

案例3:源端模式漂移/接收端无模式漂移 在源位置创建并上载所有列的虚拟文件
具有列模式的派生表这是因为在单源转换读取的文件中有不同的模式

模式漂移将自动处理源模式在管道的不同调用中发生更改的情况

在您的案例中,解决这个问题的方法是有4个源:每个CSV模式类型1个源。您始终可以将结果合并到一个流中,并在最后将它们合并在一起

如果在此场景中对4种不同的源类型使用模式漂移,那么数据流将自动处理这样的情况,即每次执行此数据流的管道时,会发现更多列,并且列会发生更改


顺便说一句,您要求的这个schemaMerge功能今天可以在ADF的数据流中使用拼花地板源。我们正在将本机schemaMerge添加到CSV源中。在此之前,您需要使用类似于我上面描述的方法。

这是因为在单源转换读取的文件中有不同的模式

模式漂移将自动处理源模式在管道的不同调用中发生更改的情况

在您的案例中,解决这个问题的方法是有4个源:每个CSV模式类型1个源。您始终可以将结果合并到一个流中,并在最后将它们合并在一起

如果在此场景中对4种不同的源类型使用模式漂移,那么数据流将自动处理这样的情况,即每次执行此数据流的管道时,会发现更多列,并且列会发生更改

顺便说一句,您要求的这个schemaMerge功能今天可以在ADF的数据流中使用拼花地板源。我们正在将本机schemaMerge添加到CSV源中。在此之前,您需要使用类似于我上面描述的方法