主数据同步与分发实现

article/2025/8/25 10:05:32

随着企业的发展,各项数据的权威性显得尤为重要,针对解决企业的基础数据治理以及传输问题,数通畅联开发出了MDM主数据管理平台。主数据治理方案可以将企业的组织、人员、客户、供应商等高度共享的数据进行统一管理,对需要的业务系统进行同步分发,使数据易采集、易理解、易分析,提高部门与部门之间的沟通效率。

近期工作主要是为某装备制造企业的主数据治理项目做准备,熟悉主数据治理方案中数据的同步分发以及数据初始化全过程,以组织主数据为案例在本地搭建整套组织主数据功能模型、数据同步流程、分发流程以及数据初始化导入流程,为后续主数据调研实施奠定基础。

1名词解释

ESB:AEAI ESB主要作用是作为企业信息系统的“龙骨”来集成各业务系统,实现异构系统的互联互通,用来拉取、调度各个业务系统的数据,一般被称为企业服务总线。ESB主要包含三个模块:服务器ESB Server设计器ESB Designer以及管理控制中心。ESB Server是运行环境,基于定制的Tomcat 扩展开发,管理控制中心则是部署在ESB Server的Java Web应用,是基于开发平台构建的。ESB Designer是基于Eclipse Plugin开发的图形化、拖拽式的设计Web服务、消息流程的构建工具。

MDM:基础数据平台帮助创建并维护整个企业内主数据的单一视图,保证单一视图的准确性、一致性以及完整性,从而简化数据清洗工作、提高数据质量、加快业务系统对接和业务流程再造速度,提高业务响应速度。同时各业务系统复用一套主数据,各系统就像一个大系统的各个业务功能模块,企业IT架构可以实现柔性调整、升级、改造,从而支撑企业的业务战略目标落地

2总体需求 

总体需求可分为两大部分:

1.描述MDM+ESB主数据治理方案的典型业务应用场景,分析企业痛点;

2.以具体的组织数据为例,实现从数据清洗同步到数据分发的全过程。

2.1业务需求

随着各行业信息化政策的不断推进及各个企业决策者对信息化的重视,信息化系统不断增多,孤岛系统数量不断增加,跨系统间业务处理频繁,系统集成趋势明显,各系统之间数据分散、重复,未完全形成业务闭环,数据不一致,难以进行整合,没有形成数据资产,各系统间孤立的数据信息不能为运营决策提供有效支撑。首先需要将企业内部主数据、基础数据进行整合,形成业务闭环,形成企业数据资产

2.2功能需求

根据主数据治理过程中的实际业务场景,将主数据划分为四类,分别为人事类(组织、人员)、客商类(客户、供应商)、生产类(BOM、物料分组、物料)以及知识类(知识产权),上述主数据将会从现有ERP系统、PLM系统、MES系统、OA系统以及线下Excel中获取基本数据信息,对数据进行清洗及分类后,最终同步至MDM主数据平台进行数据管理及分发

以组织主数据为例,模拟HR数据库作为组织的数据源头,PM系统作为数据消费者,通过ESB和HR的组织服务获取组织数据,并调用MDM的接收接口实现数据同步,再在主数据内配置对应的BPM工作流,通过调用PM系统的服务接口实现数据的分发操作,确保各个系统内数据是准确的、一致的,该功能整体实现思路将在下一部分进行详细介绍。

3实现思路

整体实现思路架构如下:

使用HR数据库模拟HR业务系统,PM模拟PM系统,使用ESB创建HR数据获取服务,进行数据初始化,在数据同步流程内进行数据的格式转换、数据清洗、数据映射并调用MDM的OpenAPI接口,将数据同步到MDM内。

通过MDM数据建模、功能建模、流程建模生成对应的主数据模型以及OpenAPI接口,在数据提交通过后调用数据分发接口将数据分发到PM系统内。

3.1命名规则

整体ESB流程及数据表命名规则如下:

3.2准备工作

1.首先直接创建HR、PM数据库模拟两个应用系统,在对应的系统内分别创建两个表,组织表命名为organization:

