主数据系统是否对于企业是必需的?
很多制造企业都建设的主数据系统,我所有的企业也建设了主数据系统,而且已经上线运行了三年的时间,在这三年的时间里面,也在不停的进行大大小小的迭代,进行了很多的小补丁升级,只是忽然有一天,一位到公司来参观的同事,突然问了我一个问题,是否企业都需要建设主数据管理系统?我当时突然一懵,作为主数据系统的建设人员和运维人员,这么多年来,我还没有太仔细的想过此问题,随后我就陷入了沉思中,这几天有时间,把这个问题仔细的想了下,把这块进行了下总结,发出来,也算是自己的一点小经验的积累,希望能给各位相关同行特别是现在正要开始建设或者准备建设主数据系统的同行们一点小小的建议。
我们要搞清楚,主数据系统到底解决的是企业中的什么问题?主数据的概念就不必说了,企业内部的公共数据,具有唯一性、稳定性、共享性三个主要的特征,所以我们上主数据管理系统是要把企业的这类主要数据管理起来,这个“管”字特别重要,做到什么程度才能算真正的把数据管好了呢,特别借助于主数据管理系统我们能管到什么程度呢?就我个人来讲,借助于主数据管理系统我们需要解决企业的三个问题:
1)企业物料的唯一性问题。即解决一物多码,一码多物,这个是最基本的,很多企业同一个物料,在设计端有一个编码,在生产端有一个编码,在销售端又有一个编码,这种问题必须解决。要把物料编码等关键属性放在主数据进行管理,所谓的“管理”是什么意思?一般来说,管理就是物料编码的生成放在主数据系统,当源头系统需要物料编码时将基本信息发送给主数据,由主数据自动生成物料 编码,注意一定是自动生成,切不可人工分配。一般来说,解决企业的物料编码的唯一性问题来说这个是最基本的也是最有必要的。可能有人来问了,我企业上了ESB,上游设计端系统的的物料编码通过ESB分发给下游 ,下游都从ESB拿到编码,这样也可以做到编码的唯一性,这样做不行吗?这样做从解决企业物料编码唯一性上来说是完全没有问题的,但是要考虑技术实现的便捷性和后续运维的成本,以及源头系统的编码性能问题。在这些方面主数据系统都是占据优势的。
2)快速实现接口,进行接口集成。对于主数据来说,依靠数据模型可以很快实现接口,其成本很低,而对于ESB或者系统间直连,开发成本的较高。这一点,相信很多从事过主数据管理系统的同行都深有体会,国内大多数的主数据系统在接口开发这块,其特别的方便快捷,基本上只要把模型配置好,几分钟就可以设计出一个WEBSERVICE或者RESTFULL API的接口。
3)主数据全属性的管控。很从主数据的核心属性是来自多个系统的,不是来自于一个系统,但如果下游某个系统需要主数据的全属性,需要和多个系统进行集成,但如果有主数据系统,则可以直接和主数据系统集成就可以。而且从后期数据质量管控的维度来看,企业是需要一个主数据系统来查看企业主数据全属性的管控的。
综上所述,如果企业在源头系统中已经把企业的主数据管控的很好了,可以不上主数据管理系统,在源头系统管好就行了,但实际情况却不是这样,特别是对于中国,企业是先上了很多的系统,再上的ESB进行系统集成,这样造成的问题是,很难发现企业的数据质量问题,就需要上主数据系统去监控和管理主数据,实现主数据的清洁,统一分发。从这个意义上讲,特别对于中国企业,还是需要上主数据系统的。而且最好企业的ESB和主数据一块上。