MS MDS系列之MDS层次结构(Hierarchy)

在Master Data Services中,Hierarchy的作用主要用于:

  • 对同属性成员进行分组
  • 聚合成员用于分析和报告输出

写在开始:显示层次结构(Explicit Hierarchy)即将在新版本中不再应用了。应该是2016。如果还在用之前的版本,并且有升级计划,最好提前准备替代方案。

在实际工作中,用于权限设置是基于第一种作用的一个重要体现。例如给不同部门同事分配不同的权限,那我们就需要在公司级别建立部门整体的业务结构,然后基于Hierarchy进行权限设置。这里有一点需要注意的是:一个层次结构必须是基于同一个模型(Model)的,不可夸模型创建层次结构。

基本介绍:

一个层次结构可以创建在一个或者多个实体(Entity)上,在MDS中有两种不同类别的层次结构:

  • 显示层次结构(Explicit Hierarchy):基于同一个实体(Entity)建立起来的层次结构。可以自由组织结构关系。每个叶子节点都可以作为当前层次的技术点,不限制结构的层次,不限制层次的成员数量。

在创建显示层次结构之前,必须在实体生启用显示结构,并命名。

  • 派生层次结构(Derived Hierarchy):基于同一个模型内部,不同实体之间的层次结构。用于描述实体与其属性之间的关系。这种关系是已经存在于实体之间的,用domain引用的方式进行关联的。

显示层次结构 vs. 派生层次结构:


显示层次结构

