事件处理方法、装置、电子设备及存储介质制造方法及图纸

技术编号:39300096 阅读:14 留言:0更新日期:2023-11-12 15:51
本发明专利技术实施例涉及一种事件处理方法、装置、电子设备及存储介质,包括:获取用户针对待处理事件输入的事件信息;利用预置的结构化查询语言SQL语法规则对所述事件信息进行处理,得到所述待处理事件对应的SQL语句;基于所述SQL语句执行所述待处理事件。由此,可以实现用户仅输入一些简单的事件信息即可自动生成待处理事件的SQL语句,以实现对复杂事件信息的处理,降低学习成本,简化了用户操作。简化了用户操作。简化了用户操作。

【技术实现步骤摘要】
事件处理方法、装置、电子设备及存储介质


[0001]本专利技术实施例涉及计算机
,尤其涉及一种事件处理方法、装置、电子设备及存储介质。

技术介绍

[0002]目前,Flink引擎在处理复杂事件时,会向用户提供SDK(Software Development Kit,软件开发工具包),用户可根据SDK编写程序,以实现自定义的复杂事件处理。
[0003]然而,在上述复杂事件的处理方式中,需要用户熟悉Flink引擎的SDK,以及Java或者Scala编程语言,并通过maven或者sbt等打包技术,将编写好的程序打包提交给Flink引擎执行。
[0004]由此可见,现有技术中对复杂事件的处理不仅过程复杂,且学习成本较高。

技术实现思路

