一种数据转换的方法、装置及存储介质制造方法及图纸

技术编号:24206334 阅读:17 留言:0更新日期:2020-05-20 14:49
本申请提供一种数据转换的方法、装置及存储介质,用以提高数据转换的效率,及数据转换的灵活性。在本申请中响应数据转换指令,将数据转换指令对应的目标表信息、数据转换指令对应的原始表,以及数据转换指令对应的转换模式的预设基础脚本进行组合,生成目标脚本;调用NiFi工具的API接口创建任务流,并在任务流中设置目标脚本,以在运行任务流时,通过预先开发的处理节点执行目标脚本,进行数据转换。预先开发处理节点,以执行目标脚本,目标脚本是通过数据转换指令生成的;处理节点可以执行不同数据转换指令生成的目标脚本,具有通用性,且每次进行数据转换时,无需用户编写定制化脚本,简化操作,提高数据转换的灵活性和数据转换效率。

A method, device and storage medium of data conversion

【技术实现步骤摘要】
一种数据转换的方法、装置及存储介质
本申请涉及计算机
,提供一种数据转换的方法、装置及存储介质。
技术介绍
数据转换是将数据从一种表示形式转变为另一种表示形式,例如,软件的全面升级带来数据库的全面升级,每一个软件对其后面的数据库的构架与数据的存诸形式都是不相同的,需要经常对数据进行导入、导出和数据转换。再例如,由于数据量的不断增加,原来数据构架设计不合理,不能满足各方面的要求,由于数据库的更换,数据结构的更换,从而需要数据本身的转换。目前,在进行数据转换时,针对不同的数据转换任务,在每个数据转换的任务流中都增加一个业务定制化脚本;执行业务定制化脚本,进行数据转换;业务定制化脚本是用户自身编写的程序代码,仅能针对指定数据进行特定转换。需要对每个任务流增加业务定制化脚本,降低了数据转换的灵活性和数据转换效率。
技术实现思路
本申请实施例提供一种数据转换的方法、装置及存储介质,用以提高数据转换的效率,及数据转换的灵活性。第一方面,本申请提供一种数据转换的方法,该方法包括:响应数据转换指令,将数据转换指令对应的目标表信息、数据转换指令对应的原始表,以及数据转换指令对应的转换模式预设基础脚本进行组合,生成目标脚本;调用NiFi工具的API(ApplicationProgrammingInterface,应用程序接口)接口创建任务流,并在任务流中设置目标脚本,以在运行任务流时,通过预先开发的处理节点执行目标脚本,进行数据转换。第二方面,本申请提供一种数据转换的方法,该方法包括:响应创建任务流的指令,基于预先创建的转换模板创建任务流,并在任务流中设置目标脚本,其中,目标脚本是数据治理平台在响应数据转换指令后,根据数据转换指令对应的目标表信息、数据转换指令对应的原始表,以及数据转换指令对应的转换模式预设基础脚本进行组合生成的;响应运行任务流的指令,执行目标脚本,读取目标脚本中原始表的数据,确定需要进行数据转换的数据;将需要进行数据转换的数据转换成目标数据,并写入目标脚本对应的目标表中。第三方面,本申请实施例提供一种数据转换的装置,该装置包括:响应模块,用于响应数据转换指令,将数据转换指令对应的目标表中的信息、数据转换指令对应的原始表,以及数据转换指令对应的转换模式预设基础脚本进行组合,生成目标脚本;调用模块,用于调用NiFi工具的应用程序接口API接口创建任务流,并在任务流中设置目标脚本,以在运行任务流时,通过预先开发的处理节点执行目标脚本,进行数据转换。在一种可能的实现方式中,响应模块具体用于:将目标表中的各个字段名,以及各个字段名对应的转换函数,按照字段名与转换函数之间的对应关系,填写到转换模式的预设基础脚本的第一设定位置上;以及将原始表的数据填写到转换模式的预设基础脚本的第二设定位置上。在一种可能的实现方式中,响应模块通过如下方式确定目标表信息:响应配置字段变换指令,根据配置字段变换指令对应的字段名及每个字段名对应的转换函数,确定目标表信息;其中,字段名是在对原始表配置组合后,确定的备选字段名中选择的。在一种可能的实现方式中,调用模块具体用于:调用NiFi工具的API接口创建任务流,并在任务流创建成功后,调用NiFi工具的API接口,在任务流中设置目标脚本。在一种可能的实现方式中,调用模块还用于:调用NiFi工具的API接口创建任务流,并在任务流中设置目标脚本后,响应目标脚本设置成功指令,并发送运行任务流的指令,以在运行任务流时,通过预先开发的处理节点执行目标脚本,根据目标表中的字段名在原始表的数据中确定需要进行数据转换的数据,并对需要进行数据转换的数据进行数据转换。第四方面,本申请实施例提供一种数据转换的装置,该装置包括:创建模块,用于响应创建任务流的指令,基于预先创建的转换模板创建任务流,并在任务流中设置目标脚本,其中,目标脚本是数据治理平台在响应数据转换指令后,根据数据转换指令对应的目标表信息、数据转换指令对应的原始表,以及数据转换指令对应的转换模式预设基础脚本进行组合生成的;读取模块,用于响应运行任务流的指令,执行目标脚本,读取目标脚本中原始表的数据,确定需要进行数据转换的数据;转换模块,用于将需要进行数据转换的数据转换成目标数据,并写入目标脚本对应的目标表中。在一种可能的实现方式中,读取模块具体用于:通过预先开发的处理节点执行目标脚本,读取目标脚本中原始表的数据,根据目标脚本中目标表的字段名,在原始表的数据中确定需要进行数据转换的数据。在一种可能的实现方式中,读取模块还用于:根据目标脚本中目标表的字段名,以及目标脚本中预设基础脚本的运算逻辑,在原始表的数据中确定需要进行数据转换的数据。在一种可能的实现方式中,读取模块具体用于:若目标脚本中预设基础脚本的运算逻辑为覆盖模式的预设基础脚本的运算逻辑,需要进行数据转换的数据为原始表中存储且与目标表存储的字段名对应的数据;若目标脚本中预设基础脚本的运算逻辑为追加模式的预设基础脚本的运算逻辑,则需要进行数据转换的数据是根据目标表数据的更新标识,确定最大更新时间,并在原始表中的数据中确定更新时间大于最大时间,且原始表和目标表中同时存储的字段名对应的数据;若目标脚本中预设基础脚本的运算逻辑为去重追加模式的预设基础脚本的运算逻辑,则需要进行数据转换的数据是根据目标表数据的更新标识,确定最大更新时间,并在原始表中的数据中确定更新时间大于最大时间,且原始表和目标表中同时存储的字段名对应的数据。在一种可能的实现方式中,转换模块具体用于:将需要进行数据转换的数据,按照目标脚本的目标表中存储的与需要进行数据转换的数据的字段名对应的转换函数,将需要进行数据转换的数据转换成目标数据,并写入目标脚本对应的目标表中。在一种可能的实现方式中,转换模块还用于:将转换后的数据写入目标表中之前,若目标脚本中预设基础脚本的运算逻辑为覆盖模式的预设基础脚本的运算逻辑,则将目标表中存储的数据删除。在一种可能的实现方式中,转换模块还用于:当目标脚本中预设基础脚本的运算逻辑为去重追加模式的预设基础脚本的运算逻辑时,若确定需要进行数据转换的数据对应的主键在目标表中存在,则将使用转换后的目标数据替换目标表中主键对应的数据,否则将转换后的数据写入目标脚本对应的目标表中。第五方面,本申请实施例提供一种数据转换的设备,包括:存储器和处理器,其中,存储器,用于存储计算机指令;处理器,用于执行计算机指令以实现上述数据转换的方法。第六方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有计算机指令,计算机指令被处理器执行时实现本申请实施例提供的数据转换的方法。本申请有益效果如下:在本申请中,根据数据转换指令对应的目标表信息,数据转换指令对应的原始表,以及数据转换指令中对应的转换模式的预设基础脚本本文档来自技高网...

