逻辑脚本的处理方法、装置、电子设备及存储介质制造方法及图纸

技术编号:27935230 阅读:24 留言:0更新日期:2021-04-02 14:15
本申请涉及大数据标签处理技术领域,具体而言,涉及一种逻辑脚本的处理方法、装置、电子设备及存储介质。该处理方法包括以下步骤:获取HQL控件中的逻辑脚本;创建本地的参数文件,并将所述参数文件传入到HDFS的文件系统中;其中,所述参数文件中包括控制变量名称及控制变量值;基于所述参数文件的路径和所述控制变量名称,读取所述HDFS的文件系统中的参数文件,并将所述控制变量值返回给HIVE;修改所述HQL控件中的逻辑脚本。本申请能够在不修改程序的基础上,既能处理计算现有标签的数据,也能处理部分需要修改的标签的数据,还可以回溯历史分区数据,方便灵活,能够提高开发以及维护的效率。

【技术实现步骤摘要】
逻辑脚本的处理方法、装置、电子设备及存储介质
本申请涉及大数据标签处理
,具体而言,涉及一种逻辑脚本的处理方法、装置、电子设备及存储介质。
技术介绍
在常见的标签或者指标的离线数据的ETL批量开发过程中,当调度任务发布之后,由于临时需求再单独的计算某些标签或者某些时间段的数据,就需要更改工作流脚本内容,重新发布调度,操作流程比较繁琐。目前许多开源的数据处理平台构建ETL的数据开发流程都是根据现有的数据控件,拖拽控件,使用有向箭头相连,编辑控件中的脚本的内容,构建一个类似于有向无环图的流程Job。进而通过调度程序去进行数据的流程计算处理。市面上常见的工具有DSS、Kettle、Azkaban等等。通常将标签逻辑使用HQL处理好之后,将开发好的Job通过调度程序进行调度,根据一定的时间规则(如每天/每周/每月/每年)去定时的跑批计算。对于回溯历史分区数据以及标签更新的种类等操作,很难便捷的去进行管控,只能多次修改定时调度的脚本,以清除式的插入数据的方式然后进行数据的全量跑批。一方面不够方便灵活,另一方面也在一定程度上占用集群资源。
技术实现思路
有鉴于此,本申请的目的在于提供一种逻辑脚本的处理方法及装置,以传参的形式对逻辑脚本进行控制,更加的方便灵活。第一方面,本申请实施例提供一种逻辑脚本的处理方法,包括以下步骤:获取HQL控件中的逻辑脚本;创建本地的参数文件,并将所述参数文件传入到HDFS的文件系统中,得到所述参数文件的存储路径;其中,所述参数文件中包括控制变量名称及控制变量值;基于所述参数文件的存储路径和所述控制变量名称,读取所述控制变量名称对应的控制变量值,并将所述控制变量值返回给HIVE;修改所述HQL控件中的逻辑脚本。优选的,所述HQL控件对应于DSS平台的至少一个工作流。优选的,在所述创建本地的参数文件,并将所述参数文件传入到HDFS的文件系统中,得到所述参数文件的存储路径的步骤之后,还包括步骤:在所述DSS平台的至少一个工作流上设置路径参数,使每个工作流分别对应一个所述参数文件。优选的,在所述修改所述HQL控件中的逻辑脚本的步骤之后,还包括步骤:将修改后的逻辑脚本发布到定时调度程序中,按照预设的时间参数运行。优选的,在所述基于所述参数文件的存储路径和所述控制变量名称,读取所述控制变量名称对应的控制变量值,并将所述控制变量值返回给HIVE的步骤中,还包括:自定义并运行UDF函数,并通过所述UDF函数调用所述HDFS的文件系统中的相关API接口,从而读取所述HDFS的文件系统中的参数文件。第二方面,本申请实施例提供一种逻辑脚本的处理装置,包括以下部分:获取模块,用于获取HQL控件中的逻辑脚本;编辑模块,用于创建本地的参数文件,并将所述参数文件传入到HDFS的文件系统中,得到所述参数文件的存储路径;其中,所述参数文件中包括控制变量名称及控制变量值;读取模块,用于基于所述参数文件的存储路径和所述控制变量名称,读取所述控制变量名称对应的控制变量值,并将所述控制变量值返回给HIVE;处理模块,用于修改所述HQL控件中的逻辑脚本。优选的,所述的处理装置还包括设置模块,用于在DSS平台的至少一个工作流上设置路径参数,使每个工作流分别对应一个所述参数文件。优选的,所述的处理装置还包括定时调度模块,用于将修改后的逻辑脚本发布到定时调度程序中,按照预设的时间参数运行。第三方面,本申请的实施例还提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述机器可读指令,以执行所述逻辑脚本的处理方法的步骤。第四方面,本申请的实施例还提供一种计算机可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行所述逻辑脚本的处理方法的步骤。本专利技术的有益效果是:创建本地的参数文件,通过读取参数文件中参数变量值去修改逻辑脚本,并通过修改后的逻辑脚本进行调度,从而实现在不修改程序的基础上,既能处理计算现有标签的数据,也能处理部分需要修改的标签的数据,还可以回溯历史分区数据,方便灵活,能够提高开发以及维护的效率。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本专利技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1为本申请实施例提供的逻辑脚本的处理方法的第一种流程示意图;图2为本申请实施例提供的逻辑脚本的处理方法的第二种流程示意图;图3为本申请实施例提供的逻辑脚本的处理方法的第三种流程示意图;图4为本申请实施例所提供的逻辑脚本的处理装置第一种结构示意图;图5为本申请实施例所提供的逻辑脚本的处理装置第二种结构示意图;图6为本申请实施例提供的一种电子设备的结构示意图。具体实施方式为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的每个其他实施例,都属于本申请保护的范围。对本申请文件中出现的技术术语及缩写解释如下:DSS:DatasphereStudio(微众银行开源的数据处理平台);ETL:Extract-Transform-Load,将数据从来源端经过抽取、转换、加载至目的端的过程;Hadoop:一种分布式系统基础架构;HIVE:基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载;HQL:HIVE的一种面向对象的查询语言,一种类SQL语言;Sqoop:关系型数据库到HIVE之间的数据导入、导出工具;Waterdrop:一个能够进行实时数据处理的产品,构建于ApacheSpark之上,可以用来将数据从HIVE导出到ClickHouse;UDF:HIVE的用户自定义函数;HDFS:开源大数据框架Hadoop的一个组件,用来做分布式存储。下面结合附图,对本专利技术的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。本申请可应用于标签或者指标的离线数据的ETL批量开发过程中。在此过程中,当调度任务发布之后,由于临时需求再单独的计算某些本文档来自技高网...