2.使用ESB创建HR系统数据推送接口(Web Service)以及PM系统的数据接口(Rest Service),方便后续ESB同步、分发集成流程的调用:

3.3数据处理

1.在HR系统organization存在一个类别字段Type(自动分发autoDistribut、主数据分发mdmDistribut),根据类别进行数据分发判断

2.数据清洗在ESB同步集成流程,首先通过主数据接口模板获取HR数据,接下来进行数据清洗,在集成流程内定义清洗规则,例如将HR编码为空的字段清洗掉等,接下来将清洗过后的数据放到DataSet内;

3.在DataSet根据HR系统的Type值进行自动分发和主数据分发判断。

a)如果Type为autoDistribut,调用MDM接收数据接口将数据插入到人员主数据表内,接下来直接触发MDM-PM分发集成流程,在集成流程内调用PM Rest Sevice接收数据服务,集成流程内如果存在数据格式异常,使用Java转换节点直接转换即可;

b)如果Type为mdmDistribut,调用MDM接收数据接口将数据插入到人员主数据表内,MDM人员数据为初始化状态,点击提交按钮,经过审批,审批全部通过后调用PM接收接口分发到PM系统当中。

3.4MDM配置

1.首先通过数据建模创建组织数据模型,配置组织主数据对应的参考数据信息及元数据信息;

2.在流程建模内复制流程初始模板创建组织需要的新增流程、变更流程以及归档流程;

3.数据建模提交后通过功能建模生成组织对应的表结构以及SQL,在功能配置内点击配置表单页面和列表页面信息并绑定流程建模创建好的流程;

4.最终在功能建模部署后,自动生成对应的页面进行功能展示。

4实现过程

在数据准备阶段已经创建对了对应的HR数据获取服务、PM数据接收服务以及对应的数据表,具体实现过程主要包含主数据的创建及流程对接、同步服务开发、分发服务开发以及数据初始化清洗处理,具体实现步骤如下。

4.1数据初始导入

数据初始导入流程,首先从线下Excel中通过Excel读取组件,获取对应数据信息;接下来通过定义数据清洗规则,在Java转换模板内进行数据清洗并进行数据格式的转换;最后用MDM数据插入接口将数据同步到MDM内,具体流程如下:

4.1.1流程说明

数据初始化整体流程设计如下:

首先通过Excel读取组件读取准备好的Excel表格数据,在Java清洗模块定义清洗规则,获取表格内最大DataSet索引值赋值给count;接下来定义index初始值,获取MDM调用接口需要的tokenId,在循环内将数据格式进行处理转换,调用MDM数据接口将数据插入到主数据内;最后根据index索引进行循环判断,如果index>=count则退出循环,反之则继续循环插入。

4.1.2实际配置 

通过Excel读取组件读取准备好的Excel表格数据。

对模板进行解析,解析后选择对应的数据集合,进行名称编码匹配。

在Java转换节点中定义获取tokenID所需要的appCode和appPwd,并获取数据集合的最大索引count值。

解析调用MDM预置获取数据接口将获取tokenID。

在Java转换节点内获取每个dataRow,并将数据进行封装。

调用主数据接口将数据初始化。

4.1.3注意事项

从MDM组织导出的Excel实际上是xml文件,必须将其另存为Excel2010文件,也就是xlsx为后缀的文件。

4.2数据同步集成

数据同步流程在流程内调用HR数据获取服务接口,根据数据状态进行数据查询,将查询到的数据进行XML格式封装,转换成DataSet,通过Java转换节点获取MDM的tokenId,最后调用MDM接口插入数据,具体过程如下。

4.2.1流程说明

数据同步整体流程设计如下:

首先Http调用组件调用HR数据获取服务,数据获取后将数据进行二次封装得到一个XML;

接下来将XML进行DataSet数据转换,定义index索引值为0,通过appCode和appPwd获取tokenID,通过dataSet.size()获取count最大索引值,之后将数据转换成Json,调用MDM数据接口将数据插入到主数据内;最后根据index索引进行循环判断,如果index>=count则退出循环,反之则继续循环插入。

4.2.2实际配置

Http调用组件调用HR数据获取服务获取HR系统当中的数据。

