gpt4 book ai didi

azure - 如何使用数据流事件和派生列转换在 ADF 中进行列映射并将其加载到 SQL Server 表中

转载 作者:行者123 更新时间:2023-12-03 06:26:12 26 4
gpt4 key购买 nike

我在 ftp 服务器中有固定长度的 .DAT 文件,我需要使用数据流事件和派生列转换来使用 ADF 进行列映射,以便能够在加载到 SQL Server 表之前转换数据。

  1. 文件中没有分隔符。
  2. SQL Server 中的目标表具有与下面的映射照片相同的列。
  3. 需要对从固定长度 .DAT 文件创建的数据集的每一行进行列映射,并将其放入目标 SQL Server 表中。

我需要一个解决方案,在没有指定任何分隔符的情况下,我能够将 .DAT 文件转换为数据集并使用派生列转换,然后为每列获取子字符串以类似的方式进行列映射,如下所示:[![列映射][1]][1]

我需要每天更新数据集,因为每天都会将新文件添加到 ftp 服务器。

任何帮助/快照都很感激。谢谢。

最佳答案

数据集本身不支持固定宽度格式。为了处理它,您需要首先解析行。这是一个粗略的轮廓:

  1. 创建一个不带架构和分隔符的数据集。这将在每行中读取为名为“Prop_0”的单列。

enter image description here

  • 使用派生列和子字符串从行中解析列。命名列时,请将它们命名为与目标 SQL 列相同的名称。
  • enter image description here

  • 执行任何其他操作,例如修剪(推荐)或类型转换。

  • 将数据写入您的接收器。

  • 如果数据文件非常大,您可能希望将数据保存到中间位置(例如 Parquet 文件),然后在另一个数据流中执行写入。这应该会使 SQL 写入性能更好,因为它将能够并行化。它还使您有机会在将转换后的数据写入 SQL 之前对其进行验证。

    关于azure - 如何使用数据流事件和派生列转换在 ADF 中进行列映射并将其加载到 SQL Server 表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75558596/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com