CN112035707A - 一种作业转换方法及系统 - Google Patents
一种作业转换方法及系统 Download PDFInfo
- Publication number
- CN112035707A CN112035707A CN202010827770.9A CN202010827770A CN112035707A CN 112035707 A CN112035707 A CN 112035707A CN 202010827770 A CN202010827770 A CN 202010827770A CN 112035707 A CN112035707 A CN 112035707A
- Authority
- CN
- China
- Prior art keywords
- modification
- xsd
- job
- items
- item
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/81—Indexing, e.g. XML tags; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/83—Querying
- G06F16/835—Query processing
- G06F16/8358—Query translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
- G06F16/86—Mapping to a database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/906—Clustering; Classification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种作业转换方法及系统,其中,方法包括:步骤S1:从数据管理平台获取作业信息;步骤S2:解析作业信息,获取Java作业对象;步骤S3:基于预设的映射标准库和Java作业对象,确定Xsd对象;步骤S4:基于Xsd对象,生成xml文件。本发明的作业转换方法,实现将存量作业转换为kettle作业,实现企业采用kettle全面替换商用IBM DataStage商用etl软件,真正将数据安全牢牢掌握在企业自身手中,防止数据丢失造成的一系列严重后果。
Description
技术领域
本发明涉及数据转换技术领域,特别涉及一种作业转换方法及系统。
背景技术
目前,大多数企业采用商用IBM DataStage商用etl软件。kettle做为开源etl[Extract-Transform-Load,数据仓库技术]软件,它的出现使企业有了全面替换商用IBMDataStage商用etl软件的机会,使企业能去IOE【去掉IBM的小型机、Oracle数据库、EMC存储设备,代之以自己在开源软件基础上开发的系统】,真正将数据安全牢牢掌握在企业自身手中,防止数据丢失造成的一系列严重后果。但是,在替换过程中如何实现存量作业转换为kettle作业亟需解决的技术问题。
发明内容
本发明目的之一在于提供了一种作业转换方法,实现将存量作业转换为kettle作业,实现企业采用kettle全面替换商用IBM DataStage商用etl软件,真正将数据安全牢牢掌握在企业自身手中,防止数据丢失造成的一系列严重后果。
本发明实施例提供的一种作业转换方法,包括:
步骤S1:从数据管理平台获取作业信息;
步骤S2:解析作业信息,获取Java作业对象;
步骤S3:基于预设的映射标准库和Java作业对象,确定Xsd对象;
步骤S4:基于Xsd对象,生成xml文件。
优选的,作业转换方法,还包括:
步骤S11:获取预先定义的对应存量作业场景的kettle作业的xml模板;
步骤S12:解析x ml模板,确定对应的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模板;
第二解析模块,用于解析x ml模板,确定对应的xml的文档结构;
第二生成模块,用于基于文档结构,生成对应的Xsd文件;
第二映射模块,用于通过映射标准库,将Xsd文件转化为对应的Java对象。
优选的,作业转换系统,还包括:
提取模块,用于接收用户对xml文件的修改,并提取对应的修改项;
更新模块,用于基于修改项,对映射标准库进行更新;
第一映射模块,还执行包括如下操作:
当Java作业对象与多个Xsd对象存在映射关系时,将多个Xsd对象制成选取列表,并基于选取列表接收用户选取的Xsd对象;
和/或,
当Java作业对象与多个Xsd对象存在映射关系时,获取用户对于Xsd对象的历史选取记录及选取记录对应的时间值;
基于Xsd对象在选取记录的被选取的概率及时间值,确定Java作业对象对应的Xsd对象。
优选的,更新模块执行包括如下操作:
为当前工作的映射标准库制作镜像数据库和修改准备数据库;
将修改项进行编号并分类存储进修改准备数据库;
当修改准备数据库中任一分类的修改项的数目达到预设数量值时,和/或,当修改准备数据库中任一分类的修改项当前存储频率大于预设频率值时,提取分类的所有的修改项;
解析提取的修改项,筛选出作为更新依据的修改项;
基于修改项对镜像数据库进行修改,并在修改位置进行标记;
其中,解析提取的修改项,筛选出作为更新依据的修改项,包括:依次提取其中任一修改项,将提取的修改项与剩余的修改项进行比对,当剩余的修改项中有一个修改项与提取的修改项相同时,提取的修改项对应的权重值加一,以权重值最大的修改项作为更新依据;
分类的修改项当前存储频率通过下式计算出:
其中,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对象在选取记录的被选取的概率,α为概率对应的预设权重;β为频率对应的预设权重。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例中一种作业转换方法的示意图;
图2为本发明实施例中一种作业转换方法的流程图;
图3为本发明实施例中又一种作业转换方法的流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明实施例提供了一种作业转换方法,如图1所示,包括:
步骤S1:从数据管理平台获取作业信息;
步骤S2:解析作业信息,获取Java作业对象;
步骤S3:基于预设的映射标准库和Java作业对象,确定Xsd对象;
步骤S4:基于Xsd对象,生成xml文件。
上述技术方案的工作原理及有益效果为:
为了实现采用kettle全面替代原商用IBM DataStage,采用预设的映射标准库,将IBM DataStage中Java作业对象转换为kettle的xml文件;例如,预设的映射标准库可以为JAXB(java Architecture for XML Binding)是java提供处理XML与java对象映射的标准库。JAXB框架中提供两种编写XML和java对象交互的方法。其一,通过XSD(XML SchemaDefinition)文档生成Java类。其二,通过XSD所生成的java类(JAXB通过分析java类中的标记(annotation)),java对象实例化后再转换为相应的带数据的XML文档。
图2为应用本发明的一个具体案例,主要为从DMP[DMP(Data ManagementPlatform)数据管理平台]平台ds作业资源库获取作业信息,然后从数据库作业对象转化为xsd对象,最后生成xml。
本发明的作业转换方法,实现将存量作业转换为kettle作业,实现企业采用kettle全面替换商用IBM DataStage商用etl软件,真正将数据安全牢牢掌握在企业自身手中,防止数据丢失造成的一系列严重后果。
在一个实施例中,作业转换方法,还包括:
步骤S11:获取预先定义的对应存量作业场景的kettle作业的xml模板;
步骤S12:解析x ml模板,确定对应的xml的文档结构;
步骤S13:基于文档结构,生成对应的Xsd文件;
步骤S14:通过映射标准库,将Xsd文件转化为对应的Java对象。
上述技术方案的工作原理及有益效果为:
参见图3,预先定义好适应ds作业[存量作业]场景的kettle作业的xml模板,然后根据xml的文档结构,编写对应的xsd文件,然后通过jaxb将xsd文件转化为对应的java对象;实现了将kettle的xml文件转换为IBM DataStage中Java作业对象;为了使企业在采用kettle替换IBM DataStage的过度期间,还能正常使用IBM DataStage。
在一个实施例中,作业转换方法,还包括:
步骤S5:接收用户对xml文件的修改,并提取对应的修改项;
步骤S6:基于修改项,对映射标准库进行更新;
上述技术方案的工作原理及有益效果为:
为了实现企业对于映射标准库的个性化修改及定制,在使用预设的映射标准库将IBM DataStage中Java作业对象转换为kettle的xml文件;还可以接受用户对于xml文件的修改,以满足用户的实际需求,当用户修改时提取对应的修改项,后续采用修改项对映射标准库进行更新,使更新后的映射标准库更符合企业实际使用。
在一个实施例中,步骤S3:基于预设的映射标准库和Java作业对象,确定Xsd对象,包括:
当Java作业对象与多个Xsd对象存在映射关系时,将多个Xsd对象制成选取列表,并基于选取列表接收用户选取的Xsd对象;
和/或,
当Java作业对象与多个Xsd对象存在映射关系时,获取用户对于Xsd对象的历史选取记录及选取记录对应的时间值;
基于Xsd对象在选取记录的被选取的概率及时间值,确定Java作业对象对应的Xsd对象。
上述技术方案的工作原理及有益效果为:
当映射标准库中对于同一Java作业对象存在映射的多个Xsd对象时,可以通过两种方式实现,一种在转换过程中通过弹窗显示给用户进行选取,该方式通过用户的选取使映射关系更准确;一种是根据历史选取记录及选取记录对应的时间值进行智能选取,该方式提高了映射标准库调取映射关系的智能化,更加快捷。
在一个实施例中,步骤S6:基于修改项,对映射标准库进行更新,包括:
为当前工作的映射标准库制作镜像数据库和修改准备数据库;
将修改项进行编号并分类存储进修改准备数据库;
当修改准备数据库中任一分类的修改项的数目达到预设数量值时,和/或,当修改准备数据库中任一分类的修改项当前存储频率大于预设频率值时,提取分类的所有的修改项;
解析提取的修改项,筛选出作为更新依据的修改项;
基于修改项对镜像数据库进行修改,并在修改位置进行标记;
其中,解析提取的修改项,筛选出作为更新依据的修改项,包括:依次提取其中任一修改项,将提取的修改项与剩余的修改项进行比对,当剩余的修改项中有一个修改项与提取的修改项相同时,提取的修改项对应的权重值加一,以权重值最大的修改项作为更新依据;
分类的修改项当前存储频率通过下式计算出:
其中,m为分类中修改项的个数;ti+1为分类中第i+1个修改项的存储时间;ti为分类中第i个修改项的存储时间;f1表示分类的修改项当前存储频率;
作业转换方法还包括:
当镜像数据库修改完成后,将当前工作的映射标准库临时替换为镜像数据库一预设时间;
统计在预设时间内,对于标记位置的调取次数;
解析数据库替换后的修改项,确定标记位置的修改准确度,计算公式如下:
其中,T为标记位置的修改准确度;n0表示标记位置的调取次数;n1表示数据库替换后的修改项中标记位置被调取后仍进行修改的次数。
当修改准确度大于预设准确值时,将当前工作的映射标准库永久替换为镜像数据库。
上述技术方案的工作原理及有益效果为:
在对映射标准库前需要对修改项进行分析,即不能是出现修改项就要对映射标准库进行修改,这样会出现频繁修改映射标准库,并且也会基于个别的修改项进行修改,照成映射标准库的不准确。在对修改进行分析,主要采用归类总结的原则;依据Java作业对象的不同进行分类;当同一分类的修改项的数目达到预设数量值、或者同一分类的修改项的存储频繁时,基于该分类的修改项对映射标准库进行更新。在对映射标准库进行更新时,构建镜像数据库,对镜像数据库进行更新,不影响映射标准库的使用,实现在线更新;当镜像数据库更新完成后需要对镜像数据库进行试用,并以修改准确度对镜像数据库进行评价,当修改准确度大于预设准确度时将镜像数据库覆盖映射标准库,完成映射标准库的更新。
在一个实施例中,基于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对象在选取记录的被选取的概率,α为概率对应的预设权重;β为频率对应的预设权重。
上述技术方案的工作原理及有益效果为:
通过时间值确定Xsd对象被选取的频率;综合考虑Xsd对象被选取的频率和Xsd对象在选取记录的被选取的概率,确定Java作业对象对应的Xsd对象;实现选取的Xsd对象符合企业的期望,提高映射标准库调取映射关系的智能化。
本发明还提供一种作业转换系统,包括:
第一获取模块,用于从数据管理平台获取作业信息;
第一解析模块,用于解析作业信息,获取Java作业对象;
第一映射模块,用于基于预设的映射标准库和Java作业对象,确定Xsd对象;
第一输出模块,用于基于Xsd对象,生成xml文件。
上述技术方案的工作原理及有益效果为:
为了实现采用kettle全面替代原商用IBM DataStage,采用预设的映射标准库,将IBM DataStage中Java作业对象转换为kettle的xml文件;例如,预设的映射标准库可以为JAXB(java Architecture for XML Binding)是java提供处理XML与java对象映射的标准库。JAXB框架中提供两种编写XML和java对象交互的方法。其一,通过XSD(XML SchemaDefinition)文档生成Java类。其二,通过XSD所生成的java类(JAXB通过分析java类中的标记(annotation)),java对象实例化后再转换为相应的带数据的XML文档。
本发明的作业转换系统,实现将存量作业转换为kettle作业,实现企业采用kettle全面替换商用IBM DataStage商用etl软件,真正将数据安全牢牢掌握在企业自身手中,防止数据丢失造成的一系列严重后果。
在一个实施例中,作业转换系统,还包括:
第二获取模块,用于获取预先定义的对应存量作业场景的kettle作业的xml模板;
第二解析模块,用于解析x ml模板,确定对应的xml的文档结构;
第二生成模块,用于基于文档结构,生成对应的Xsd文件;
第二映射模块,用于通过映射标准库,将Xsd文件转化为对应的Java对象。
上述技术方案的工作原理及有益效果为:
预先定义好适应ds作业[存量作业]场景的kettle作业的xml模板,然后根据xml的文档结构,编写对应的xsd文件,然后通过jaxb将xsd文件转化为对应的java对象;实现了将kettle的xml文件转换为IBM DataStage中Java作业对象;为了使企业在采用kettle替换IBM DataStage的过度期间,还能正常使用IBM DataStage。
在一个实施例中,作业转换系统,还包括:
提取模块,用于接收用户对xml文件的修改,并提取对应的修改项;
更新模块,用于基于修改项,对映射标准库进行更新;
上述技术方案的工作原理及有益效果为:
为了实现企业对于映射标准库的个性化修改及定制,在使用预设的映射标准库将IBM DataStage中Java作业对象转换为kettle的xml文件;还可以接受用户对于xml文件的修改,以满足用户的实际需求,当用户修改时提取对应的修改项,后续采用修改项对映射标准库进行更新,使更新后的映射标准库更符合企业实际使用。
在一个实施例中,第一映射模块,还执行包括如下操作:
当Java作业对象与多个Xsd对象存在映射关系时,将多个Xsd对象制成选取列表,并基于选取列表接收用户选取的Xsd对象;
和/或,
当Java作业对象与多个Xsd对象存在映射关系时,获取用户对于Xsd对象的历史选取记录及选取记录对应的时间值;
基于Xsd对象在选取记录的被选取的概率及时间值,确定Java作业对象对应的Xsd对象。
上述技术方案的工作原理及有益效果为:
当映射标准库中对于同一Java作业对象存在映射的多个Xsd对象时,可以通过两种方式实现,一种在转换过程中通过弹窗显示给用户进行选取,该方式通过用户的选取使映射关系更准确;一种是根据历史选取记录及选取记录对应的时间值进行智能选取,该方式提高了映射标准库调取映射关系的智能化,更加快捷。
在一个实施例中,更新模块执行包括如下操作:
为当前工作的映射标准库制作镜像数据库和修改准备数据库;
将修改项进行编号并分类存储进修改准备数据库;
当修改准备数据库中任一分类的修改项的数目达到预设数量值时,和/或,当修改准备数据库中任一分类的修改项当前存储频率大于预设频率值时,提取分类的所有的修改项;
解析提取的修改项,筛选出作为更新依据的修改项;
基于修改项对镜像数据库进行修改,并在修改位置进行标记;
其中,解析提取的修改项,筛选出作为更新依据的修改项,包括:依次提取其中任一修改项,将提取的修改项与剩余的修改项进行比对,当剩余的修改项中有一个修改项与提取的修改项相同时,提取的修改项对应的权重值加一,以权重值最大的修改项作为更新依据;
分类的修改项当前存储频率通过下式计算出:
其中,m为分类中修改项的个数;ti+1为分类中第i+1个修改项的存储时间;ti为分类中第i个修改项的存储时间;f1表示分类的修改项当前存储频率;
作业转换方法还包括:
当镜像数据库修改完成后,将当前工作的映射标准库临时替换为镜像数据库一预设时间;
统计在预设时间内,对于标记位置的调取次数;
解析数据库替换后的修改项,确定标记位置的修改准确度,计算公式如下:
其中,T为标记位置的修改准确度;n0表示标记位置的调取次数;n1表示数据库替换后的修改项中标记位置被调取后仍进行修改的次数。
当修改准确度大于预设准确值时,将当前工作的映射标准库永久替换为镜像数据库。
上述技术方案的工作原理及有益效果为:
在对映射标准库前需要对修改项进行分析,即不能是出现修改项就要对映射标准库进行修改,这样会出现频繁修改映射标准库,并且也会基于个别的修改项进行修改,照成映射标准库的不准确。在对修改进行分析,主要采用归类总结的原则;依据Java作业对象的不同进行分类;当同一分类的修改项的数目达到预设数量值、或者同一分类的修改项的存储频繁时,基于该分类的修改项对映射标准库进行更新。在对映射标准库进行更新时,构建镜像数据库,对镜像数据库进行更新,不影响映射标准库的使用,实现在线更新;当镜像数据库更新完成后需要对镜像数据库进行试用,并以修改准确度对镜像数据库进行评价,当修改准确度大于预设准确度时将镜像数据库覆盖映射标准库,完成映射标准库的更新。
在一个实施例中,基于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对象在选取记录的被选取的概率,α为概率对应的预设权重;β为频率对应的预设权重。
上述技术方案的工作原理及有益效果为:
通过时间值确定Xsd对象被选取的频率;综合考虑Xsd对象被选取的频率和Xsd对象在选取记录的被选取的概率,确定Java作业对象对应的Xsd对象;实现选取的Xsd对象符合企业的期望,提高映射标准库调取映射关系的智能化。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
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对象被选取的频率,计算优先值,计算公式如下:
6.一种作业转换系统,其特征在于,包括:
第一获取模块,用于从所述数据管理平台获取作业信息;
第一解析模块,用于解析所述作业信息,获取Java作业对象;
第一映射模块,用于基于预设的映射标准库和所述Java作业对象,确定Xsd对象;
第一输出模块,用于基于所述Xsd对象,生成所述xml文件。
7.如权利要求1所述的作业转换系统,其特征在于,还包括:
第二获取模块,用于获取预先定义的对应存量作业场景的kettle作业的xml模板;
第二解析模块,用于解析所述xml模板,确定对应的xml的文档结构;
第二生成模块,用于基于所述文档结构,生成对应的所述Xsd文件;
第二映射模块,用于通过所述映射标准库,将所述Xsd文件转化为对应的Java对象。
8.如权利要求1所述的作业转换系统,其特征在于,还包括:
提取模块,用于接收用户对所述xml文件的修改,并提取对应的修改项;
更新模块,用于基于所述修改项,对所述映射标准库进行更新;
第一映射模块,还执行包括如下操作:
当所述Java作业对象与多个Xsd对象存在映射关系时,将多个Xsd对象制成选取列表,并基于所述选取列表接收用户选取的所述Xsd对象;
和/或,
当所述Java作业对象与多个Xsd对象存在映射关系时,获取用户对于所述Xsd对象的历史选取记录及选取记录对应的时间值;
基于所述Xsd对象在所述选取记录的被选取的概率及所述时间值,确定所述Java作业对象对应的所述Xsd对象。
9.如权利要求3所述的作业转换方法,其特征在于,所述更新模块执行包括如下操作:
为当前工作的所述映射标准库制作镜像数据库和修改准备数据库;
将所述修改项进行编号并分类存储进所述修改准备数据库;
当所述修改准备数据库中任一分类的所述修改项的数目达到预设数量值时,和/或,当所述修改准备数据库中任一分类的所述修改项当前存储频率大于预设频率值时,提取所述分类的所有的所述修改项;
解析提取的所述修改项,筛选出作为更新依据的所述修改项;
基于所述修改项对所述镜像数据库进行修改,并在修改位置进行标记;
其中,解析提取的所述修改项,筛选出作为更新依据的所述修改项,包括:依次提取其中任一所述修改项,将提取的修改项与剩余的所述修改项进行比对,当剩余的所述修改项中有一个所述修改项与提取的所述修改项相同时,提取的所述修改项对应的权重值加一,以所述权重值最大的所述修改项作为更新依据;
所述分类的所述修改项当前存储频率通过下式计算出:
其中,m为所述分类中所述修改项的个数;ti+1为所述分类中第i+1个所述修改项的存储时间;ti为所述分类中第i个所述修改项的存储时间;f1表示所述分类的所述修改项当前存储频率;
所述作业转换方法还包括:
当所述镜像数据库修改完成后,将当前工作的所述映射标准库临时替换为所述镜像数据库一预设时间;
统计在所述预设时间内,对于所述标记位置的调取次数;
解析数据库替换后的所述修改项,确定所述标记位置的修改准确度,计算公式如下:
其中,T为所述标记位置的修改准确度;n0表示所述标记位置的调取次数;n1表示数据库替换后的所述修改项中所述标记位置被调取后仍进行修改的次数。
当所述修改准确度大于预设准确值时,将当前工作的所述映射标准库永久替换为所述镜像数据库。
10.如权利要求8所述的作业转换系统,其特征在于,所述基于所述Xsd对象在所述选取记录的被选取的概率及所述时间值,确定所述Java作业对象对应的所述Xsd对象,包括:
基于所述时间值确定所述Xsd对象被选取的频率;
基于所述Xsd对象在所述选取记录的被选取的概率及所述Xsd对象被选取的频率,计算优先值,计算公式如下:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010827770.9A CN112035707B (zh) | 2020-08-17 | 2020-08-17 | 一种作业转换方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010827770.9A CN112035707B (zh) | 2020-08-17 | 2020-08-17 | 一种作业转换方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112035707A true CN112035707A (zh) | 2020-12-04 |
CN112035707B CN112035707B (zh) | 2021-03-30 |
Family
ID=73577625
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010827770.9A Active CN112035707B (zh) | 2020-08-17 | 2020-08-17 | 一种作业转换方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112035707B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1866253A (zh) * | 2005-01-31 | 2006-11-22 | 翁托普里塞有限公司 | 把Web服务映射到本体 |
CN101290625A (zh) * | 2008-06-11 | 2008-10-22 | 华东师范大学 | 一种xml文档的存储和检索方法 |
CN101639827A (zh) * | 2009-07-24 | 2010-02-03 | 北京中文在线文化发展有限公司 | 图书元数据生成方法 |
CN102929664A (zh) * | 2012-10-16 | 2013-02-13 | 南京通达海信息技术有限公司 | 一种基于xsd结构的通用数据交换方法 |
CN102937992A (zh) * | 2012-11-01 | 2013-02-20 | 上海方正数字出版技术有限公司 | 一种基于Java与XML数据库的对象映射转换设计方法 |
CN105701094A (zh) * | 2014-11-24 | 2016-06-22 | 北京航管科技有限公司 | 一种etl数据采集方法和装置 |
CN105787808A (zh) * | 2016-03-01 | 2016-07-20 | 中国电力科学研究院 | 基于泛型编程和反射机制的iec61968标准文档生成系统及方法 |
CN106910103A (zh) * | 2017-01-09 | 2017-06-30 | 杭州电子科技大学 | 一种公共自行车系统租赁点功能聚类方法 |
US20180307505A1 (en) * | 2016-03-08 | 2018-10-25 | Mastercard International Incorporated | Systems and methods for processing extensible markup language data during runtime |
US20190087758A1 (en) * | 2010-10-01 | 2019-03-21 | International Business Machines Corporation | High performance map editor for business analysts |
CN111367913A (zh) * | 2020-03-03 | 2020-07-03 | 青岛大学 | 一种面向全空间的数据模型的建模方法 |
-
2020
- 2020-08-17 CN CN202010827770.9A patent/CN112035707B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1866253A (zh) * | 2005-01-31 | 2006-11-22 | 翁托普里塞有限公司 | 把Web服务映射到本体 |
CN101290625A (zh) * | 2008-06-11 | 2008-10-22 | 华东师范大学 | 一种xml文档的存储和检索方法 |
CN101639827A (zh) * | 2009-07-24 | 2010-02-03 | 北京中文在线文化发展有限公司 | 图书元数据生成方法 |
US20190087758A1 (en) * | 2010-10-01 | 2019-03-21 | International Business Machines Corporation | High performance map editor for business analysts |
CN102929664A (zh) * | 2012-10-16 | 2013-02-13 | 南京通达海信息技术有限公司 | 一种基于xsd结构的通用数据交换方法 |
CN102937992A (zh) * | 2012-11-01 | 2013-02-20 | 上海方正数字出版技术有限公司 | 一种基于Java与XML数据库的对象映射转换设计方法 |
CN105701094A (zh) * | 2014-11-24 | 2016-06-22 | 北京航管科技有限公司 | 一种etl数据采集方法和装置 |
CN105787808A (zh) * | 2016-03-01 | 2016-07-20 | 中国电力科学研究院 | 基于泛型编程和反射机制的iec61968标准文档生成系统及方法 |
US20180307505A1 (en) * | 2016-03-08 | 2018-10-25 | Mastercard International Incorporated | Systems and methods for processing extensible markup language data during runtime |
CN106910103A (zh) * | 2017-01-09 | 2017-06-30 | 杭州电子科技大学 | 一种公共自行车系统租赁点功能聚类方法 |
CN111367913A (zh) * | 2020-03-03 | 2020-07-03 | 青岛大学 | 一种面向全空间的数据模型的建模方法 |
Non-Patent Citations (5)
Title |
---|
LWZ18642660013: "Java调用kettle的作业和转换", 《HTTPS://BLOG.CSDN.NET/LWZ18642660013/ARTICLE/DETAILS/104392207/》 * |
SHIJIAO GUO ET AL.: "Research on the translation from XSD to JSON schema", 《2017 IEEE 9TH INTERNATIONAL CONFERENCE ON COMMUNICATION SOFTWARE AND NETWORKS》 * |
XQHYS: "XML解析之JAXB (实现Java对象与XML的相互转换)", 《HTTPS://XQHYS.BLOG.CSDN.NET/ARTICLE/》 * |
彭崧: "基于XSD转换技术的数据交换实现", 《科技广场》 * |
秦英 等: "一种基于XML的数据转换方法的设计与实现", 《微型机与应用》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112035707B (zh) | 2021-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10853387B2 (en) | Data retrieval apparatus, program and recording medium | |
US6715130B1 (en) | Software requirements metrics and evaluation process | |
US20110161373A1 (en) | User Interface for Establishing Mappings from Internal Metadata to External Metadata | |
US8412671B2 (en) | System and method for developing a star schema | |
CN116383193A (zh) | 一种数据管理方法、装置、电子设备和存储介质 | |
US7822587B1 (en) | Hybrid database architecture for both maintaining and relaxing type 2 data entity behavior | |
CN112035707B (zh) | 一种作业转换方法及系统 | |
US11550712B2 (en) | Optimizing garbage collection based on survivor lifetime prediction | |
JP4287464B2 (ja) | システム基盤構成策定支援システム及び支援方法 | |
CN117592450A (zh) | 基于员工信息整合的全景档案生成方法及系统 | |
CN117493333A (zh) | 数据归档方法、装置、电子设备及存储介质 | |
CN115587098A (zh) | 一种智能识别图表数据的方法及系统 | |
CN115344755A (zh) | 数据标准中数据约束条件推荐方法及系统 | |
CN112559641B (zh) | 拉链表的处理方法及装置、可读存储介质、电子设备 | |
US20070179922A1 (en) | Apparatus and method for forecasting control chart data | |
US9047290B1 (en) | Computing a quantification measure associated with cases in a category | |
CN113673889A (zh) | 一种智能化数据资产识别的方法 | |
CN111475641A (zh) | 一种数据抽取方法、装置、存储介质及设备 | |
CN117251605B (zh) | 基于深度学习的多源数据查询方法及系统 | |
US20070022137A1 (en) | Data source business component generator | |
CN111339081B (zh) | 一种异构数据库库表目录的自动采集方法及系统 | |
US20240126770A1 (en) | Systems and Methods for Intelligent Automatic Filing of Documents in a Content Management System | |
EP4120097A1 (en) | Systems and methods for intelligent automatic filing of documents in a content management system | |
US20210042324A1 (en) | Data retrieval apparatus, program and recording medium | |
WO2019123732A1 (ja) | 分析支援方法、分析支援サーバ及び記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |