描述:
软件为分布式结构组成,包括发布,加工,编排,订阅等多个模块组成,平台内部实现以流转为基础相关的所有组件功能。
1.0 功能列表
- 企业数据库之间数据交换服务,以及互联网远程数据分发模型
企业数据交换模型
互联网数据分发模型
- 为企业提供对外数据服务平台,在服务端进行数据发布,加工,编排等,然后将编排后的数据打成标签,协助将数据为其他数据需求企业、部门等提供基础数据服务,将数据实时传输到不同的目标端(数据库,消息队列,大数据平台)等环境中。
2.0 功能列表
支持跨IDC数据交换服务
输入:
- 支持多种数据发布类型(输入)【数据库、文件、API接口、TCP\IP等服务模式】
- 数据库:支持ORACLE/MYSQL/POSTGRESQL/SQLSERVER等数据库实时、定时数据输入工作
- 文件:支持CSV/TXT等文件缓存目录输入,界面TXT/CSV/SQL等文件导入模式
- API:支持RESTAPI等远程api导入模式
- TCP/IP:提供客户端驱动,支持TCP/IP客户端驱动,将数据输送到ZCBUS平台中
加工
说明:下面数据处理过程,可以细化到每条记录,每个操作【INSERT/UPDATE/DELETE/DDL】等多种操作模型- 数据过滤
- 固定条件过滤
- SQL条件过滤
- 函数过滤、程序过滤等
- 数据处理
- 加列(固定列,SQL获取返回值,程序返回值)
- 修改列(固定列,SQL获取返回值,程序返回值)
- 删除列
- 事件处理
- 针对数据处理的某些操作,可以支持SQL触发,过程触发,触发调用程序,SHELL等外部对象
- 多表关联
注:根据数据流,触发某些SQL查询,将触发多个表的条件实现多表关联,将关联的结果集输定义为需要对外提供的数据输入,主要针对增删改操作。- (非缓存数据模式)
1、插入会触发关联sql中涉及到的多个表
2、更新操作会触发SQL中设计的多个表【可能在更新某些状态之后,造成BEFORE值中存在部分冗余数据】
3、删除操作会根据实际情况,直接下发。 - (缓存数据模式)
即将数据同步到一个临时环境中,增删改操作,均会在临时环境中关联查询,生成新的结果集,将结果集进行数据下发,这样能够严格保证增删改数据完全读取到相应的数据。
- (非缓存数据模式)
- 数据过滤
输出
说明:即通过本地、远程方式,将数据输送到多个目标端- 数据库:支持ORACLE/MYSQL/POSTGRESQL/SQLSERVER等数据库组件(数据库列表请参考详细手册)
- 支持按列应用
- 支持主键表,非主键表
- 增加数据来源字段,源端操作时间,最后操作类型,数据入库时间等字段
- 支持数据库模式批量加载,SQL绑定,以及SQL语句等多种入库模式
- 消息队列:支持ROCKETMQ/RABBITMQ/KAFKA等消息队列
- kafka 支持KERBEROS/SASL/非认证等多种模式
- 支持SQL语句输入到消息队列
- 支持JSON输入到消息队列【JSON可以多种组合模式】
- 支持Debezium格式输入,兼容CDC FLINK等模式
- API:
- 支持RESTAPI输出
- 为企业提供驱动服务,根据实际需求,客户自研业务逻辑,
- 文件:
- 支持CSV\TXT\JSON\SQL等文件输出
- 支持输出模型:
- 本地输出
- 多数据中心输出
- 互联网远程客户端下载数据转载输出
- 数据库:支持ORACLE/MYSQL/POSTGRESQL/SQLSERVER等数据库组件(数据库列表请参考详细手册)
跨IDC数据交换服务原理介绍
- A数据中心:A中心连接多个数据库,为A中心提供数据交换服务,并且指定需要共享表建立策略,赋权给指定目标中心客户端
- B数据中心:根据A中心创建用户,自动消费数据同步到B中心。
- 当A中心数据进行实时发布,全量发布的时候,数据将自动同步到B中心,形成B中心表数据流,通过B中心建立策略,赋权即可将表输送到B中心数据库中,B中心可以讲一个表实现多次入多个数据库。
软件优化
- 容器化部署
- 模块化封装
- 不同模型依赖产品模块对接即可
- 分布式数据库兼容
- API输入,输出模式兼容
文档更新时间: 2022-06-21 16:01 作者:阿力