[发明专利]一种织造车间生产数据的迁移方法无效
申请号: | 200910228796.5 | 申请日: | 2009-11-27 |
公开(公告)号: | CN101706803A | 公开(公告)日: | 2010-05-12 |
发明(设计)人: | 刘文菊;王赜;王云龙;时珍全;王婉茹;孙杰;张牧 | 申请(专利权)人: | 天津工业大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 天津翰林知识产权代理事务所(普通合伙) 12210 | 代理人: | 张国荣 |
地址: | 300160*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 织造 车间 生产 数据 迁移 方法 | ||
1.一种织造车间生产数据的迁移方法,该迁移方法采用以下步骤:
(1)系统初始化,在系统启动后,建立一个唯一的系统配置实例,读取系统配置文件,将其中的配置信息赋值给该实例相应的属性中,完成系统参数的初始化;
(2)数据连接配置,提供对数据连接的编辑功能,通过选择相应的数据连接,进入编辑阶段,接受用户编辑;编辑提交后,对编辑的数据进行校验,检查数据的合法性,测试数据连接的可靠性以及配置的数据连接是否符合中心数据表结构以及分厂数据表结构的要求;校验成功后更新当前系统配置参数,包括更新系统配置实例和更新配置文件;
(3)数据同步,完成生产数据从分厂数据库向中心数据库的迁移;
(4)数据恢复,当某个分厂由于意外导致数据库系统崩溃无法正常运转的时候,利用分厂标识从中心数据库提取出相应分厂的生产数据,恢复到该分厂的数据库中,保证分厂数据的完整性;
其中,所述步骤(3)数据同步包括:
(31)同步初始化,从系统配置实例中获取数据连接信息,建立分厂对应表和中心对应表的连接,在分厂端创建操作记录表,在分厂对应表上创建操作记录触发器,记录分厂对应表上的数据操作;同步初始化阶段要创建操作记录表和操作记录触发器:操作记录表用于存储分厂数据表上的操作变化,其数据由操作记录触发器提供,操作记录表的各字段详细说明如下:
字段id:主键,自增字段,标识操作记录的编号;
字段optype:该字段有三种取值:0:代表delete操作;1:代表update操作;2:代表insert操作;
字段statement:用于存储由操作记录触发器记录下的数据操作语句;数据操作被操作记录触发器记录下来,并以尚未书写完整、不能在数据库中执行的SQL语句形式写入到该字段中;
操作记录表是在同步初始化过程中由程序自动创建的,根据数据库类型的不同,采用不同的数据库语句进行创建,操作记录表创建流程如下:
读取数据连接信息;
获取同步源数据表表名和源数据库的类型;
获取与同步源数据表的连接;
语句类型适配选择;
SQL语句与同步源数据表名拼接;
在源数据库执行SQL语句创建记录表;
操作记录触发器用于自动记录对分厂数据表的操作;创建操作记录触发器时要查询得到分厂数据表的字段信息,将该分厂数据表中可写入字段的字段名称和类型提取后,拼接到创建操作记录触发器的SQL语句中,操作记录触发器创建流程如下:
读取数据连接信息;
获取与同步源数据表的连接;
获取同步源数据表的字段信息;
数据库类型匹配;
update/delete/insert操作记录触发器语句拼接;
在同步目的数据库执行拼接语句;
操作记录触发器建立成功提示;
由操作记录触发器创建出的记录格式为:
A.删除操作记录:“delete from同步目的表名where主键名=主键值[and主键名2=主键值2…]”,其中主键的个数因表而异;
B.更新操作记录:“update主表名set字段名=字段值where主键名=主键值[and主键名2=主键值2…]”,更新的字段个数因操作而异;
C.插入操作记录:“字段值[,字段值2…]”,个数为该表的字段数;
操作记录触发器创建过程中第 步的语句拼接过程如下:
选择适配规则;
与同步源数据表表名进行拼接;
获取下一字段信息;
判断当前字段是否为可写入字段,是则执行 否则执行
将SQL语句与当前字段拼接;
判断是否有下一字段,是则执行 否则执行
与操作记录表名拼接;
在整个循环过程中,自增字段和计算列字段这两个无用的字段被自动丢弃,剩余的字段均是承载有效生产数据的字段;
(32)周期同步,定时从所述操作记录表中获取由所述操作记录触发器记录下的数据操作信息,结合操作类型、附加字段将该操作信息拼接成SQL语句,在中心数据表上执行所述SQL语句,实现将数据变化反应到中心数据表上,完成数据的同步;周期同步阶段的流程具体说明如下:
启动一个同步线程,该线程以数据连接号作为标记;
调用触发器状态管理模块,将同步源数据表的update、delete和insert三个操作记录触发器全部启用;
获取分厂数据表对应的操作记录表中的所有记录,指针指向第一条记录;如无记录,则转
根据数据连接两端的数据库类型,调用用于数据格式转换的函数对记录中的value值部分进行格式转换,使新的格式适合于目的数据库;形式为convertData(源数据库类型,目的数据库类型,原始字符串),返回值为经过格式转换的目的字符串;
根据optype字段判断操作类型,如果是删除和更新操作则直接与附加字段部分进行拼接即可;如果是插入操作,查询分厂表的可写入字段,用这些字段与statement中的字符串进行拼接,而后再进行附加字段处理;
最后插入语句要拼接成如下格式:
“insert into目的表表名(可写入字段[,附加字段…])values(statement字符串[,附加字段值…])”;
取得中心数据库的连接,在该连接上执行上述拼凑的SQL语句;
执行成功,则删除记录表中对应的记录,并在对应类型的同步操作计数器上加一;
如果执行失败,则对产生的异常做捕获处理,进行日志记录;如果是特殊的异常,任务无法继续进行,转如果是一般异常,则指针指向下一条记录,转
一次同步执行结束,日志记录成功进行同步的各个同步操作计数器的值,而后将计数器清零,线程休眠一段时间,等待进行下一次同步,返回
同步线程终止,同步任务结束;
所述步骤(4)数据恢复包括:
(41)利用分厂的部分数据表结构的字段信息并结合分厂标识在中心数据表上建立一个恢复视图;所述恢复视图提供恢复用的全部数据信息;
(42)恢复线程从所述恢复视图中提取一条数据,拼接成插入语句;在分厂数据表上执行所述插入语句,完成数据的恢复;
(43)移到下一条数据,重复步骤(42),直到全部数据恢复完成。
2.根据权利要求1所述的织造车间生产数据的迁移方法,其特征在于所述的迁移方法还包括不同数据库的适配方法,该适配方法包括驱动程序的适配方法、SQL语句的适配方法和数据类型转换的适配方法;
所述驱动程序适配方法是指在数据连接的配置文件结构中为分厂端和中心端分别配置了一个数据库驱动程序字符串属性,在数据连接建立前,根据数据连接两端的驱动程序字符串进行数据库驱动的搜索和加载;
所述SQL语句适配方法是指适用于产生插入、更新、删除拼接语句的函数方法,在这些函数方法中,提供type作为额外的一个入口参数,用于表示拼接后的SQL语句所适用的目的数据库的类型,在函数方法内部给出涉及的各种类型数据库下所应使用的语句规则,然后根据提供的type参数进行判断,选择出对应数据库类型的规则;
所述数据类型转换的适配方法是指对于不同类型的数据库之间的迁移,需要在拼接语句执行之前对拼接语句中的表示数据值的字符串部分进行格式转换,格式转换方法的形式为convertData(源数据库类型,目的数据库类型,原始字符串),返回值为经过格式转换的目的字符串;该适配方法在数据同步的语句拼接之前被调用,在数据恢复的语句拼接之后被调用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津工业大学,未经天津工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910228796.5/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种发电装置
- 下一篇:一种油田抽油机用高效节能永磁同步电机座
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置