(Explicit   Hierarchy


派生层次结构

(Derived   Hierarchy


自定义结构


基于实体间domain引用的属性关系创建


基于一个实体内部成员创建


基于同一个模型内所有实体创建


在一个实体内部,使用合并成员来对内部其他成员进行分组


用一个实体的叶节点成员去归类另一个实体内的叶节点成员


允许任意层级数量


包含一致的层级数量

 

显示层次结构(Explicit Hierarchy):

所有层级结构的成员都是在同一个实体内部的。并且这里有两种类型的显示层次结构:

  • 强制显示层次结构(Mandatory Explicit Hierarchy)

所有的子节点成员都必须包含在层次结构中。默认的情况下是,所有成员都在根节点下。可以自己再重新组织结构。

  • 非强制显示层次结构(Non-Mandatory Explicit Hierarchy)

在此,就不过多介绍显示层次结构了,下面详细介绍派生层次结构。

派生层次结构(Derived Hierarchy):

首先需要介绍域引用(Domain-based),在创建实体的属性时,有三种类型可选:free-form, Domain-based, File。

  • Free-form:由于四种类型可以定义:文本,数字,日期时间,地址链接。都是属于基本的类型,根据实际情况选择。

如果选择Link方式,属性值必须以http:// 或者https://开头,否则的话,就会报错

例如,输入docs.microsoft.com/en-us/,然后发布;

系统在InputStatus这一列提示属性数据类型不正确。(光标放在相应的单元格上,就能看到错误提示的详细信息)

再把属性添加上https://之后,再次发布,成功提交。

  • Domain-based:引用模型内,其他实体的Code值。来达到主数据统一的目的;同时也能防止用户在录入的时候出现误差,可以通过这种方式进行规范化输入和验证。

例如在Subcategory实体中,建立Category属性,引用的是Category实体中的Code属性。

派生层次结构就是基于domain-based的属性创建的。例如我们闯将了Category,Subcategory,Product三个实体如下:

  • Category

  

  • Subcategory

其中Category属性,引用的是Category实体的Code属性,也是Category的主键。

  

  • Product

其中Subcategory属性,引用的是Subcategory实体的Code属性,也是Subcategory的主键。

  

派生层次结构(Derived Hierarchy)创建和示例:

1. MDS主页面,打开系统管理System Administration

  

2. 管理 - > 派生层次结构Derived Hierarchy
  

3. 点击 来创建一个新的派生层次结构。

  

命名成HRC_Product,然后保存。

4. 在编辑界面,需要先从最底层节点开始,也就是最细粒度的层次开始。

  

我们需要在可用层级(Available levels)下依次把Product, Subcategory, Category实体点住,然后依次拖动到Current levels: HRC_Product上。MDS的操作这里确实有个坑,开始的时候尝试了很多方法,原来直接拖动就可以的。

  

系统只支持Code属性的派生层次结构创建。

  

  

  

派生层次结构(Derived Hierarchy)修改和删除

1. 同样也是需要先打开派生层次结构界面

  

2. 点击需要修改的HRC_Product。

按钮的右边,就出现了编辑按钮和删除按钮

如果需要删除的话,直接点击删除就可以。

如果需要编辑的话,点击编辑按钮。

  

3. 编辑页面与创建是同一个。可以重命名层级名字和设置层级是否显示。

  

例如设置Subcategory不显示,效果如图;只是不显示而已,在聚合的时候,还是会按照创建的层次结构进行聚合的。

这里有两点需要注意:

第一点是最顶层和最底层的结构是必须显示的,也就是Category和Product是不允许隐藏的。

第二点是如果需要删除某一层级,必须先从最顶层的层级开始删除,不支持直接删除子层级。例如Subcateogy和Product是不允许直接删除的。

时间: 2024-10-23 10:38:37

MS MDS系列之MDS层次结构(Hierarchy)的相关文章

MS MDS系列之初识MS Master Data Service(微软主数据服务)

背景介绍: 主数据服务(Master Data Services)是微软平台支持的主数据管理(MDM)平台.类似MDS这样的系统,如果后续维护得当,会给企业提供一个强大的中心数据库系统,来防止企业数据变得不同步或不一致:同时也是企业内部管理数据流的可靠方式. 目前一个企业很多时候通过良性循环或者收购来实现业务增长.无论哪种方式,都将增加企业应用程序的数据流的数量和复杂度.如果断开和分离这些系统,将带来的各种问题,如数据不一致.数据数据碎片.数据不准确等等,并且对IT部门来讲,也会面对越来越多的困

老调重弹:JDBC系列 之 <JDBC层次结构和基本构成>

前言 最近在研究Mybatis框架,由于该框架基于JDBC,想要很好地理解和学习Mybatis,必须要对JDBC有较深入的了解.所以便把JDBC 这个东东翻出来,老调重弹,好好总结一番,作为自己的笔记,也是给读者一个参考---本篇博文是我的上篇博文老调重弹:JDBC系列 之 <驱动加载原理全面解析>的续文,主要梳理一下JDBC的层次结构和基本构成.以下是本文的组织内容(用户可以点击上面的目录栏查看): JDBC的层次结构 总体而言,JDBC包含以下几大角色 : Driver.DriverMan

ms sqlserver 系列之如何查看数据链接数

[转]如何查看SQL SERVER数据库当前连接数 1.通过管理工具开始->管理工具->性能(或者是运行里面输入mmc)然后通过添加计数器添加 SQL 的常用统计然后在下面列出的项目里面选择用户连接就可以时时查询到数据库的连接数了.不过此方法的话需要有访问那台计算机的权限,就是要通过 Windows账户登陆进去才可以添加此计数器. 2.通过系统表查询 SQL code SELECT * FROM[Master].[dbo].[SYSPROCESSES] WHERE [DBID] IN ( SE

CephFS提供/添加/删除MDS

部署元数据服务器 每个CephFS文件系统至少需要一个MDS,集群维护者通常会根据需要使用其自动部署工具来启动所需的MDS服务器.推荐使用Rook和ansible(通过ceph-ansible剧本)进行此操作.为了更清晰,我们仍在此处使用systemd命令 MDS的硬件配置 MDS的当前版本是单线程的,大多数MDS活动都需要CPU,包括响应客户机请求.在最强的客户机负载下,MDS使用大约2到3个CPU内核,这是由于其他杂项维护线程协同工作即便如此,仍建议为MDS服务器充分配备具有足够核心的高级C

老调重弹:JDBC系列 之 &lt;驱动加载原理全面解析&gt;

前言 最近在研究Mybatis框架,由于该框架基于JDBC,想要很好地理解和学习Mybatis,必须要对JDBC有较深入的了解.所以便把JDBC 这个东东翻出来,好好总结一番,作为自己的笔记,也是给读者一个参考---以下是本文的组织结构,读者可以点击上面的目录查看: 概述 一般情况下,在应用程序中进行数据库连接,调用JDBC接口,首先要将特定厂商的JDBC驱动实现加载到系统内存中,然后供系统使用.基本结构图如下: 驱动加载入内存的过程 这里所谓的驱动,其实就是实现了java.sql.Driver

老调重弹:JDBC系列之&lt;驱动加载原理全面解析) ----转

  最近在研究Mybatis框架,由于该框架基于JDBC,想要很好地理解和学习Mybatis,必须要对JDBC有较深入的了解.所以便把JDBC 这个东东翻出来,好好总结一番,作为自己的笔记,也是给读者一个参考--- 概述 一般情况下,在应用程序中进行数据库连接,调用JDBC接口,首先要将特定厂商的JDBC驱动实现加载到系统内存中,然后供系统使用.基本结构图如下: 驱动加载入内存的过程 这里所谓的驱动,其实就是实现了java.sql.Driver接口的类.如oracle的驱动类是 oracle.j

Ceph 架构以及原理分析

一.架构 Ceph在一个统一的系统中独特地提供对象,块和文件存储. Ceph高度可靠,易于管理且免费. Ceph的强大功能可以改变您公司的IT基础架构以及管理大量数据的能力. Ceph提供了非凡的可扩展性 - 成千上万的客户端访问数PB到数十亿的数据. Ceph节点利用商用硬件和智能守护进程,Ceph存储集群可容纳大量节点,这些节点相互通信以动态地复制和重新分配数据. 二.RADOS-ceph存储集群 Ceph提供基于RADOS的无限可扩展Ceph存储集群,您可以在RADOS中阅读 - 一个可扩

ceph集群常用命令

结合网络.官网.手动查询等多方渠道,整理ceph维护管理常用命令,并且梳理常规命令在使用过程中的逻辑顺序.另外整理期间发现ceph 集群的命令体系有点乱,详细情况各自体验. 一:ceph集群启动.重启.停止 1:ceph 命令的选项如下: 选项简写描述 --verbose-v详细的日志. --valgrindN/A(只适合开发者和质检人员)用 Valgrind 调试. --allhosts-a在 ceph.conf 里配置的所有主机上执行,否 则它只在本机执行. --restartN/A核心转储

SQL Server 2012笔记分享-2:主要服务器组件

SQL server 2012主要包括如下的五大组件 SQL Server数据库引擎 SQL Server 数据库引擎包括数据库引擎(用于存储.处理和保护数据的核心服务).复制.全文搜索.用于管理关系数据和 XML 数据的工具以及 Data Quality Services (DQS) 服务器. 分析服务 Analysis Services 包括用于创建和管理联机分析处理 (OLAP) 以及数据挖掘应用程序的工具. 报表服务 Reporting Services 包括用于创建.管理和部署表格报表