【技术保护点】
1.一种数据转换的方法,其特征在于,该方法包括:/n响应数据转换指令,将所述数据转换指令对应的目标表信息、所述数据转换指令对应的原始表,以及所述数据转换指令对应的转换模式的预设基础脚本进行组合,生成目标脚本;/n调用NiFi工具的应用程序接口API接口创建任务流,并在所述任务流中设置所述目标脚本,以在运行所述任务流时,通过预先开发的处理节点执行所述目标脚本,进行数据转换。/n

【技术特征摘要】
1.一种数据转换的方法,其特征在于,该方法包括:
响应数据转换指令,将所述数据转换指令对应的目标表信息、所述数据转换指令对应的原始表,以及所述数据转换指令对应的转换模式的预设基础脚本进行组合,生成目标脚本;
调用NiFi工具的应用程序接口API接口创建任务流,并在所述任务流中设置所述目标脚本,以在运行所述任务流时,通过预先开发的处理节点执行所述目标脚本,进行数据转换。


2.如权利要求1所述的方法,其特征在于,所述将所述数据转化指令对应的目标表信息、所述数据转换指令对应的原始表,以及所述数据转换指令对应的转换模式的预设基础脚本进行组合,生成目标脚本,包括:
将所述目标表中的各个字段名,以及所述各个字段名对应的转换函数,按照字段名与转换函数之间的对应关系,填写到所述转换模式的预设基础脚本的第一设定位置上;以及
将所述原始表的数据填写到所述转换模式的预设基础脚本的第二设定位置上。


