关于主数据的单源与多源管理,以及集中与联邦等管理,相关概念在主数据项目的规划和应用中都比较重要,是项目各方形成共同语境的重要基础,并且在实践中,这几个概念也常常模糊不清,本文以图解的方式介绍相关的内容。
主数据的单源管理
主数据的单源是指同类主数据只由一个源系统产生,源系统可以是应用系统,也可以是主数据管理(MDM)系统本身。如图1所示,供应商主数据只在SRM系统中产生并传入MDM系统,某类主数据只在应用系统A产生并传入MDM系统;客户、项目主数据则直接在MDM系统录入从而产生,即客户、项目主数据只在MDM系统中产生。
图1:主数据的单源管理
对在MDM系统中直接产生的主数据类型,MDM系统负责唯一性控制,并编制主数据编码,即主数据管理系统的内部赋码;对由外部应用系统产生的主数据类型,在单源情况下,主要由外部应用系统负责唯一性控制,主数据编码可以由外部应用系统在产生主数据时一并编制一次性传给MDM系统,即由外部赋码,也可以先把主数据传给MDM系统,由MDM系统编制主数据编码,然后回传给应用系统,即仍然可以是MDM系统的内部赋码,内外部两种赋码方式可根据业务需求和应用系统的情况选择。
对由外部应用系统产生的主数据,唯一性控制主要由外部应用系统负责,例如供应商管理系统中一般也不允许录入重复的供应商数据,但为最大限度保障主数据的唯一性,MDM系统也可以启用自己的唯一性控制做辅助,进一步保障进入MDM系统的主数据唯一性。
主数据来自于单一来源,肯定是最理想的情况,单源情况下更容易实现主数据的标准化和唯一性管理,但在很多现实中,由于业务和系统的多样化及复杂性,往往很难做到单源,所以单源可以作为主数据应用的基本原则尽量去遵循和实现,但也需要根据实际情况和客观条件以多源的方式管理主数据。
主数据的多源管理
主数据的多源是指同类主数据由多个应用系统产生。如图2所示,在常见的主数据集团级应用场景下(由集团总部统一建设的一套服务于全集团的主数据管理系统,简称统建MDM系统),由于集团多业态,开展不同业务的所属企业有各自专业的应用系统,都会产生供应商主数据,对子企业A和C所产生的主数据,既有各自独立使用的,也有共用的,此时,在各应用系统中供应商数据的唯一性控制由各系统自己负责,但在主数据管理层面,供应商主数据的唯一性控制只能由MDM系统负责,即在主数据同类多源的情况下,主数据管理系统对主数据的唯一性起着决定性的作用。
图2:主数据的多源管理
稍作展开介绍,如图2,对A公司的SRM和C公司的PMS,都在各自的企业中独立承担着各自对供应商完整的管理功能,而一些供应商会同时服务A公司和C公司,那么在A公司和C公司的系统中就会独立存在相同的一些供应商。而在整个集团范围,要求对供应商主数据做唯一性管理(例如,对境内组织机构采用18位的全国组织机构统一社会信用代码,对境外的通常只能使用名称),对某供应商,可能先与A公司合作,先在A公司的SRM系统中创建并传给集团统建MDM系统产生供应商主数据,后续才与C公司合作,后在C公司的PMS创建C公司要用的该供应商数据,那么C公司的PMS向集团统建MDM系统传该供应商数据的时候,基于统建MDM系统的唯一性校验,会向C公司提示该供应商主数据已经存在。由此说明,在主数据的同类多源情况下,在整个组织的范围内唯一性只能由MDM系统负责。
同时,与单源主数据不同,在单源时主数据编码内外部赋码均可,而在多源时,因为主数据的唯一性控制只能由MDM系统负责,同时导致多个外部应用系统各自都无法产生组织内唯一性的主数据编码,所以多源时只能由主数据管理系统赋码。也稍作展开介绍,如上例,因为MDM系统中管理的供应商主数据来自于多个源系统,并且来自多源的数据近乎是随机插入的,供应商1来自于A公司系统并被统建MDM系统编码为001,供应商2来自C公司系统并被统建MDM系统编码为002,003号又来自A公司系统,……,各公司的应用系统不掌握整个集团供应商主数据的唯一性以及编码状况,只有集团统建MDM可以掌握这些内容,所以主数据同类多源时只能由MDM系统赋码。
主数据的集中与联邦管理
如果在组织范围内,只有一个主数据管理系统,由该系统全面负责所有的主数据管理,即集中式管控。在集中管控模式下,往往都存在主数据的多源管理,并且在同时满足更多个性化需求时有更大的管理和技术挑战,主数据管理系统也会有更大的主数据产生、管理、收发等处理的负荷。
如果因多方面原因,在组织范围内存在多套主数据管理系统,例如集团企业中各企业自建的包括MDM系统在内的一系列系统,每套MDM系统在自己所在的范围内实现着完整的主数据管理功能,但在集团统一建设集团层面的信息系统时,必须把全集团相关主数据纳管至集团统建的顶层MDM系统中,此时多套主数据管理系统之间就形成了一种至少两层的联邦型管控模式。
在技术角度上,所谓联邦型机制是指组织内有多个独立的,并且拥有各自完整功能的同类系统,为实现某一体系化的共同功能,按照大家都能遵循的一套规则组成的系统功能集合。相当于各系统本身都是独立的(一个个联邦),彼此在各自的范围内都是一个功能完备的系统,然后大家为了一个共同的目标,按一套互认的规则组织在一起,共同承载一定的功能以实现共同目标。
在联邦型管控模式下,顶层MDM系统按集团层面要求管理着全部主数据,而各子企业自己的MDM系统仍然只负责管理企业自己的主数据,子企业之间通常不做主数据交互,各子企业MDM系统都会与顶层MDM系统交互。能够形成联邦型模式,一定是基于联邦成员互认的一套规则,在此规则下,多个成员组成了联邦,在主数据管理中,所有成员互认的规则即是主数据的唯一性,并且这个唯一性必须通过顶层MDM系统的管理才能实现,换言之,对顶层MDM系统而言,各联邦MDM系统可被认为是顶层MDM系统的多源,所以在集团范围的唯一性只能由顶层MDM负责与实现。
理想的情况下,由顶层MDM系统为同一类的主数据编制在整个组织范围内唯一的主数据编码,各子企业的MDM系统,即联邦MDM系统都直接使用这个唯一性编码与顶层MDM系统交互数据。但如果子企业的MDM系统建设更早,已经存在了自己的一套编码体系,直接替换难度往往很大,此时在子企业的MDM系统中在自己的主数据上可以新增字段,存储顶层MDM系统编制的全组织范围的主数据编码,子企业自己的应用系统日常使用子企业自己的主数据编码,当子企业的应用系统与集团统建系统交互时则使用额外存储的顶层主数据编码。
因为要同时兼顾更多、更复杂的需求,联邦型管控模式相比集中式往往更为复杂,联邦型管控模式也是更为复杂的多源管理,需要更好的规划设计、功能支持和管理。