【问题标题】:MDS import data queueMDS 导入数据队列
【发布时间】:2018-05-02 18:46:52
【问题描述】:

我正在遵循此指导:https://www.mssqltips.com/sqlservertutorial/3806/sql-server-master-data-services-importing-data/

说明说,在我们将数据加载到临时表后,我们进入 MDS 集成屏幕并选择“START BATCHES”。

这是手动覆盖以开始该过程吗?或者我怎么知道如何自动排队开始?

谢谢!

【问题讨论】:

标签: master-data-services


【解决方案1】:

运行暂存过程的替代方法

使用所需数据加载暂存表后。调用/执行暂存 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 包。

【讨论】:

  • 答案已标记并 +1 以获得如此棒的答案。题。 DOMAIN\USERNAME....是管理的吗?或认证?用户名是要执行的登录名吗?或者只是数据来说明是谁干的?谢谢!
  • 用户名仅供谁使用。不需要管理员权限。但请确保它至少在 MDS 内(当您转到 MDS Web UI 的安全页面时)对正在加载/暂存的实体具有修改访问权限。如果这是在企业内部,那么通常会有一个系统 ID(也可能是 MDS 管理员)在此处使用。再次记住,这个 ID 应该已经在 MDS->Security 中提供了访问权限。
猜你喜欢
  • 2016-12-22
  • 2020-08-19
  • 1970-01-01
  • 2013-03-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-17
相关资源
最近更新 更多