一种作业转换方法及系统技术方案

技术编号:26597922 阅读:21 留言:0更新日期:2020-12-04 21:20
本发明专利技术提供一种作业转换方法及系统,其中,方法包括:步骤S1:从数据管理平台获取作业信息;步骤S2:解析作业信息,获取Java作业对象;步骤S3:基于预设的映射标准库和Java作业对象,确定Xsd对象;步骤S4:基于Xsd对象,生成xml文件。本发明专利技术的作业转换方法,实现将存量作业转换为kettle作业,实现企业采用kettle全面替换商用IBM DataStage商用etl软件,真正将数据安全牢牢掌握在企业自身手中,防止数据丢失造成的一系列严重后果。

【技术实现步骤摘要】
一种作业转换方法及系统
本专利技术涉及数据转换
,特别涉及一种作业转换方法及系统。
技术介绍
目前,大多数企业采用商用IBMDataStage商用etl软件。kettle做为开源etl[Extract-Transform-Load,数据仓库技术]软件,它的出现使企业有了全面替换商用IBMDataStage商用etl软件的机会,使企业能去IOE【去掉IBM的小型机、Oracle数据库、EMC存储设备,代之以自己在开源软件基础上开发的系统】,真正将数据安全牢牢掌握在企业自身手中,防止数据丢失造成的一系列严重后果。但是,在替换过程中如何实现存量作业转换为kettle作业亟需解决的技术问题。
技术实现思路
本专利技术目的之一在于提供了一种作业转换方法,实现将存量作业转换为kettle作业,实现企业采用kettle全面替换商用IBMDataStage商用etl软件,真正将数据安全牢牢掌握在企业自身手中,防止数据丢失造成的一系列严重后果。本专利技术实施例提供的一种作业转换方法,包括:步骤S1:从数据管理平台获取作业信息;步骤S2:解析作业信息,获取Java作业对象;步骤S3:基于预设的映射标准库和Java作业对象,确定Xsd对象;步骤S4:基于Xsd对象,生成xml文件。优选的,作业转换方法,还包括:步骤S11:获取预先定义的对应存量作业场景的kettle作业的xml模板;步骤S12:解析xml模板,确定对应的xml的文档结构;步骤S13:基于文档结构,生成对应的Xsd文件;步骤S14:通过映射标准库,将Xsd文件转化为对应的Java对象。优选的,作业转换方法,还包括:步骤S5:接收用户对xml文件的修改,并提取对应的修改项;步骤S6:基于修改项,对映射标准库进行更新;步骤S3:基于预设的映射标准库和Java作业对象,确定Xsd对象,包括:当Java作业对象与多个Xsd对象存在映射关系时,将多个Xsd对象制成选取列表,并基于选取列表接收用户选取的Xsd对象;和/或,当Java作业对象与多个Xsd对象存在映射关系时,获取用户对于Xsd对象的历史选取记录及选取记录对应的时间值;基于Xsd对象在选取记录的被选取的概率及时间值,确定Java作业对象对应的Xsd对象。优选的,步骤S6:基于修改项,对映射标准库进行更新,包括:为当前工作的映射标准库制作镜像数据库和修改准备数据库;将修改项进行编号并分类存储进修改准备数据库;当修改准备数据库中任一分类的修改项的数目达到预设数量值时,和/或,当修改准备数据库中任一分类的修改项当前存储频率大于预设频率值时,提取分类的所有的修改项;解析提取的修改项,筛选出作为更新依据的修改项;基于修改项对镜像数据库进行修改,并在修改位置进行标记;其中,解析提取的修改项,筛选出作为更新依据的修改项,包括:依次提取其中任一修改项,将提取的修改项与剩余的修改项进行比对,当剩余的修改项中有一个修改项与提取的修改项相同时,提取的修改项对应的权重值加一,以权重值最大的修改项作为更新依据;分类的修改项当前存储频率通过下式计算出:其中,m为分类中修改项的个数;ti+1为分类中第i+1个修改项的存储时间;ti为分类中第i个修改项的存储时间;f1表示分类的修改项当前存储频率;作业转换方法还包括:当镜像数据库修改完成后,将当前工作的映射标准库临时替换为镜像数据库一预设时间;统计在预设时间内,对于标记位置的调取次数;解析数据库替换后的修改项,确定标记位置的修改准确度,计算公式如下:其中,T为标记位置的修改准确度;n0表示标记位置的调取次数;n1表示数据库替换后的修改项中标记位置被调取后仍进行修改的次数。当修改准确度大于预设准确值时,将当前工作的映射标准库永久替换为镜像数据库。优选的,基于Xsd对象在选取记录的被选取的概率及时间值,确定Java作业对象对应的Xsd对象,包括:基于时间值确定Xsd对象被选取的频率;基于Xsd对象在选取记录的被选取的概率及Xsd对象被选取的频率,计算优先值,计算公式如下:其中,Dh为多个Xsd对象中第h个Xsd对象的优先值;M为Xsd对象的数目;nh为第h个Xsd对象在选取记录的被选取的次数;th,j+1为第h个Xsd对象第j+1次被选取的时间值;th,j为第h个Xsd对象第j次被选取的时间值;表示第h个Xsd对象被选取的频率;表示第h个Xsd对象在选取记录的被选取的概率,α为概率对应的预设权重;β为频率对应的预设权重。本专利技术还提供一种作业转换系统,包括:第一获取模块,用于从数据管理平台获取作业信息;第一解析模块,用于解析作业信息,获取Java作业对象;第一映射模块,用于基于预设的映射标准库和Java作业对象,确定Xsd对象;第一输出模块,用于基于Xsd对象,生成xml文件。优选的,作业转换系统,还包括:第二获取模块,用于获取预先定义的对应存量作业场景的kettle作业的xml模板;第二解析模块,用于解析xml模板,确定对应的xml的文档结构;第二生成模块,用于基于文档结构,生成对应的Xsd文件;第二映射模块,用于通过映射标准库,将Xsd文件转化为对应的Java对象。优选的,作业转换系统,还包括:提取模块,用于接收用户对xml文件的修改,并提取对应的修改项;更新模块,用于基于修改项,对映射标准库进行更新;第一映射模块,还执行包括如下操作:当Java作业对象与多个Xsd对象存在映射关系时,将多个Xsd对象制成选取列表,并基于选取列表接收用户选取的Xsd对象;和/或,当Java作业对象与多个Xsd对象存在映射关系时,获取用户对于Xsd对象的历史选取记录及选取记录对应的时间值;基于Xsd对象在选取记录的被选取的概率及时间值,确定Java作业对象对应的Xsd对象。优选的,更新模块执行包括如下操作:为当前工作的映射标准库制作镜像数据库和修改准备数据库;将修改项进行编号并分类存储进修改准备数据库;当修改准备数据库中任一分类的修改项的数目达到预设数量值时,和/或,当修改准备数据库中任一分类的修改项当前存储频率大于预设频率值时,提取分类的所有的修改项;解析提取的修改项,筛选出作为更新依据的修改项;基于修改项对镜像数据库进行修改,并在修改位置进行标记;其中,解析提取的修改项,筛选出作为更新依据的修改项,包括:依次提取其中任一修改项,将提取的修改项与剩余的修改项进行比对,当剩余的修改项中有一个修改项与提取的修改项相同时,提取的修改项对应的权重值加一,以权重值最大的修改项作为更新依据;分类的修改项当前存储频率通过下式计算出:本文档来自技高网...