[0005]鉴于此,为解决上述全部的技术问题或者部分的技术问题,本专利技术实施例提供一种事件处理方法、装置、电子设备及存储介质。
[0006]第一方面,本专利技术实施例提供一种事件处理方法,包括:
[0007]获取用户针对待处理事件输入的事件信息;
[0008]利用预置的结构化查询语言SQL语法规则对所述事件信息进行处理,得到所述待处理事件对应的SQL语句;
[0009]基于所述SQL语句执行所述待处理事件。
[0010]在一可能的实施方式中,所述利用预置的SQL语法规则对所述事件信息进行处理,得到所述待处理事件对应的SQL语句,包括:
[0011]加载SQL生成器;
[0012]将所述预置的SQL语法规则和所述事件信息输入至所述SQL生成器,得到所述SQL生成器输出的SQL语句。
[0013]在一可能的实施方式中,所述基于所述SQL语句执行所述待处理事件,包括:
[0014]对所述SQL语句进行解析,得到所述待处理事件对应的代码文件;
[0015]执行所述代码文件,以执行所述待处理事件。
[0016]在一可能的实施方式中,所述对所述SQL语句进行解析,得到所述待处理事件对应的代码文件,包括:
[0017]对所述SQL语句进行解析,得到所述SQL语句的语法树;
[0018]基于所述语法树将所述SQL语句转换为RelNode语句;
[0019]将所述RelNode语句转化为所述待处理事件对应的代码文件。
[0020]在一可能的实施方式中,所述执行所述代码文件,以执行所述待处理事件,包括:
[0021]将所述代码文件提交至Flink引擎,以由所述Flink引擎执行所述代码文件,以执行所述待处理事件。
[0022]第二方面,本专利技术实施例提供一种事件处理装置,包括:
[0023]信息获取模块,用于获取用户针对待处理事件输入的事件信息;
[0024]语句确定模块,用于利用预置的结构化查询语言SQL语法规则对所述事件信息进行处理,得到所述待处理事件对应的SQL语句;
[0025]语句执行模块,用于基于所述SQL语句执行所述待处理事件。
[0026]在一可能的实施方式中,所述语句确定模块,包括:
[0027]加载子模块,用于加载SQL生成器;
[0028]确定子模块,用于将所述预置的SQL语法规则和所述事件信息输入至所述SQL生成器,得到所述SQL生成器输出的SQL语句。
[0029]在一可能的实施方式中,所述语句执行模块,包括:
[0030]语句解析子模块,用于对所述SQL语句进行解析,得到所述待处理事件对应的代码文件;
[0031]文件执行子模块,用于执行所述代码文件,以执行所述待处理事件。
[0032]在一可能的实施方式中,所述语句解析子模块,具体用于:
[0033]对所述SQL语句进行解析,得到所述SQL语句的语法树;
[0034]基于所述语法树将所述SQL语句转换为RelNode语句;
[0035]将所述RelNode语句转化为所述待处理事件对应的代码文件。
[0036]在一可能的实施方式中,所述文件执行子模块,具体用于:
[0037]将所述代码文件提交至Flink引擎,以由所述Flink引擎执行所述代码文件,以执行所述待处理事件。
[0038]第三方面,本专利技术实施例提供一种电子设备,包括:处理器和存储器,所述处理器用于执行所述存储器中存储的事件处理程序,以实现第一方面中任一项所述的事件处理方法。
[0039]第四方面,本专利技术实施例提供一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现第一方面中任一项所述的事件处理方法。
[0040]本专利技术实施例提供的技术方案,通过获取用户针对待处理事件输入的事件信息,利用预置的SQL语法规则对事件信息进行处理,得到待处理事件对应的SQL语句,基于SQL语句执行待处理事件。由此,可实现用户输入一些简单的事件信息即可自动生成待处理事件的SQL语句,而无需再如现有技术中用户需要熟悉Flink引擎的SDK,以及Java或者Scala编程语言,手动编写处理复杂事件的程序,如此,简化了用户操作,降低了用户的学习成本。
附图说明
[0041]图1为本专利技术实施例提供的一种事件处理方法的实施例流程图;
[0042]图2为本专利技术实施例提供的一种事件处理装置的实施例框图;
[0043]图3为本专利技术实施例提供的一种电子设备的结构示意图。
具体实施方式
[0044]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例
中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0045]下面结合附图以具体实施例对本专利技术提供的事件处理方法做进一步的解释说明,实施例并不构成对本专利技术实施例的限定。
[0046]参见图1,为本专利技术实施例提供的一种事件处理方法的实施例流程图。如图1所示,该流程可包括以下步骤:
[0047]步骤101、获取用户针对待处理事件输入的事件信息。
[0048]其中,上述用户针对待处理事件输入的事件信息可包括但不限于:表名、分区字段、排序字段、模式、输出字段定义、输出方式、下一个匹配的开始位置、模式变量定义。
[0049]举例来说,假设用户要统计股票不断下降的时期,那么,用户输入的事件信息可以包括以下内容:
[0050]表名:Ticker;
[0051]分区字段:symbol;
[0052]排序字段:rowtime;
[0053]模式:START_ROW PRICE_DOWN+PRICE_UP;
[0054]输出字段定义:
[0055]START_ROW.rowtime AS start_tstamp,
[00本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种事件处理方法,其特征在于,所述方法包括:获取用户针对待处理事件输入的事件信息;利用预置的结构化查询语言SQL语法规则对所述事件信息进行处理,得到所述待处理事件对应的SQL语句;基于所述SQL语句执行所述待处理事件。2.根据权利要求1所述的方法,其特征在于,所述利用预置的SQL语法规则对所述事件信息进行处理,得到所述待处理事件对应的SQL语句,包括:加载SQL生成器;将所述预置的SQL语法规则和所述事件信息输入至所述SQL生成器,得到所述SQL生成器输出的SQL语句。3.根据权利要求1所述的方法,其特征在于,所述基于所述SQL语句执行所述待处理事件,包括:对所述SQL语句进行解析,得到所述待处理事件对应的代码文件;执行所述代码文件,以执行所述待处理事件。4.根据权利要求3所述的方法,其特征在于,所述对所述SQL语句进行解析,得到所述待处理事件对应的代码文件,包括:对所述SQL语句进行解析,得到所述SQL语句的语法树;基于所述语法树将所述SQL语句转换为RelNode语句;将所述RelNode语句转化为所述待处理事件对应的代码文件。5.根据权利要求3所述的方法,其特征在于,所述执行所述代码文件,以执行所述待处理事件,包括:将所述代码文件提交至Flink引擎,以由所述Fl...

【专利技术属性】
技术研发人员:朱学通
申请(专利权)人:北京国双科技有限公司
类型:发明
国别省市:

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

1