ESK数据交换平台之数据库接口Word文件下载.docx
《ESK数据交换平台之数据库接口Word文件下载.docx》由会员分享,可在线阅读,更多相关《ESK数据交换平台之数据库接口Word文件下载.docx(15页珍藏版)》请在冰点文库上搜索。
设置执行脚本11
5:
执行模型12
五、查看传输日志12
六、最大时间戳维护13
七、传输模型作业调度14
一、概述
本接口为不同业务系统之间的数据交换提供了保障,方便解决多个系统之间数据传输,维护繁杂的问题。
实现任意两个数据库之间的数据传输或同步:
√自定义数据传输模型;
√数据结构在逻辑转换时可自定义编码对照方案,SQL对照方案;
√可以通过客户端来执行数据传输任务;
√通过任务管理来回执已执行的任务;
√所有数据传输任务都可以记录日志信息
√传输任务时受事务控制
√通过作业调度,可以自定义传输时间和传输频率.
二、特色
本数据接口平台的突出优点就是灵活、高效、实时.
(1)安全性:
接口的安全性将影响到各后台信息支持系统的数据和系统安全,该接口平台具有有效的权限控制、认证等安全手段,保证所有相关系统的安全性。
(2)高效性:
传输时采用多线程机制,保证接口平台具有较高的访问效率,尤其在较大并发客户访问时,不会成为系统应用的瓶颈。
(3)一致性(实时性):
接口平台的数据信息与原系统同步更新,以保证服务质量。
(4)灵活性:
接口平台具有灵活性,便于将来与不同的信息系统进行连接,并且易于维护和升级。
a)支持多种数据库;
b)支持多种查询方法:
sql语句、存储过程;
c)支持对多个查询结果进行加减乘除等操作,方便对结果数据进行维护;
d)构造sql语句灵活多变,支持精确查询及模糊查询
三、术语介绍
模型:
将数据从A库传输到B库,需要制定的传输规则及参数,我们称之为为模型,通过模型来保存传输的规则;
规则包括了数据库的连接设置,抽取数据集的SQL脚本,批量语句,在执行过程中调用哪个存储过程,等等……
任务:
把一部份数据从A库抽取到B库的行为动作称作任务
模型处理类之数据传输处理:
用于不同表结构的数据传输,需要定义抽取数据集的sql,字段映射.
模型处理类之数据表同步处理:
用于相同表结构的数据传输,相比数据传输处理,它简化了很多的设置.常用于两个相同数据库之间的增量更新
四、设计传输模型
数据源配置
要传输数据,必定涉及到两个数据库。
配置数据源,告诉系统你要在哪两个数据库之间进行数据传输.
打开[基础数据]-数据源配置
增加
编号:
设置编号
名称:
设置名称
数据源类型:
对应的是什么类型的数据库
数据库服务器IP:
数据库服务器所在的IP
数据库服务器端口:
端口
数据库名:
数据库名称
用户:
数据库用户
密码:
数据库密码
增加完后进入view视图,可以通过点击[数据库测试连接]测试你的配置是否正确.
为源数据库中,需要传输的表增加时间戳字段
如果你不需要增量传输,此步骤可以省略,系统建议增加,提高性能。
打开[系统工具]-[SQL查询分析器]
脚本模板为:
IFNOTEXISTS(SELECT*FROMdbo.syscolumnsWHEREid=object_id('
[dbo].[tbscolor]'
)ANDOBJECTPROPERTY(id,N'
IsUserTable'
)=1ANDname='
LastChanged'
)
ALTERTABLE[dbo].[tbscolor]ADDLastChanged[timestamp]NULL
注意LastChanged字段是系统固定的。
设置固定字段
如果A系统到B系统,有些字段是需要固定的。
你可以在此处先设置好固定字段,然后在数据模型设置的时候选择,也可以不设置,直接在数据模型设置的时候固定,相比较而言,这里设置有一个好处处是,不易出错。
进入:
[基础数据]-固定值配置
设置对照字段
对于同一个对象,可能分别在两个系统中设置的编号不同,传输的时候,需要自动转换.对于需要转换的字段,需要先设置。
举例如下:
对于客户A,可能在A系统编号为00A,但在B里面编号是00B,传输的时候,就要自动将00A变为00B.
[基础数据]-[对照表]
点增加,设置一个对照类型,比如:
客户编号对照
增加完后设置对照明细
上面设置好以后,表示:
客户A在源数库中的值为aaa,目标数据库中的值要为aaaa,
传输的时候要自动按照上面转换.
设计数据库模型
点增加按纽,
模型编号:
名称:
模型名称
事物控制类型:
不控制:
不受到事务控制,即使用错误也继续
记录控制:
按记录来进行事务控制
任务控制:
按任务来进行事务控制
模型处理类:
空:
当成一个分类使用,无实际用处
数据传输处理:
用于不同表结构的数据传输,需要定义抽取数据集的sql,字段映射
表同步处理:
用于相同表结构的数据传输,相比数据传输处理,它简化了很多的设置.常用于两个相同数据库之间的增量更新
来源数据源:
设置源数据库
目标数据源:
设置目标数据库
来源表名:
传输的表名,如果没有可以随便取个名称
来源表名关键字段:
可以代表当前记录的唯一字段,可以是单一字段,也可以是一些字段的组合
目标表名:
目标的表名,必须设置
目标表名关键字段:
一次批处理脚本个数:
这个值是不是越大越好,一般25个左右为适中
来源SQL:
抽取数据集的sql
select*,cast(lastchangedasbigint)asmaxtimestampfromtbscolor
wherelastchanged>
${maxtimestamp}orderbylastchanged
上面这段表示,每次都抽记录大于某个时间戳的记录.
maxtimestamp:
系统内置字段,系统将取该字段的最大值保存
lastchanged:
系统内置时间戳字段
${maxtimestamp}为系统内置参数,每次执行前,${maxtimestamp}将自动替换为当前来源表名的最大时间戳.
注意,两个的写法是固定的,写错了,将不能起作用.
如果是数据同步处理,此sql无需设置,系统自动处理.
设置字段映射
点增加字段:
标题:
字段的中文名称:
字段处理器:
固定值处理类:
处理固定字段用的,选择此处理器后,需要设置常量值
对照值处理类:
处理对照字段用的,选择此处理器后,需要设置对照值
字段处理器:
从来源sql中对应的字段取值
变量片时器:
从系统变量中取值
主键处理器:
有的系统基本上所有表的主键都是整型,并且不是自增长,由系统自动产生,
当传输的时候,需要自动生成主键的时候,需要调用此处理器,一般用于系统实施前导入数据.注意,当使用的时候,需要将当前主键的表名,写在变量值框里面.
SQL处理器:
通过当前的值,返回另外一个值来插入.应用常景在于,两个业务表的主键不相同,比如
A系统单据表中的商品ID为整型,其它的系统为字符串型(一般用编号表示),我们就可以过字符串型,找到A当中的整型值.
源字段:
采集sql中的字段名称
目标字段:
保存的字段名称
字段类型:
目标字段类型,有整数,字符串,实数,日期4种.
变量值:
设置取的变量名称,对应变量处理器
常量值:
可以选择也可以直接接设置,对应固定值处理器
对照值:
选择框,对应对照值处理器
SQL:
对应SQL处理器,固定变量为:
${value}表示来源表中当前的值
设置参数
参数主要用于批量脚本和采集sql,比如主明细传输中,需要取上级的主ID,执行批量脚本的时候,需要得到当前记录中某个字段的值
定义好参数,引用时的写法为:
${参数编号}
参数的编号
参数的中文名称
参数类型:
固定:
直接引用
数据源:
从定义的数据源编号中引用,如果为空,即使用当前的数据源编号.(数据源编号=当于的数据源编号)
时间戳:
取某个表的最大时间戳
参数值:
与参数类型相对应的
数据源来自:
源数据库:
模型的源数据库
目标数据库:
模型的目标数据库
数据源编号:
对应数据源模型编号
设置执行脚本
执行脚本可以分为在源数据库中执行,也可以分为在目标数据库执行,在源数据库上执行的一般是回执之类,
在目标数据库执行的一般是将传输好的数据进行再处理.脚本支持存储过程和批量脚本.
点增加脚本:
批量脚本名称
类型:
记录:
每传输一条记录执行
执行完当前任务后执行
数据库:
来源:
在模型的源数据库上执行
目标:
在模型的目标数据库上执行
内容:
传输的内容
执行模型
点【调试】按纽,不写数据库,显示需要执行的脚本,对模型进行调试,调试成功后,再点【执行】按纽,
五、查看传输日志
进入[日志分析]模块
六、最大时间戳维护
由于系统的原因,可能需要将某个模型的数据部分或全部重新传输,进入【数据接口平台】-【时间戳维护】,
,修改最大时间戳的值即可.
修改界面
七、传输模型作业调度
进入【作业调度】-【作业计划】模块,点增加按纽
具体功能介绍请参阅【作业调度功能】,强调以下两点:
调度对象:
必须选择:
数据传输工作任务:
自定义属性1:
写上你需要作业的传输模型,多个模型编号之间用逗号隔开.
注:
ESK数据交换平台软件是永久免费,基本没有限制,非注册版没有作业调度功能
软件下载及咨询加QQ群:
180028274