基本概念
定义
在不改造程序的情况进行发布与订阅
组成
发布适配器
接入方式
基于日志的CDC
数据库类型
Oracle
Oracle9i-11G:CDC
Oracle 11G流管
MsServer(SQLServer)
CDC
MySql(MarriDB)
BinLog
部署模式
一个适配器对应一个数据库
基于视图模式
适配数据库类型
Oracle
MySQL(MarriDB、TiDB)
PG(PostgreSQL)
DB2
支撑库(DataClient类型)
Oracle
部署模式
一个适配器对应多个同种类型或多个数据库
前置机模式
支撑库(DataClient类型)
Oracle
MySql
订阅适配器
发布适配器
参考文档
31-信息集成平台之适配端用户操作手册
流程
配置流程
1、发布者及数据集配置(中心端)
2、参数配置发布者编码(DATASOURCE)
3、发布标准更新
4、发布用户配置
5、发布表配置
6、发布数据集与发布表的对应(发布配置)
7、数据元与表字段映射(发布接口配置)
8、发布启停
执行流程
1、发布数据捕获
2、形成分页上传数据
3、分页上传
发布适配器功能
发布配置
过滤条件
删除上传
是:删除上传
作用:作数据移库处理时不进行数据上传
单位:天
业务时间字段
删除上传时限
否:删除不上传
自定义条件
过滤条件配置
SQL语句中的查询条件
数据行变更类型(Oracle为例)
OPERATION$
新增:I
更新:UN
删除:D
数据集与表的对应关系
一对一
多对一
配置过滤条件
一对多
行对应
列对应
激活顺序
一个数据集对应多个表
多个数据表上传数据有时序关系需要配置
主子集
子集的顺序小于主集
发布接口配置
常量
配置一个固定的字符串
普通例
数据集中数据元与表中的字段简单映射
代码表
分类
私有
值域值转换
值域名称
公有
值域值转换
值域名称转换
公有
公共代码匹配
配置源库查询语句
注意:查询语句跨用户或跨数据库查询代码
查询权限问题
私有配置
订阅视窗列信息
代码标志配置成是
代码表取数语句配置
注意:查询语句跨用户或跨数据库查询代码
查询权限问题
计算公式
类型
数据库内置函数
自定义函数
加减剩除计算逻辑
使用非dataclient用户的函数
权限分配
函数前要加上用户或数据库
基础数据转换
从基础表中获取转换的数据
配置列是作为查询条件,通过结果列作查询结果
实现方式
作为嵌套子查询实现
select 结果对应源表列 from 基本数据查询表 where 查询条件对应源表列= 列名称 and 扩充条件
扩展条件
基础数据转换表列名作为条件直接使用列名,不要加上基础表.
用匹配视图中的列作为查询条件
加上tt.+列名来列名称:代表发布视图名称
加上发布视图名称.+列名来列名称
发布启停
自定义上传的时间
激活频度单位
下次激活时间
默认不可改
如果要修改
在开发模式中编辑标志改成是
激活频度间隔
订阅数据集描述
修改成合适的名称
视图模式特殊说明
配置数据库连接
用户配置
访问用户
发布表配置
分页时间间隔与分页时间单位
此设定的结果建议每一页最大的业务数据量不能超过1000条
最后采集时间
数据采集的最后时间
按时间进行数据采集的时候来配置最早的采集时间
最后采集序号
数据采集的最后的序号
按时间进行数据采集的时候来配置最早的采集序号
查询条件类别
无条件
无查询条件,每次获取全部数据
本表时间字段
根据本表的时间字段按照分页时间间隔和分页时间单位获取分页数据
关联属性
查询条件类别
最后采集时间
分页时间间隔
关联它表时间字段
没有其他可用于查询获取每页数量的查询条件字段,通过关联主表的时间字段获取数据
关联属性
查询条件表
查询条件表字段
关联条件
分页时间间隔
本表自增序号
根据本表的自增序号按照最后采集序号获取分页数据
关联属性
最后采集序号
其它表自增序号
没有其他可用于查询获取每页数量的查询条件字段,通过关联主表的序号字段获取数据
关联属性
查询条件表
查询条件表字段
关联条件
本表字符串时间字段
根据本表的字符串时间字段按照分页时间间隔和分页时间单位获取分页数据
日期时间是两个字段,日期时间用逗号(,)分割进行配置
关联属性
字符串日期条件字段格式
根据数据库的日期时间格式进行配置
日期时间是两个字段,日期时间用逗号(,)分割进行配置
关联它表字符串时间字段
没有其他可用于查询获取每页数量的查询条件字段,通过关联主表的字符串时间字段获取数据
关联属性
查询条件表
查询条件表字段
关联条件
字符串日期条件字段格式
根据数据库的日期时间格式进行配置
日期时间是两个字段,日期时间用逗号(,)分割进行配置
特殊说明
如果是用业务时间作为采集时间
考虑到产生业务时间的特征
采集的查询条件时间在数据保存时采用的是系统时间,就不需要考虑时序问题
如果采集的查询条件时间在数据保存时不是系统时间,有时序问题需要考虑业务时间的特征,参照举例说明进行配置
举例:病案首页数据采集
业务特征
病人出院以后病案首页滞后录入,甚至最大滞后时间达30天
没有记录录入的系统时间,或者记录了系统时间没有索引,同时新增的时候没有自增序号
录入的时候并没有按照出院时间顺序进行病案首页的录入
只能根据出院时间来作为采集的时间
滞后30天配置
主诊断:关联病案主表出院时间小于当前时间-30天
其它诊断:关联病案主表出院时间小于当前时间-30天
手术:关联病案主表出院时间小于当前时间-30天
住院病案首页(主表):出院时间小于当前时间-30天
字符串时间字段在生产环境不要使用
字符串查询数据的时候要转成时间格式,会使得索引失效,导致查询效率大幅降低
历史数据采集
视图模式:修改采集时间或采集序号
CDC模式:历史数据采集
内存同步
修改配置信息后需要内存同步
注意事项
确定查询条件类别
自增序号类别和时间的类别字段一定要是索引字段
如果自增序号和时间字段都有索引的时候,建议使用自增序号
分页时间间隔与分页时间单位
设定的结果建议每一页最大的业务数据量不能超过1000条
最后采集时间
特殊处理
历史数据上传
上传所有历史数据
清除错误匹配
某个数据集(某一类数据)不再通过适配器上传
数据中心信息逆向生成工具
初始化数据中心信息模型
变更机制
数据集的变更记录是根据子集变更的
发布标准更新选择性更新的时候根据子集编码来查找变更记录
视图模式的适配器
每次更改之后记得内存同步
CDC和视图模式优缺点
CDC模式
优点
实时性
数据是实时进行交互的
一致性
一条数据中的数据项的内容在业务库与平台中心端的数据是一样的
完整性
业务库与平台中心端的数据记录条目数一样
依据数据产生的时序形成中心端数据的时序
缺点
物理上只能连接一个数据库
使用场景
可以做数据中心
也可以做数据交互,业务协同
视图模式
优点
可以连接多个数据库
支持海量数据采集
缺点
不能保证实时性
不能保证一致性
不能保证完整性
使用场景
适合做数据中心
订阅适配端器
订阅适配器
配置订阅者编码
订阅标准下载
订阅表配置
消息获取后存储主表
订阅接口配置
源表键值标志
源表业务唯一性标志
根据此键值标志来确定接收消息在源表中的业务操作类型,新增、修改、删除
源表键值标志可以配置多个字段来确定唯一性,但确定的一个依据是数据集中有对应的数据元
数据集业务主键在源表中有相应的对应字段
有:直接配置对应关系
无:找出数据集中相应的数据元与源表主键对应
订阅接口扩展
执行条件:查询结果为0不执行
实施步骤
分析阶段
平台方和接入方共同确定需要接入的数据范围
确定各类数据分类的标准
共同确定接入的数据结构与数据项
平台方分析数据项对应的数据元
配置阶段
平台方(中心端)
固化标准
发布配置
发布者标识确定
发布数据分类确定
接入方(适配器)
参数配置发布者编码(DATASOURCE)
发布标准更新
发布用户配置
发布表配置
发布数据集与发布表的对应(发布配置)
数据元与表字段映射(发布接口配置)
发布启停
验证阶段
核对数据是否正常捕获上传
核对中心端数据条目数是否正确
核对配置的数据分类的数据项是否正确
检查处理错误上传的各种问题
发布适配器练习
1、在中心端选一个数据集,如员工信息
2、在中心定义发布者编码及发布数据集
3、适配端参数管理中修改发布者编码
4、发布标准下载
5、作发布相关的适配工作
6、发布启停
7、修改his表的员工信息表r_employee,模拟业务数据变化
8、在适配端tomcat下查看上传信息
9、在dataclient web页面分页上传信息查看上传信息
10、在中心端消息流转中查看消息流转信息
11、通过数据查看物理表名,在PLSQL数据中心中核对上传的信息
12、在datacenter web中的业务数据管理查看上传的业务数据信息