【技术保护点】
1.一种作业转换方法,其特征在于,包括:/n步骤S1:从所述数据管理平台获取作业信息;/n步骤S2:解析所述作业信息,获取Java作业对象;/n步骤S3:基于预设的映射标准库和所述Java作业对象,确定Xsd对象;/n步骤S4:基于所述Xsd对象,生成所述xml文件。/n

【技术特征摘要】
1.一种作业转换方法,其特征在于,包括:
步骤S1:从所述数据管理平台获取作业信息;
步骤S2:解析所述作业信息,获取Java作业对象;
步骤S3:基于预设的映射标准库和所述Java作业对象,确定Xsd对象;
步骤S4:基于所述Xsd对象,生成所述xml文件。


2.如权利要求1所述的作业转换方法,其特征在于,还包括:
步骤S11:获取预先定义的对应存量作业场景的kettle作业的xml模板;
步骤S12:解析所述xml模板,确定对应的xml的文档结构;
步骤S13:基于所述文档结构,生成对应的所述Xsd文件;
步骤S14:通过所述映射标准库,将所述Xsd文件转化为对应的Java对象。


3.如权利要求1所述的作业转换方法,其特征在于,还包括:
步骤S5:接收用户对所述xml文件的修改,并提取对应的修改项;
步骤S6:基于所述修改项,对所述映射标准库进行更新;
所述步骤S3:基于预设的映射标准库和所述Java作业对象,确定Xsd对象,包括:
当所述Java作业对象与多个Xsd对象存在映射关系时,将多个Xsd对象制成选取列表,并基于所述选取列表接收用户选取的所述Xsd对象;
和/或,
当所述Java作业对象与多个Xsd对象存在映射关系时,获取用户对于所述Xsd对象的历史选取记录及选取记录对应的时间值;
基于所述Xsd对象在所述选取记录的被选取的概率及所述时间值,确定所述Java作业对象对应的所述Xsd对象。