返回值为一个result,使用Java转换节点对数据进行处理。

对数据进行转换,转换成DataSet。

定义索引值和最大值以及获取tokenID,和数据初始导入流程相同,在此不做过多赘述,直接调用MDM数据新增接口将数据插入即可。

4.3数据分发集成

数据分发流程,首先通过Java转换组件获取MDM的tokenId,并根据Http请求传入的编码值进行主数据信息查询,接下来获取PM系统中的接口实现数据同步,具体流程以及实际配置信息如下。

4.3.1流程说明 

数据分发整体流程设计如下:

通过主数据流程建模会得到CODE参数,对tokenId进行处理,通过Java转换组件配置appCode和appPwd,通过Http调用节点对数据进行查询封装,查询出一个dataRow,获取对应的父节点编码,将数据写入。

4.3.2实际配置

通过主数据流程建模会得到CODE参数,此处从MDM获得主数据唯一编码值。

对tokenId进行封装。

通过调用OpenAPI中的接口获取数据。

调用PM系统数据接收接口,直接进行数据插入。

4.4流程建模配置

数据分发需要走BPM流程,在流程内调用上述数据分发集成流程服务接口,并将数据传递到该流程内,本章节主要讲述如何配置元数据字段信息参与流程,具体流程配置以及相关操作如下。

4.4.1流程说明

整体流程如下:

由组织数据录入人员,经过对应人员的审核以及MDM管理的审批,在生效数据处调用数据分发集成流程。

4.4.2实际配置

显示Rest服务调用接口。

在Rest服务地址调用数据分发流程,进行数据拼接。

传入指定code值,code值在功能建模处配置,让其参与流程,定义对应编码DataCode。

在流程建模流程变量处新增业务数据编码。

在调用时选择流程变量中编码即可。

4.4.3注意事项

在上述部分的编码参与流程,流程变量配置定义流程编码后,必须与流程定义列表处流程变量编码一致。

5心得体会

通过本次主数据同步、分发以及数据初始化操作,对主数据治理方案有了一定的了解,为后续主数据治理项目做了铺垫,在实际项目实施与产品开发完善过程中也暴露了自身的诸多问题,现从经验积累、企业运营及产品开发心得层面做出总结。

5.1经验积累

通过近期装备制造业的实施工作,对主数据治理项目有了更进一步的了解,清晰地认识到了主数据治理项目及企业应用集成的重点,主数据治理项目同其它行业一样的实施难点在于对业务的不够了解,只有将企业的整体运营模式吃透,才能对主数据治理及企业应用集成实施更加得心应手

5.2企业运营

近些年来企业IT信息部门的角色在转变,在国内很长的一段时间内IT部门一直作为企业的支持性部门,但是随着企业的不断发展,信息化系统的不断增多,IT部门已经成为了企业内外部沟通、连接客户和合作伙伴的重要通道,是企业日常运营的重要支撑,这就意味着IT信息部门承担着更大的责任。在企业信息化不断发展的过程中,对于信息部门人员的素质要求也随之增高,以便在瞬息万变的数字化市场环境下,迅速给公司及客户创造价值。

5.3产品心得

通过近期对生产制造企业业务部门的调研,在业务方面有了更多的理解和提升,MDM主数据管理平台更多是服务于系统的,为各个业务系统提供基础的数据支撑。而在调研过程中,客户往往还会提出各种各样的需求,由此也清晰地认识到,不论是OA系统还是MDM主数据管理平台,都是实现业务的虚拟化载体,技术的最终价值是帮助客户解决业务问题,只有真正帮助客户解决实际问题,才会源源不断的产生收益

随着各行各业对信息化重视程度的不断加深,企业的各类信息化系统日益增多,孤岛系统数量不断增加,各系统之间数据分散、重复,使得跨系统业务处理更加频繁、不便。在企业未完全形成业务闭环的情况下,数据不一致,难以进行整合,没有形成数据资产,各个系统间孤立的数据信息不能为企业的运营提供有效支撑,因此,对各个系统进行集成势在必行