3.如权利要求1或2所述的方法,其特征在于,所述目标表信息是通过如下方式确定的:
响应配置字段变换指令,根据所述配置字段变换指令对应的字段名及每个字段名对应的转换函数,确定所述目标表信息;
其中,所述字段名是在对原始表配置表组合后,确定的备选字段名中选择的。


4.如权利要求1所述的方法,其特征在于,所述调用NiFi工具的API接口创建任务流,并在所述任务流中设置所述目标脚本,包括:
调用所述NiFi工具的API接口创建任务流,并在所述任务流创建成功后,调用所述NiFi工具的API接口,在所述任务流中设置所述目标脚本。


5.如权利要求1所述的方法,其特征在于,所述调用NiFi工具的API接口创建任务流,并在所述任务流中设置所述目标脚本后,还包括:
响应目标脚本设置成功指令,并发送运行任务流的指令,以在运行所述任务流时,通过预先开发的处理节点执行所述目标脚本,根据所述目标表中的字段名在所述原始表的数据中确定需要进行数据转换的数据,并对所述需要进行数据转换的数据进行数据转换。


6.一种数据转换的方法,其特征在于,该方法包括:
响应创建任务流的指令,基于预先创建的转换模板创建任务流,并在所述任务流中设置目标脚本,其中,所述目标脚本是数据治理平台在响应数据转换指令后,根据所述数据转换指令对应的目标表信息、所述数据转换指令对应的原始表,以及所述数据转换指令对应的转换模式的预设基础脚本进行组合生成的;
响应运行任务流的指令,执行所述目标脚本,读取所述目标脚本中原始表的数据,确定需要进行数据转换的数据;
将所述需要进行数据转换的数据转换成目标数据,并写入所述目标脚本对应的目标表中。


7.如权利要求6所述的方法,其特征在于,所述响应运行任务流的指令,执行所述目标脚本,读取所述目标脚本中原始表的数据,确定需要进行数据转换的数据,包括:
通过预先开发的处理节点执行所述目标脚本,读取所述目标脚本中原始表的数据,根据所述目标脚本中目标表的字段名,在所述原始表的数据中确定需要进行数据转换的数据。


8.如权利要求7所述的方法,其特征在于,所述根据所述目标脚本中目标表的字段名,在所述原始表的数据中确定需要进行数据转换的数据,还包括:
根据所述目标脚本中目标表的字段名,以及所述目标脚本中预设基础脚本的运算逻辑,在所述原始表的数据中确定需要进行数据转换的数据。


9.如权利要求8所述的...

【专利技术属性】
技术研发人员:缪洲光
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1