4.如权利要求3所述的作业转换方法,其特征在于,所述步骤S6:基于所述修改项,对所述映射标准库进行更新,包括:
为当前工作的所述映射标准库制作镜像数据库和修改准备数据库;
将所述修改项进行编号并分类存储进所述修改准备数据库;
当所述修改准备数据库中任一分类的所述修改项的数目达到预设数量值时,和/或,当所述修改准备数据库中任一分类的所述修改项当前存储频率大于预设频率值时,提取所述分类的所有的所述修改项;
解析提取的所述修改项,筛选出作为更新依据的所述修改项;
基于所述修改项对所述镜像数据库进行修改,并在修改位置进行标记;
其中,解析提取的所述修改项,筛选出作为更新依据的所述修改项,包括:依次提取其中任一所述修改项,将提取的修改项与剩余的所述修改项进行比对,当剩余的所述修改项中有一个所述修改项与提取的所述修改项相同时,提取的所述修改项对应的权重值加一,以所述权重值最大的所述修改项作为更新依据;
所述分类的所述修改项当前存储频率通过下式计算出:



其中,m为所述分类中所述修改项的个数;ti+1为所述分类中第i+1个所述修改项的存储时间;ti为所述分类中第i个所述修改项的存储时间;f1表示所述分类的所述修改项当前存储频率;
所述作业转换方法还包括:
当所述镜像数据库修改完成后,将当前工作的所述映射标准库临时替换为所述镜像数据库一预设时间;
统计在所述预设时间内,对于所述标记位置的调取次数;
解析数据库替换后的所述修改项,确定所述标记位置的修改准确度,计算公式如下:



其中,T为所述标记位置的修改准确度;n0表示所述标记位置的调取次数;n1表示数据库替换后的所述修改项中所述标记位置被调取后仍进行修改的次数。
当所述修改准确度大于预设准确值时,将当前工作的所述映射标准库永久替换为所述镜像数据库。


5.如权利要求3所述的作业转换方法,其特征在于,所述基于所述Xsd对象在所述选取记录的被选取的概率及所述时间值,确定所述Java作业对象对应的所述Xsd对象,包括:
基于所述时间值确定所述Xsd对象被选取的频率;
基于所述Xsd对象在所述选取记录的被选取的概率及所述Xsd对象被选取的频率,计算优先值,计算公式如下:



其中,Dh为多个Xsd对象中第h个所述Xsd对象的所述优先值;M为所述Xsd对象的数目;nh为所述第h个所述Xsd对象在所述选取记录的被选取的次数;th,j+1为所述第h个所述Xsd对象第j+1次被选取的时间值;th,j为所述第h个所述Xsd对象第j次被选取的时间值;表示第h个所述Xsd对象被选取的频率;表示第h个所述Xsd对象在所述选取记录的被选取的概率,α为所述概率对应的预设权重;β为所述频率对应的预设权重。

【专利技术属性】
技术研发人员:陈恭祥陈嘉龙
申请(专利权)人:深圳市中盛瑞达科技有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1