【问题标题】:Azure Data Factory Merge to files before inserting in to DBAzure 数据工厂在插入数据库之前合并到文件
【发布时间】:2021-12-03 21:14:03
【问题描述】:

我们有两个文件,分别是 ^ 分隔的文件和一个逗号分隔的 txt 文件,它们存储在 Blob 存储中,如下所示

File1 字段是这样的

ItemId^Name^c1^type^count^code^Avail^status^Ready

File2 字段是这样的

ItemId,Num,c2

这两个文件中的第一列是关键,基于它我需要使用 Azure 数据工厂将它们插入到 Azure DB 上的一个表中。谁能建议如何在 ADF 中做到这一点。我们是否应该在插入数据库之前将这两个文件合并为一个文件。

AzureDB 列是

ItemId Name c1 type count code Avail status Ready Num c2

应该是这样的

Item1 ABC(S) 1234 Toy 10 N N/A POOL N/A 19 EM

Item2 DEF(S) 5678 玩具 7 X N/A POOL N/A 6 MP

我指的是Merging two or more files from a storage account based on a column using Azure Data Factory,但不明白我们是否可以在插入数据库之前合并这两个文件

【问题讨论】:

    标签: azure azure-blob-storage azure-data-factory azure-data-factory-2 azure-data-factory-pipeline


    【解决方案1】:

    您可以使用这 2 个文件创建 2 个数据集,使用连接活动将它们连接在一起,并简单地沉入数据流中的 SQL 表。

    这里使用了Inner join,你可以适应使用你喜欢的join类型。

    可以看到join的预览图成功合并了2个文件/数据源。

    根据需要调整 Sink 中的字段映射。

    这是我使用的箭头分隔的.csv:

    ItemId^Name^c1^type^count^code^Avail^status^Ready
    Item1^ABC(S)^1234^Toy^10^N^N/A^POOL^N/A
    Item2^DEF(S)^5678^toy^7^X^N/A^POOL^N/A
    

    这是我使用的逗号分隔的.csv:

    ItemId,Num,c2
    Item1,19,EM
    Item2,6,MP
    

    数据库中的结果:

    【讨论】:

    • 嗨@ray,我们可以在数据流中使用联接吗?
    • 当然可以。由于 OP 没有给出他的合并的定义,我不确定加入是否对他有用。
    • @ray 对不起,我的问题不清楚,我已经更新了我的问题。数据集之间唯一共同的列是 ItemID,基于我需要合并它们。然后应该使用在这里加入.. 这是我的第一个 ADF 项目,非常感谢任何帮助
    • @AllAboutBI 你能帮我在这里完成加入吗
    • 请查看此视频来自 mark (msft) youtu.be/zukwayEXRtg
    猜你喜欢
    • 1970-01-01
    • 2020-08-21
    • 2016-10-02
    • 1970-01-01
    • 2021-04-23
    • 2019-05-18
    • 2022-06-10
    • 2021-12-24
    • 1970-01-01
    相关资源
    最近更新 更多