[发明专利]一种对DB2数据库建表日志列名解析的方法及装置有效
申请号: | 202110109747.0 | 申请日: | 2021-01-27 |
公开(公告)号: | CN112765180B | 公开(公告)日: | 2023-01-17 |
发明(设计)人: | 蓝炳雄;高志会;胡军擎;江俊 | 申请(专利权)人: | 上海英方软件股份有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/242 |
代理公司: | 上海国智知识产权代理事务所(普通合伙) 31274 | 代理人: | 潘建玲 |
地址: | 200011 上海市黄*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 db2 数据库 日志 解析 方法 装置 | ||
本发明公开了一种对DB2数据库建表日志列名解析的方法及装置,该方法包括:步骤S1,在解析建表日志时,对原始SQL日志进行解析,从SQL语句中分离出表名和schema名,并存入用于表示表基本信息的一解析结构体中;步骤S2,对初始化表的日志,从中获取表ID、表空间ID以及表的各列属性信息,存入解析结构体中,并构建一个任务结构体,于任务结构体设置一个建表操作的标志数,将获取到的表ID、表空间ID存任务结构体中;步骤S3,按照任务队列的顺序读取任务结构体,根据所述任务结构体、解析结构体及数据库系统表获取表名、schema名、列名、列属性信息拼装成JSON格式的SQL操作基本信息发送到KAFKA。
技术领域
本发明涉及计算机数据备份容灾技术领域,特别是涉及一种对DB2数据库建表日志列名解析的方法及装置。
背景技术
DB2为IBM开发的一种大型关系型数据库平台,它支持多用户或应用程序在同一条SQL语句中查询不同database甚至不同DBMS中的数据,是目前使用最广泛的关系数据库系统之一。
目前,DB2数据库在解析Create Table(建表)日志时会依次产生三种类型的日志数据:一种是Component identifier为11、Function identifier为4的原始SQL日志记录,需要设置数据库属性LOG_DDL_STMTS为YES;一种是Component identifier为4、Functionidentifier为101的建表日志记录;还有一种是Component identifier为1、Functionidentifier为128的初始化表的日志记录,要求在建表或修改表时声明data capturechanges属性,其中,原始SQL日志记录包括输入SQL的原文,建表日志的数据均为数据库内部使用,初始化表日志中主要包含表的列属性与列的个数等。
在实时解析Create Table(建表)操作时,需获取到表名与表结构,其中表结构主要包括列名与列属性,可以从原始SQL日志记录分析中获取表名、在初始化表日志中可获取到列属性但没有列名,而在解析完毕将JSON格式的新建表的基本信息发送至KAFKA时,需要发送表名、schema名、列名、列属性等信息。
为解决上述问题,目前直接方法一般采取从原始SQL日志中直接解析SQL语句,按照Create Table(建表)的语法或其他特征来分解SQL语句的各个单词,从而获取列名。但是,以SQL语法来解析Create Table(建表)语句中的各类信息,基本等同于实现一个用于解析Create Table(建表)语句的编译器,这样虽然能保证程序完善,但对开发人员的技术水平要求较高,实现起来过于复杂、费时;用SQL语句里的其他特征(如空格、逗号和左右括号等)以字符串匹配的方式来解析Create Table(建表)语句中的各类信息,虽然实现起来较为简单,但是难以覆盖使用Create Table(建表)操作的各种情形,可能导致Create Table(建表)操作解析失败甚至程序崩溃。
发明内容
为克服上述现有技术存在的不足,本发明之目的在于提供一种对DB2数据库建表日志列名解析的方法及装置,以实现在Create table(建表)日志解析中获取列名的目的。
为达上述目的,本发明提出一种对DB2数据库建表日志列名解析的方法,包括如下步骤:
步骤S1,在解析建表日志时,对原始SQL日志进行解析,从SQL语句中分离出表名和schema名,并存入用于表示表基本信息的一解析结构体中;
步骤S2,对初始化表的日志,从中获取表ID、表空间ID以及表的各列属性信息,存入所述解析结构体中,并构建一个任务结构体,于所述任务结构体设置一个建表操作的标志数,将获取到的表ID、表空间ID存所述任务结构体中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海英方软件股份有限公司,未经上海英方软件股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110109747.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一键清标方法、系统及存储介质
- 下一篇:一种汽车金属配件精磨加工机