统一数据交换(UDX)
1 简介
UDX:Unified Data eXchange System统一数据交换系统
UDX是一个分布式的数据对象交换系统。存储在不同平台,数据库,应用系统的数据通过UDX能够以数据对象为单位进行交换。
一个数据对象是一个有意义的业务实体。
UDX系统的组成如下图所示:
交换主体是需要交换数据的系统,如一个数据库。
接口的作用是面向不同的交换主体的适配器,负责UDX和交换主体之间的数据转换,地址标记。接口隔离各个交换实体之间的差异,接口是UDX中与应用相关的部分。
数据提供者接口方式[1]支持:
l 空接口:空接口是直接面向提供者数据源
空接口方式支持全表处理和增量处理2种方式。
全表处理仅适用于数据量少,实时性要求不高的应用。
增量处理依赖数据源的某个字段,如最后更新时间字段,或时序递增的字段(如自增长字段)
空接口不需要对原系统做任何修改,对数据源只读。
空接口支持新增和修改,不支持删除。删除对于业务系统而言通常不是必须的,所以本方案仍是快速,简单的选择。
l 事件队列:事件队列表记录数据变更的摘要信息,如什么数据发生了什么变化。由业务应用系统写入。
事件队列方式能支持所有的实体变更。
要由应用系统写入,应用系统可以采用统一的方式做简单修改,如利用触发器。
数据接收者接口方式支持:
l 空接口:直接写入到目标数据源中
UDX内核是应用无关的分布式数据传输系统,提供在不同网络层上的一致的数据传输界面。
UDX内核具有以下传输特性:
l 可靠:在任何故障(传输网络,UDX故障,接口错误,交换实体故障)的情况下,能够确保数据的送达
l 消息分级:根据内容分可靠性和优先级分级
l 时序控制:对有时序属性的交换活动提供支持
l 高效:并行处理提供系统的交换效率
l 事务支持:提供交换实体的事务特性
l 支持安全属性:数据加密
l 错误处理:数据传输错误时可以根据需要自动挂起
l 校验:验证数据在交换实体之间
l 可管理:UDX内部组件,接口可集中配置
l 可监控:可监控UDX内核,接口及交换实体的实时运行状况
2 功能
UDX可以作为应用系统之间数据层的透明的集成工具。
也可基于UDX构建应用系统,如传单系统。
UDX可适用的场合:
l 应用无关:适应性的扩展通过接口实现
l 适用于企业内部数据/应用整合
l 适用于企业之间数据交换
l 适用不同性质的企业
l 可满足企业对关键数据的应用需求:如主档管理,核心业务应用
例如,UDX能为企业提供以下应用功能:
l 实现主档等共享数据在分布式环境下的统一管理和维护
l 应用于关键业务流程:如流通领域的单据在不同营销节点之间的实时传输
l 在业务和系统整合时,利用UDX集成数据,消除数据的不一致性
l 当业务结构调整和规模扩大时,可以把集中式应用进行分布部署,UDX提供内部数据同步和交换
l 整合所有现有的各种应用系统和数据资源,不论何种平台,形成企业范围的共享的底层数据设施
l 构建企业和商业伙伴的数据交换平台,实现即时通信,协作和线上业务处理
3 特性/规格
3.1 特性
UDX具有以下特性:
1. 支持异构数据源:如支持在不同的数据库之间的数据交换
2. 支持局域网和广域网
3. 数据传输可靠:存储转发,重发,保证数据的正确传输
4. 传输属性控制:可针对不同的数据指定传输要求,如优先级,存储转发,时序控制,自动挂起,自动校验
5. 高效率传输:支持并行处理
6. 支持单播,多播:支持一个数据实体发送给多个数据节点发送
7. 数据传输安全:数据加密,签名可避免数据传输过程被窃取或篡改
8. 支持UDX服务器验证:提供在不安全网络环境下的安全保证
9. 易于配置:可对各个UDX服务器,接口进行远程集中配置。接口支持自定义脚本完成传输前后的扩展逻辑。
10. 可监控:实时运行状态检测,错误报警和提供交互式处理手段
11. 复杂复合数据支持
3.2 规格
指标 |
值 |
版本 |
1.1 |
服务器操作系统 |
Windows |
主通信数据库 |
MySQL |
通信节点数据库 |
MySQL,SQL Server |
最大数据包(字节) |
64M(默认) |
4 技术架构
UDX的技术架构如下图[2]:
4.1 UDX内核
UDX的核心是由多个UDX服务器组成的一个传输网络。
UDX服务器通过传输总线(T-Bus)连接,可组成星型结构或网状结构。
星型结构有一个UDX主控服务器,所有其它UDX服务器都注册连接到主控服务器上,这种结构在容错性,容量方面需要在主控服务器上应用相应的集群。
网状结构时,每个UDX服务器都是对等的,支持最短路径和加权路由选择。
传输总线提供可靠,安全的传输服务。
UDX服务器由以下主要模块组成:
l Hotfox框架:跨平台的应用服务器容器
l SEMQ实例:构成传输总线的实例,提供应用模块API访问
l 通信模块:提供主动/被动连接器,用于组网和通信
l 消息分发:多队列的基于消息的任务调度器
l 插件管理:各种功能模块的管理模块
l 服务器管理:管理UDX服务器的注册和接入
4.2 接口层
接口层分两个子层:接口处理层,接口环境层。
接口处理层负责通过接口环境层对交换实体数据进行I/O处理,处理过程对数据进行转换。
转换后通过地址转换确定在UDX系统的地址,调用UDX的接口进行发送处理。
对于接收的数据则通过接口处理层进入交换实体。
l 地址转换
交换实体交换的数据必须有表示接收者的信息。需要把交换实体内部的目标地址映射到UDX系统中,这个过程就是地址转换,转换后把需要发送的数据标记上UDX的地址。
地址转换方式和算法和交换实体相关。
对于接收的数据,必须反向解析出交换实体的内部地址表示。
l 寻址
寻址是指在UDX内确定接收UDX服务器的地址和路由,寻址的执行实际上在UDX的SEMQ模块内完成。
l 数据转换
根据需要把交换实体的数据转换为UDX内部格式,在出口端则还原出目标交换实体的格式。
l 数据I/O
从交换实体获取数据和提供数据。
l NGX,RAWX
NGX是内部定义的数据交换标准
RAWX表示交换实体间原始数据交换协议,即UDX对数据不做任何处理的情况。
接口环境层中的各种标准和API方式同时支持双向操作,交换实体支持和UDX实现。
UDX实现这些标准和提供API可用于第三方开发。
4.3 管理总线(M-Bus)
M-Bus提供UDX内核和接口的统一的管理和监控界面。
包括:
l 信息表示界面
l 信息传输界面
l 查询,展示:实现配置,监控框架
4.4 交换实体
交换实体可以是任何有数据(信息)交换需求的实体。
广义上讲,交换实体可以包括个人,UDX则延伸到客户端。
实体的多样性由接口层处理和隔离。
[1]如果考虑与应用系统隔离,可以利用数据交换表在UDX和接收数据源之间交换
[2] 该图是UDX的整体技术架构,目前版本未全部实现
统一数据交换(UDX)相关推荐
- 统一数据交换平台(服务总线)的三大特点
服务总线特点比较明显,主要以下3点: 1.消息管理:消息订阅与发布(支持对等.非对等数据交换,跨平台.不同数据库.系统接口规范):可靠性(支持断点续传). 2.流程管理:跨流程(节点),流程的自动监控 ...
- 95-290-382-源码-内存管理-Buffer-Flink运行时之统一的数据交换对象
2.统一的数据交换对象 在Flink的执行引擎中,流动的元素主要有两种:缓冲(Buffer)和事件(Event).Buffer主要针对用户数据交换,而Event则用于一些特殊的控制标识.但在实现时 ...
- XML和JSON两种数据交换格式的比较
目前,在web开发领域,主要的数据交换格式有XML和JSON,对于XML相信每一个web developer都不会感到陌生: 相比之下,JSON可能对于一些新步入开发领域的新手会感到有些陌生,也可能你 ...
- 数据交换平台_从零开始理解大数据架构之数据交换平台
项目简介 Exchangis是一个轻量级的.高扩展性的数据交换平台,支持对结构化及无结构化的异构数据源之间的数据传输,在应用层上具有数据权限管控.节点服务高可用和多租户资源隔离等业务特性,而在数据层上 ...
- 于数据交换格式XML和JSON的比较
目前,在web开发领域,主要的数据传输格式有XML和JSON,对于XML相信每一个web developer都不会感到陌生:相比之下,JSON可能对于一些新步入开发领域的新手会感到有些陌生,也可能你之 ...
- 前置交换机数据交换_我们的数据科学交换所
前置交换机数据交换 The DNC Data Science team builds and manages dozens of models that support a broad range o ...
- 通过xalan实现关系型数据库到XML的数据交换
通过xalan实现关系型数据库到XML的数据交换 内容: 前言 传统的DB-XML数据交换方式 Xalan-java制订的关于SQL的XSLT扩展库详解 驾驭xalan,轻松实现关系型数据库到XML的 ...
- 网络隔离下的几种数据交换技术比较
一.背景 网络的物理隔离是很多网络设计者都不愿意的选择,网络上要承载专用的业务,其安全性一定要得到保障.然而网络的建设就是为了互通的,没有数据的共享,网络的作用也缩水了不少,因此网络隔离与数据交换是天 ...
- 数据交换技术:OPC技术工作原理简述
参考文献 [1] 李海龙.OPC技术在工业设备互联互通中的应用[J].数字通信世界 [2] 郭瑀.OPC技术在数据采集与监视控制系统中的研究与应用[D].西安电子科技大学 [3] 江城.OPC UA信 ...
最新文章
- SpringMVC——通俗易懂讲讲Ajax~
- Apache ZooKeeper - ZK的ACL权限控制( Access Control List )
- openOCD安装 极简教程
- 动手学无人驾驶(5):多传感器数据融合
- 面试官系统精讲Java源码及大厂真题 - 10 Map源码会问哪些面试题
- 95-235-050-源码-task-Flink task之间的数据交换
- Apache Shiro权限绕过漏洞 (CVE-2020-11989) 挖掘分析和复现
- 国军标--Gjb软件需求规格说明书模板
- 网络操作系统与分布式操作系统
- 基于神经网络的房价预测,房价预测 神经网络
- 在路上——黄山、宏村
- Windows Server 2016-Win Ser 2016已删减内容
- C#生成Word文档
- Leetcode算法Java全解答--37. 解数独
- 反编译微信小程序(图文详细傻瓜式)
- 文化苦旅(新版) 读后感
- Win11下载和安装T3标准版11.2
- 利用python实现 CAD STEP格式转化为STL格式
- 国内外安全漏洞公共资源库
- Latex转Word——Pandoc,Windows 版本