【问题标题】:Can I use Master Data Services to import data via Excel add-in ? Mainly Measures! (Numbers/Values)我可以使用 Master Data Services 通过 Excel 插件导入数据吗?主要是措施! (数字/值)
【发布时间】:2017-12-22 01:20:32
【问题描述】:

我可以使用 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 开发人员,我们将尽量避免涉及到的解决方案 首先是网络开发。
  • 用户更喜欢类似 Excel 的输入。

想法:

由于 Master Data Services 带有一个允许数据操作的 Excel 插件 我们认为这也可以用于这个数据输入场景。 这将使我们有机会同时测试 MDS。

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

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

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

【问题讨论】:

  • 因此,使用 MDS Excel 插件作为任何 sql server 表的前端将无法完全按照您想要的方式工作。 MDS 将根据您的 MDS 数据模型的体系结构创建一个充满表的数据库,您可以从这些表中更新您的数据仓库。 MDS 有很多您不会使用的功能,但您在编写这些传输时需要了解和处理。让它近乎实时地工作可能也需要一些努力。就个人而言,我认为您将用 Excel 头痛换取 MDS 头痛,但您所描述的至少是可以想象的。

标签: sql-server excel ssis master-data-services powerapps


【解决方案1】:

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

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

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

考虑您的要求:

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

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

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

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

  • 作为 BI 开发人员,我们将尽量避免出现以下问题的解决方案 首先将涉及网络开发。类似 Excel 的输入是 深受用户喜爱。

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

【讨论】:

    【解决方案2】:

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

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

    一切都充满活力。不记得涉及这些 MDS 视图的查询有任何问题。

    【讨论】:

      猜你喜欢
      • 2015-04-27
      • 2017-02-13
      • 2022-12-10
      • 1970-01-01
      • 1970-01-01
      • 2017-06-13
      • 1970-01-01
      • 1970-01-01
      • 2011-11-01
      相关资源
      最近更新 更多