数通畅联作为以集成产品和解决方案为主打的技术型公司,从研发到技术,产品和解决方案都是从实践来,再到实践中去,产品研发的最终指向就是解决某个特定业务问题。没有业务,技术的存在就没有意义,二者是密不可分的。IT技术支撑业务运转、促进业务创新,业务模式呼唤更灵活的技术解决方案,而深刻理解IT产品技术、深入掌握业务脉搏的复合性人才正是21世纪最稀缺的资源。


http://chatgpt.dhexx.cn/article/pfuV3i6f.shtml

相关文章

数据治理——主数据项目实施

文章目录 一.主数据定义1.数据的层次模型(根据数据的特征、作用以及管理需求的不同)2.主数据涵盖了元数据、引用数据、企业结构数据、业务结构数据 二.传统的软件项目实施三.主数据项目四.主数据项目详细规划第一阶段(体系规划阶段)第二阶段:…

关于数据元、元数据、主数据、交易数据、主题数据、数据资源、大数据、数据湖等数据相关概念理解和总结

注:本文于2019年1月31日发表于微信公众号 谈数据(learning-bigdata),本公众号将于4月21日发布一篇关于《数据治理之元数据管理》的文章,有兴趣可以扫描下方二维码关注。 在和一些客户、同事聊数据的时候,发…

数据元、元数据、主数据、交易数据、主题数据、数据资源、大数据、数据湖等数据相关概念理解和总结

1、数据元 1.1 标准定义 [GB/T 18391.1-2002,定义3.14] ,用一组属性描述定义、标识、表示和允许值的数据单元,数据元由三部分组成:对象、特性、表示。 1.2 我的理解 数据元是组成实体数据的最小单元,或称原…

SAP:物料主数据增强

一、MM01,MM02点击保存后,对输入值校验增强点:BADI_MATERIAL_CHECK 1.SE19创建实施:典型业务加载项,输入增强BADI:BADI_MATERIAL_CHECK 2.点击创建,输入实施名称: 3.查看接口方法:…

MDM主数据平台使用总结

随着科技飞速发展的时代,企业信息化建设会越来越完善,越来越体系化,所用到的应用系统也会越来越多,业务发展中沉淀了大量数据,但是这些数据没有为企业带来直观价值,没有形成企业的数据资产,所以…

主数据管理平台功能模型介绍

科技飞速发展的时代,企业信息化建设会越来越完善,越来越体系化,所上的应用系统也就越来越多,业务发展中沉淀了大量的数据,但是这些数据没有为企业带来直观的价值,没有形成企业的数据资产,所以越…

主数据及编码

之前做数据梳理的时候对主数据进行了一个总结,虽然项目没有很好的开展,不过对我来说也是有很多收获的,这里把之前用到的一些文档总结如下。 术语和定义 主数据 早期以 ERP 为代表的制造业集成应用系统的发展过程中,产生了信息孤岛…

什么是主数据?浅谈主数据的管理与应用

主数据是指满足跨部门业务,跨流程,跨主题,跨系统,跨技术,协同需要的、反映核心业务实体状态属性的组织机构基础信息,主数据具有权威性,全局性,共享性,扩展性等特点。 主数…

什么是主数据

原文地址:https://zhuanlan.zhihu.com/p/168672437 一:什么是主数据 概念: 维基百科 主数据 (Master Data): 在企业中用来定义业务对象的、具有持续性、非交易类的数据。相对于交易类数据,…

终于有人把数据治理的元数据、主数据等概念讲明白了

DAMA国际数据管理协会对数据治理定义:数据治理是对数据资产的管理活动行使权力和控制的活动集合(规划、监控和执行)。 数据治理涵盖了从前端业务系统、后端业务数据库再到业务终端的数据分析,从源头到终端再回到源头,…

matlab拉普拉斯算子边缘提取_(二十四)用二阶微分(拉普拉斯算子)实现图像锐化...

时间为友,记录点滴。 我们已经了解过了梯度(一阶微分)的作用,那么为什么要引入二阶微分呢? 二阶微分的作用是什么? 还是看图说话: 很明显,一阶微分已经可以把轮廓辨识出来,但是,对于变化较缓的地方,一阶微分会给出一个比较长的序列,对应到图像上就是轮廓比较“粗”…

