【发布时间】:2018-05-02 18:46:52
【问题描述】:
我正在遵循此指导:https://www.mssqltips.com/sqlservertutorial/3806/sql-server-master-data-services-importing-data/
说明说,在我们将数据加载到临时表后,我们进入 MDS 集成屏幕并选择“START BATCHES”。
这是手动覆盖以开始该过程吗?或者我怎么知道如何自动排队开始?
谢谢!
【问题讨论】:
我正在遵循此指导:https://www.mssqltips.com/sqlservertutorial/3806/sql-server-master-data-services-importing-data/
说明说,在我们将数据加载到临时表后,我们进入 MDS 集成屏幕并选择“START BATCHES”。
这是手动覆盖以开始该过程吗?或者我怎么知道如何自动排队开始?
谢谢!
【问题讨论】:
使用所需数据加载暂存表后。调用/执行暂存 UDP。
基本上,暂存 UDP 是 MDS 数据库(由 MDS 自动创建)中遵循命名约定的每个实体的不同存储过程:
stg.udp_<EntityName>_Leaf
您必须为某些参数提供值。这是如何调用这些的示例代码。
USE [MDS_DATABASE_NAME]
GO
EXEC [stg].[udp_entityname_Leaf]
@VersionName = N'VERSION_1',
@LogFlag = 1,
@BatchTag = N'batch1'
@UserName=N’domain\user’
GO
更多详情请看:
Staging Stored Procedure (Master Data Services).
请记住,@BatchTag 值必须与您最初在暂存表中填充的值相匹配。
执行此操作的最简单方法是在 SQL 代理中安排一个作业,该作业将执行类似于上述代码的操作来调用暂存 UDP。 请注意,您需要创造性地弄清楚 Job 如何知道正确的 Batch Tag。
也就是说,很多开发人员只是创建了一个 SSIS 包,它在暂存表中加载数据(作为第 1 步),然后执行暂存 UDP(作为最后一步)。 然后通过计划的 SQL 代理作业执行此 SSIS 包。
【讨论】: