【问题标题】:Dynamics 365 Data Migration using Azure Data Factory使用 Azure 数据工厂的 Dynamics 365 数据迁移
【发布时间】:2021-08-17 10:59:32
【问题描述】:

我想将我的 listmember 实体的数据导出到 Azure SQL 数据库。 我写了一个 fetch XML 查询,它成功了。

<fetch>
<entity name="list">
<attribute name="listname" />
<attribute name="listid" alias="List" />
<link-entity name="listmember" from="listid" to="listid" intersect="true">
<attribute name="entitytype" />
<attribute name="listmemberid" />
<attribute name="entityid" />
</link-entity>
</entity>
</fetch>

我尝试导出的列表有超过 10 万条记录。 但 Fetch XML 只返回前 5K,而 ADF 只插入这 5K。

如何导出所有 ListMember 数据?

【问题讨论】:

  • 您这样做是否有原因,而不是 Dynamics 内置的“导出到数据湖”功能?
  • 是的。我必须将特定列表导出到另一个产品的数据库。其他产品无法从其他任何地方读取数据。
  • 虽然其他产品无法从其他地方读取数据,但数据工厂可以。如果您从 Dynamics 中配置实体以导出到数据湖,则可以使用数据工厂查询数据湖并将所需的数据加载到目标数据库中。
  • 谢谢@iamdave,这是一个解决方案,但不是最佳解决方案。我需要根据您的建议执行两个不同的过程。此外,它会增加我的处理时间。我正在寻找如何在 ADF 中逐页执行 fetch XML?
  • 配置后,导出到数据湖是由 Dynamics 自动管理的连续实时更新,因此数据湖中的数据始终是最新的,您无需重复执行那边的任何东西。您只需执行一个 ADF 管道,将数据从 Data Lake 复制到 SQL Db,而不是从 FetchXML 查询复制到 SQL Db;复杂性基本相同。阅读 Dataverse,了解 Microsoft 推动它的原因以及您可以用它做什么。这是动态数据提取的未来。

标签: dynamics-crm azure-data-factory microsoft-dynamics azure-data-factory-2 dynamics-365


【解决方案1】:

您可以尝试在具有数组类型的管道中使用参数/变量。数组应包含两个值,一个表示取前 5000 行,第二个表示另一组 5000 行。在其之上使用 ForEach 活动来循环它们,并在 Foreach 内部使用带有动态查询的 Copy 活动来相应地获取行并加载到 Sink。

【讨论】:

  • 感谢您的回复。我已经尝试过了,但是当我添加到特定页码以获取 XML 时,它会出错。错误是:不应该在 Fetch XML 查询中指定分页相关的属性
猜你喜欢
  • 1970-01-01
  • 2022-06-11
  • 1970-01-01
  • 2022-06-20
  • 2021-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多