GCN频域视角相关——傅里叶变换、拉普拉斯变换、拉普拉斯算子、拉普拉斯矩阵、卷积

试图通俗地捋清标题名词之间的关系 0. 前置知识0.1 函数的正交0.2 什么是卷积?0.3 散度0.4 欧拉公式 1. 卷积与傅里叶变换1.1 傅里叶变换1.2 时域的卷积等于频域的乘积 2. 拉普拉斯变换3. 拉普拉斯算子4. 拉普拉斯矩阵与其特征向量5. 太长不看总结版extra 注&#x…

拉普拉斯算子的原理和matlab实现代码

一、基本原理 拉普拉斯算子是一种二阶导数算子,是各向同性的微分运算,具有旋转不变性,可以满足不同走向的图像边界的锐化要求。   对一个二维图像函数f(x,y),它的拉普拉斯算子定义为:   x方向上的二阶微分定义为:   y方向上的二阶微分定义为:   所以,对于数…

Robert算子、Sobel算子、拉普拉斯算子

文章目录 1.Robert算子2.Sobel算子3.拉普拉斯算子4.结果 1.Robert算子 // 1. Robert算子cv::Mat gray;cv::Mat dstRoX;cv::Mat dstRoY;cv::Mat dstRoM;cv::Mat kernelRoX (cv::Mat_<float>(2, 2) << 1, 0, 0, -1);cv::Mat kernelRoY (cv::Mat_<float>(2, 2…

了解拉普拉斯算子

了解拉普拉斯算子 1. Laplace算子的定义2. 转换成离散形式 1. Laplace算子的定义 直奔主题&#xff1a;Laplace算子被定义为函数梯度的散度&#xff0c;即&#xff1a; 在图像处理&#xff0c;我们知道经常把Laplace算子作为边缘检测之一&#xff0c;也是工程数…

高斯拉普拉斯算子

高斯拉普拉斯算子&#xff08;Laplacian of Gaussian&#xff0c;LoG&#xff09; 高斯拉普拉斯算子&#xff08;Laplacian of Gaussian&#xff0c;LoG&#xff09;提取图像 f ( x , y ) f(x, y) f(x,y)边缘&#xff1a; 图像平滑去噪&#xff0c;高斯低通滤波器&#xff08…

频域的拉普拉斯算子

频域的拉普拉斯算子 一、定义&#xff1a; 拉普拉斯算子可以使用如下滤波器在频率域实现&#xff1a; H ( u , v ) − 4 ∗ π 2 ( u 2 v 2 ) H(u,v) -4*\pi^2 (u^{2} v^{2}) H(u,v)−4∗π2(u2v2) 或者&#xff0c;关于频率矩阵的中心&#xff0c;使用如下滤波器&#…

matlab拉普拉斯算子锐化,cv-拉普拉斯算子锐化浅析

式(3.7.1)中的二维拉普拉斯数字实现可由这两个分量相加得到&#xff1a; 从而得到拉普拉斯算子 意思同上面的一阶微分算子相同。 这里解释一下微分算子的使用&#xff0c;很简单&#xff0c;如上面这个就是在处理每个像素点的RGB值时&#xff0c;将该像素的RGB三个值乘以4然后减…

拉普拉斯算子Laplace

拉普拉斯算子Laplace 概述二阶差分算子模板应用原理python代码实现opencv代码效果展示 概述 定义&#xff1a;拉普拉斯算子是n维欧几里德空间中的一个二阶微分算子&#xff0c;是用二阶差分来计算图像的边缘。 拉普拉斯算子是一种各向同性微分算子&#xff0c;它具有旋转不变性…

Laplace operator 拉普拉斯算子

一 概要介绍 我们主要关注拉普拉斯算子在图像方面的应用。首先&#xff0c;列出二维拉普拉斯算子的定义&#xff1a; Δ f ∂ 2 f ∂ x 2 ∂ 2 f ∂ y 2 \Delta f \frac{\partial^2f}{\partial x^2} \frac{\partial^2f}{\partial y^2} Δf∂x2∂2f​∂y2∂2f​ 从公式中可…