【技术保护点】
1.一种逻辑脚本的处理方法,其特征在于,包括以下步骤:/n获取HQL控件中的逻辑脚本;/n创建本地的参数文件,并将所述参数文件传入到HDFS的文件系统中,得到所述参数文件的存储路径;其中,所述参数文件中包括控制变量名称及控制变量值;/n基于所述参数文件的存储路径和所述控制变量名称,读取所述控制变量名称对应的控制变量值,并将所述控制变量值返回给HIVE;/n修改所述HQL控件中的逻辑脚本。/n

【技术特征摘要】
1.一种逻辑脚本的处理方法,其特征在于,包括以下步骤:
获取HQL控件中的逻辑脚本;
创建本地的参数文件,并将所述参数文件传入到HDFS的文件系统中,得到所述参数文件的存储路径;其中,所述参数文件中包括控制变量名称及控制变量值;
基于所述参数文件的存储路径和所述控制变量名称,读取所述控制变量名称对应的控制变量值,并将所述控制变量值返回给HIVE;
修改所述HQL控件中的逻辑脚本。


2.根据权利要求1所述的处理方法,其特征在于,所述HQL控件对应于DSS平台的至少一个工作流。


3.根据权利要求2所述的处理方法,其特征在于,在所述创建本地的参数文件,并将所述参数文件传入到HDFS的文件系统中,得到所述参数文件的存储路径的步骤之后,还包括步骤:
在所述DSS平台的至少一个工作流上设置路径参数,使每个工作流分别对应一个所述参数文件。


4.根据权利要求1所述的处理方法,其特征在于,在所述修改所述HQL控件中的逻辑脚本的步骤之后,还包括步骤:
将修改后的逻辑脚本发布到定时调度程序中,按照预设的时间参数运行。


5.根据权利要求1所述的处理方法,其特征在于,在所述基于所述参数文件的存储路径和所述控制变量名称,读取所述控制变量名称对应的控制变量值,并将所述控制变量值返回给HIVE的步骤中,还包括:
自定义并运行UDF函数,并通过所述UDF函数调用所述HDFS的文件系统中的相关API接口,从而...

【专利技术属性】
技术研发人员:任亮傅雨梅王行行文齐辉
申请(专利权)人:北京知因智慧科技有限公司
类型:发明
国别省市:北京;11

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

1