3

我可以使用 Master Data Services 通过 Excel 插件导入数据吗?主要是度量(数字/值)

精简版:

寻找将数据舒适地输入到 SQl-Server 表并为用户提供即时反馈的最佳方式。

设置: 我们有一个基于 SQL Server 2012 的数据仓库 (dwh)。一切都使用 MS BI 套件中的工具(SSIS、SSAS、SSRS 等)进行设置。部门通过 Excel 访问 BI-Cube。如果可能,他们更喜欢在 Excel 中完成所有工作。
DWH 的大多数来源是数据库,但一个用例将 Excel 文件作为来源。

以 Excel 文件为源的用例

原样:

我们在网络文件夹中放置了几个 Excel 文件。每个 Excel 文件由不同的用户编辑。这些文件由每天循环通过文件的 SSIS 进程摄取。

The contents of the Excel-files is like this (fake data):

Header: Category | Product | Type | ... | Month     | abc_costs | xyz_costs | abc_budget | xyz_budget | ...
Data:       A        Soup    Beta         2017-06       16656      89233        4567          34333

数据流:

   source.Excel -> 1.->  dwh.Stage -> 2.-> dwh.intermediateLayer -> 3.-> dwh.FactTable
  • 步骤 1 到 3 是 SSIS ETL 包。
  • 第 3 步从维度中查找代理键,并根据 Excel 提供的“代码”将它们保存为事实表中的外键(例如,代码可以是类别的“A”)。

问题:

  • 第 1 步“摄取 Excel 文件”非常容易出错。
  • 用户可以很容易地输入错误的代码和数字可能是错误的格式。
  • 有关 excel 源的错误消息通常会误导和在 SSIS 中调试 Excel 源变得很痛苦。
  • 有时,用户将 Excel 文件保持打开状态,并且临时锁定文件会阻止整个摄取过程。

要求

  • 我想避免在摄取 Excel 文件时出现的问题。
  • 应该可以验证数据输入并向用户提供快速反馈
  • 作为 BI 开发人员,我们将尽量避免首先涉及 Web 开发的解决方案。
  • 用户更喜欢类似 Excel 的输入。

主意:

由于 Master Data Services 附带一个允许数据操作的 Excel 插件,我们认为它也可用于此数据输入方案。这将给我们同时测试 MDS 的机会。

但我不确定这个用例是否适合 Master-Data-Services。

进行研究时,我找不到任何 MDS 示例来显示如何通过 Excel 插件输入度量值[示例是关于建模和管理实体的]。

  1. 谁能澄清这个用例是否适合 MDS?
  2. 如果它不适合 MDS ?什么是适合这个 BI 生态系统的好选择?(最好基于 Excel)。[Lightswitch、Infopath、Powerapps 或者如果没有其他选项 Webdevelopment -> 我对这些选项有点困惑]
4

2 回答 2

2

请记住,MDS 中的实体并不代表数据库中的表。这意味着当您在 MDS 中加载数据时,会有一些基础表填充了数据和元数据以跟踪更改。

使用 Excel 插件将数据导入 MDS,然后将数据暴露给另一个系统可以工作,考虑以下几点:

  • 数据量。excel 插件批量处理大量数据。所以这个过程可能会变得乏味。
  • 模型设置。您需要使用定义良好的实体和属性正确配置模型。MDS 架构是“伪数据仓库”,其中实体可以被视为“事实”,而基于域的属性可以被视为“维度”。这是对系统的过度简化,但是一旦定义了模型,您就会明白我的意思。
  • 一个不错的功能是订阅视图。一旦您在 MDS 中获得数据,您就可以使用订阅视图公开它,该视图将实体与基于域的属性组合在一个视图中。

考虑到您的要求:

  • 我想避免在摄取 Excel 文件时出现的问题。

    这是可能的,请记住 Excel 插件有自己的规则。因此 Excel 有效地成为了 MDS 的“输入表单”,数据被输入并提交。用户需要使用凭证管理器等设置到 MDS 的连接。

  • 应该可以验证数据输入并向用户提供快速反馈

    这可以通过基于域的属性和业务规则轻松处理

  • 作为 BI 开发人员,我们将尽量避免首先涉及 Web 开发的解决方案。用户更喜欢类似 Excel 的输入。

    请记住,MDS 插件决定了 excel 工作表的外观和感觉。没有定制是可能的。因此,您的实体定义需要正确,以促进良好的用户体验。

于 2017-07-19T06:55:22.887 回答
2

我参与了一个 DWH 项目,其中一个 MDS 实例被用作多个维度的单一事实来源。大多数数据都是只读的(州、国家、货币等的列表),并通过 Excel 插件进行维护。还有一些更不稳定的东西是通过 MDS 导入程序导入的。

为了向仓库公开 MDS 数据,创建了直接指向 MDS 数据库的视图。我什至编写了一个 SQL 脚本来刷新这些视图,具体取决于存储在仓库中的 MDS 元数据和设置。不幸的是,我不再拥有它了,但那里的一切都很透明。

一切都非常有活力。无法回忆涉及这些 MDS 视图的查询的任何问题。

于 2017-07-17T14:06:57.017 回答