gpt4 book ai didi

java - 有没有办法对 Azure 数据工厂中的数据进行分区以填充文件,直到达到最大行值?

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

我正在尝试将数据分区为组,将数据写入 csv 文件,优先考虑每个文件的最大行数,而不是将行均匀分布在多个文件中。

例如,如果我有 5001 条记录,每个文件的最大行大小为 1000,则我需要 6 个分区,其中 5 个分区有 1000 个文件,第 6 个文件有 1 条记录。

这在 Azure 中可能吗?我尝试在 Java 代码中手动执行此操作,但从 azure 手动分区查询数据似乎是不确定的,并且会在文件之间出现重复项。

最佳答案

是的,您可以轻松地将 csv 文件分成多个文件,并在最后一个文件中指定最大行数和剩余行数。

请按照以下步骤操作:

  1. 使用 Azure 门户创建 Azure 数据工厂服务。 Follow link .

  2. 您还需要创建存储帐户。 Follow link 。创建两个容器,输入输出。在输入容器中,上传您将在数据工厂中分区的 CSV 文件。

  3. 现在转到数据工厂工作室。单击左侧的管理符号,然后单击+新建创建链接服务以连接到您的 blob 容器。

enter image description here x

  • 选择Azure Blob 存储选项,然后单击继续

  • 现在填写详细信息,如下所示。为该链接服务提供名称选择订阅选择您的 csv 可用的存储帐户测试连接并点击创建。当我们创建源数据集时将使用它。

  • enter image description here

  • 类似地,创建另一个具有相同详细信息的链接服务,该服务将在接收器数据集中使用。

  • 现在,转到铅笔符号(左侧)。单击数据集,然后从下拉列表中选择新数据集

  • 选择Azure Blob 存储 => DemilitedText

  • 提供名称选择您在第 5 步中创建的链接服务。选择您的输入 csv 文件,然后单击“确定”。 enter image description here

  • 重复步骤 7 到 9。为输出容器创建另一个名称不同的数据集,分区后将在其中保存组文件。 只需在文件路径中选择输出容器即可。

  • 按照以下步骤创建您的管道。 铅笔符号 -> 管道 -> 新建管道。搜索复制数据 Activity 并在空白处拖放。为您的管道指定任意名称。在选项卡中,选择您在步骤 9 中创建的源数据集。该数据集将被视为复制 Activity 的输入。 enter image description here

  • 接收器选项卡中,选择您在步骤 10 中创建的接收器数据集。指定文件扩展名 .csv 和 < strong>每个文件的最大行数 1000(或根据您的要求指定数量)。该数据集将被视为存储分区文件的接收器。单击“发布”以保存您的更改。等待更改发布。

  • 然后作为最后一步,点击添加触发器并选择立即触发选项来运行管道。 enter image description here

    您可以检查存储帐户输出容器中的所有分区文件。您可以观察到,除了最后一个文件之外的所有文件都将具有上面提到的最大行数。最后一个文件将只有剩余的行。 enter image description here

    关于java - 有没有办法对 Azure 数据工厂中的数据进行分区以填充文件,直到达到最大行值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68638999/

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