联系我们:010-88559646

  老师群

170086145

  学生群

179326524

209318323

215410234

客服电话:010-88559646

A8-基于SQL Server原生日志读取接口实现数据库事务日志解析工具

时间:2021-04-09        来 源:中国软件杯

第十届中国软件杯大赛--A组赛题

赛题名称:基于SQL Server原生日志读取接口实现数据库事务日志解析工具 

组类: A组( 本科、研究生、高职)

赛题简介:介绍整个赛题的实现目标、实用价值、涉及技术和整体要求

目标:通过SQL Server数据库原生的日志读取接口实现一个可持续运行的SQL Server增量事务日志解析工具,将用户业务系统对数据库进行的事务操作解析为统一格式的SQL语句或者结构体。

价值:通过解析SQL Server的增量事务日志,完成SQL Server中的业务向国产数据库的平滑迁移,助力数据库的国产化替代。

涉及的技术能力:

1.对数据库事务和日志存储有较深的理解

2.对SQL Server数据库的熟练使用能力

3.对二进制数据文件的分析能力

整体要求:

1.不能使用CDC等基于触发器或定时任务的机制

2.需要识别所有DML操作

3.最好可以解析常见的DDL操作

赛题业务场景:描述赛题相关的真实企业业务背景。从真实场景中,适当简化或者提炼出适合比赛的赛题场景

在当前国内各行业进行国产化替代的大环境下,数据库的国产化是其中的重要一环。而在数据库的国产化替代中,面临的很大一个问题就是用户如何平滑的迁移业务?现有的较为常用的方案是,先将原始的国外库中的初始数据迁移到国产库当中,然后通过中间工具,将用户在国外库中进行的业务操作解析出来,然后在国产库进行重放,这就保证了两个库之间数据的实时一致,等到国产库试运行稳定后就将业务切换到国产库上面去。基于这个方案,我们需要具备将国外数据库中的用户业务操作实时解析出来的能力。SQL Server数据库作为目前市场上较为常见的国外数据库,是我们必须具备的能力之一。

基本功能要求

1.可以识别并解析所有的DML操作

2.可以将解析后的数据转化为标准的SQL语句或者清晰可读的数据结构(如json等)

非功能性要求

1.实时性,对数据库的DML操作需要在1S内解析出来

2.保证解析出的DML语句的正确性

3.保证程序的7*24小时稳定运行

实现条件:开发环境、实验平台、开发语言、数据库、编译器、涉及硬件等实现条件

开发语言:Java

其他:不限

测试数据或平台:提供给参赛者的测试环境和测试数据

训练数据下载:训练数据.txt

验证数据下载:验证数据.txt

开发所需设备及设备指标需求说明

文档及其他要求

需要输出概要设计和详细设计文档

各评分项及大致占比

1.功能实现的完整性和准确性

2.代码和文档的规范性

3.非功能特性的实现程度

其中,功能特性的实现为主要评分点

初赛作品提交要求

1.源文件

2.可执行文件

3.相关设计文档

4.演示视频(7分钟之内)

 【参赛团队作品中团队自主开发部分的软件作品著作权归参赛团队所有,其中具有市场应用及拓展的优秀作品,出题企业具有优先权,可以优先合作开发或者优先购买。另如基于该作品的任何合作升级开发、市场拓展等活动,以及在这一过程中所获得的任何商业费用,出题企业应与参赛团队协商解决。】

出题企业:北京人大金仓信息技术股份有限公司

答疑老师:魏老师  qwei@kingbase.com.cn


 

主办单位

工业和信息化部

教育部

江苏省人民政府

承办单位

中国电子信息产业发展研究院

江苏省工业和信息化厅

江苏省教育厅

教育部高等学校计算机类专业教学指导委员会

信息技术新工科产学研联盟

执行单位

中国信息化周报

南京江北新区产业技术研创园

江苏软件产业人才发展基金会

南京市软件和信息服务集群发展促进机构

南京航空航天大学

关于我们

客服电话:010-88559646

邮编:100048

联系地址:北京市海淀区紫竹院路66号赛迪大厦18层

网站备案/许可证号:京ICP备05039896号-10     京公网安备 11010802020860号