[发明专利]内存数据库和物理数据库间的数据同步方法有效
申请号: | 201010285234.7 | 申请日: | 2010-09-16 |
公开(公告)号: | CN101944114A | 公开(公告)日: | 2011-01-12 |
发明(设计)人: | 蒋述庭;杨东洋;汪东升 | 申请(专利权)人: | 深圳天源迪科信息技术股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 深圳市德力知识产权代理事务所 44265 | 代理人: | 林才桂 |
地址: | 518000 广东省深圳市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 内存 数据库 物理 数据 同步 方法 | ||
1.一种内存数据库和物理数据库间的数据同步方法,其特征在于,包括:
步骤1、以SQL操作的形式表示对源数据库的操作,将SQL操作分解为SQL语法和相应的SQL参数,注册操作源数据库的SQL语法和SQL参数,并将注册的SQL语法和SQL参数存储于SQL管理区中加以管理;
步骤2、对于源数据库的数据变动,以SQL语法结合SQL参数的形式生成逻辑日志;
步骤3、根据注册的SQL语法和SQL参数,将步骤2中的逻辑日志在目的数据库重做。
2.如权利要求1所述的内存数据库和物理数据库间的数据同步方法,其特征在于,步骤3中,每条逻辑日志关联一个SQL语法,在执行目的数据库的重做时,首先通过管理区中注册的SQL语法查找准备后的SQL语法,如果没有则进行SQL语法的准备,然后再执行SQL语法对目的数据库重做。
3.如权利要求2所述的内存数据库和物理数据库间的数据同步方法,其特征在于,对于从内存数据库到物理数据库的数据同步:
步骤1中,当系统中能够操作内存数据库的应用进程开始运行时,该应用进程首先注册SQL语法和SQL参数到内存数据库,同时生成一份拷贝存储于SQL管理区中,该拷贝供执行物理数据库的日志重做用;
步骤2中,捕获系统中的应用进程对内存数据库的操作,以SQL语法结合SQL参数的形式生成逻辑日志;
步骤3中,根据注册的SQL语法和SQL参数,将步骤2中的逻辑日志在物理数据库中重做。
4.如权利要求3所述的内存数据库和物理数据库间的数据同步方法,其特征在于,使每个应用进程对内存数据库的操作对应一个SQL操作组,每个SQL操作组包括若干个SQL操作,每个SQL操作由SQL语法和SQL参数组组成。
5.如权利要求4所述的内存数据库和物理数据库间的数据同步方法,其特征在于,还包括:对于系统中所有需要进行数据同步的应用进程,建立应用名和对应的应用进程的关系、应用进程和对应的SQL操作组的关系。
6.如权利要求3所述的内存数据库和物理数据库间的数据同步方法,其特征在于,步骤2中生成逻辑日志后,系统还对生成的逻辑日志进行收集:对应于应用进程的每个线程关联一个事务缓冲区,用来存储一个事务所生成的逻辑日志;对应于每个应用进程关联一个应用缓冲区,用来存储该应用进程所有实例所生成的逻辑日志;然后每个应用进程再把所生成的逻辑日志存储到消息队列中;从消息队列中获取应用进程的逻辑日志并放在系统缓冲区中,并把系统缓冲区中的逻辑日志写入到内存数据库的日志文件中。
7.如权利要求6所述的内存数据库和物理数据库间的数据同步方法,其特征在于,步骤3中,首先加载并解析内存数据库的日志文件,通过解析日志文件得到步骤2中所生成的逻辑日志,然后根据注册的SQL语法和SQL参数,把生成的逻辑日志在物理数据库中重做。
8.如权利要求3所述的内存数据库和物理数据库间的数据同步方法,其特征在于,步骤3中,在执行物理数据库的重做时,首先在管理区中注册的SQL语法中查找准备后的SQL语法,如果没有则进行SQL语法的准备,然后再执行SQL语法对物理数据库重做。
9.如权利要求2所述的内存数据库和物理数据库间的数据同步方法,其特征在于,对于从物理数据库到内存数据库的数据同步:
步骤1中,根据物理数据库的日志文件,在SQL管理区中设置SQL语法表和SQL参数表,分别用来注册操作物理数据库的SQL语法和SQL参数;
步骤2中,根据物理数据库的日志文件,设置逻辑日志表,当物理数据库的数据有变化时,通过物理数据库提供的触发器机制,将变化的数据写到逻辑日志表;
步骤3中,实时扫描逻辑日志表,根据注册的SQL语法和SQL参数,把步骤2对应的逻辑日志在内存数据库进行重做。
10.如权利要求9所述的内存数据库和物理数据库间的数据同步方法,其特征在于,步骤3中,在执行内存数据库的重做时:
步骤3.1、获取到逻辑日志后,根据SQL语法表获取准备后的SQL语法;
步骤3.2、如果获取准备后的SQL语法成功,直接执行步骤3.3;如果获取准备后的SQL语法失败,则在SQL语法表中获取SQL语法,然后执行内存数据库的准备操作,并在SQL参数表中获取参数,然后执行内存数据库的参数绑定操作,从而完成内存数据库的重做;
步骤3.3、根据逻辑日志拆分出所有的SQL参数,依次设置到SQL语法中,然后执行内存数据库的重做。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳天源迪科信息技术股份有限公司,未经深圳天源迪科信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010285234.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种新型工厂化育苗基质
- 下一篇:低温共烧陶瓷粉及其专用原料与应用
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置