CN114297230A - 数据处理方法、装置、设备及介质 - Google Patents
数据处理方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN114297230A CN114297230A CN202111636118.XA CN202111636118A CN114297230A CN 114297230 A CN114297230 A CN 114297230A CN 202111636118 A CN202111636118 A CN 202111636118A CN 114297230 A CN114297230 A CN 114297230A
- Authority
- CN
- China
- Prior art keywords
- function
- attribute
- target
- preset
- parameter
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开实施例涉及一种数据处理方法、装置、设备及介质,其中该方法包括:获取本地数据库的数据处理语句,并提取处理语句中的目标函数和目标数据参数;判断目标函数是否为本地数据库对应的本地函数;若不是本地函数,则获取目标函数的函数属性;判断函数属性中是否包括预设的第一属性;若包括第一属性,则判断目标数据参数是否包含与第一属性对应的预设参数;若包含预设参数,则确定数据处理语句的查询值为与预设参数对应的预设值。由此,对于外部的处理函数可以预先进行函数的优化,对无需在外部执行的函数直接获取对应的执行结果,提升了数据处理效率,且降低了算力的消耗。
Description
技术领域
本公开涉及数据处理技术领域,尤其涉及一种数据处理方法、装置、设备及介质。
背景技术
数据库可以看作为按照数据结构来组织、存储和管理数据的仓库。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。数据库对大量数据的管理可以通过本地的工作表函数来执行,也可以通过定义其他外部函数来实现一些复杂的数据管理功能。
相关技术中,若是数据库在SQL语句中支持访问外部函数,则需要直接调用外部数据源,在外部数据源中拉取外部函数进行有关数据处理。
然而,上述在访问外部函数时直接调用外部数据源的方式,外部数据源的调用以及运行都需要大量的算力,并且,导致有关数据的处理效率不高。
发明内容
为了解决上述技术问题,本公开提供了一种数据处理方法、装置、设备及介质,对于外部的处理函数可以预先进行函数的优化,对无需在外部执行的函数直接获取对应的执行结果,提升了数据处理效率,且降低了算力的消耗。
本公开实施例提供了一种数据处理方法,所述方法包括:获取本地数据库的数据处理语句,并提取所述处理语句中的目标函数和目标数据参数;判断所述目标函数是否为所述本地数据库对应的本地函数;
若不是所述本地函数,则获取所述目标函数的函数属性;判断所述函数属性中是否包括预设的第一属性;若包括所述第一属性,则判断所述目标数据参数是否包含与所述第一属性对应的预设参数;若包含所述预设参数,则确定所述数据处理语句的查询值为与所述预设参数对应的预设值。
本公开实施例还提供了一种数据处理装置,所述装置包括:提取模块,用于获取本地数据库的数据处理语句,并提取所述处理语句中的目标函数和目标数据参数;第一判断模块,用于判断所述目标函数是否为所述本地数据库对应的本地函数;获取模块,用于在不是所述本地函数时,获取所述目标函数的函数属性;第二判断模块,用于判断所述函数属性中是否包括预设的第一属性;第三判断模块,用于在包括所述第一属性时,判断所述目标数据参数是否包含与所述第一属性对应的预设参数;确定模块,用于在包含所述预设参数时,确定所述数据处理语句的查询值为与所述预设参数对应的预设值。
本公开实施例还提供了一种电子设备,所述电子设备包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现如本公开实施例提供的数据处理方法。
本公开实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行如本公开实施例提供的数据处理方法。
本公开实施例提供的技术方案与现有技术相比具有如下优点:
本公开实施例提供的数据处理方案,获取本地数据库的数据处理语句,并提取处理语句中的目标函数和目标数据参数,判断目标函数是否为本地数据库对应的本地函数,若不是本地函数,则获取目标函数的函数属性,进而,判断函数属性中是否包括预设的第一属性,若包括第一属性,则判断目标数据参数是否包含与第一属性对应的预设参数,进而,若包含预设参数,则确定数据处理语句的查询值为与预设参数对应的预设值。由此,对于外部的处理函数可以预先进行函数的优化,对无需在外部执行的函数直接获取对应的执行结果,提升了数据处理效率,且降低了算力的消耗。
附图说明
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1为本公开实施例提供的一种数据处理方法的流程示意图;
图2为本公开实施例提供的另一种数据处理方法的流程示意图;以及
图3为本公开实施例提供的一种数据处理装置的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
为了解决上述问题,本公开实施例提供了一种数据处理方法,下面结合具体的实施例对该方法进行介绍。
图1为本公开实施例提供的一种数据处理方法的流程示意图,该方法可以由数据处理装置执行,其中该装置可以采用软件和/或硬件实现,一般可集成在电子设备中。如图1所示,该方法包括:
步骤101,获取本地数据库的数据处理语句,并提取处理语句中的目标函数和目标数据参数;
在本实施例中,获取本地数据库在数据处理语句即SQL语句,该处理语句包含当前数据处理请求对应的目标函数以及目标数据参数。目标函数为进行数据处理的具体函数,目标数据参数对应于待处理的数据,或者待处理的数据在对应表格中的工作区域(几行几列等)。
举例而言,当数据处理语句为Select func@dblink(column1,column2)fromtableA,则其中,目标函数为func,dblink:数据库中创建的一种对象,指定了如何连接其他数据库,column1,column2为目标数据参数,对应于待处理的数据所在表及其所在表区域。
步骤102,判断目标函数是否为本地数据库对应的本地函数;
在本实施例中,判断目标函数是否为本地数据库对应的本地函数,若不是本地函数,则意味着可能需要调用外部数据源,因此,为了降低算力的消耗,以及提高数据处理效率,则可以进一步执行以前优化处理。
在本公开的一个实施例中,若是目标函数为本地数据库对应的本地函数,则也可以执行优化处理,该优化处理包括对外部函数的优化处理,其实现原理类似,在此不再赘述。
需要说明的是,在不同的应用场景中,判断目标函数是否为本地数据库对应的本地函数的方式不同,示例如下:
示例一:
在本示例中,预先构建本地数据库的本地函数集合,判断目标函数是否属于本地函数集合,若是不属于本地函数集合,则确定目标函数为外部函数。
示例二:
在本示例中,若是每个函数都携带有其所属数据库的标识,则提取目标函数携带的第一标识,进而获取本地数据库的第二标识,判断第一标识和第二标识是否一致,若是不一致,则确定目标函数为外部函数。
步骤103,若不是本地函数,则获取目标函数的函数属性;
其中,函数属性可以包括strict属性和immutable属性等。
在一些可能的实施例中,预先在远程预设的云服务器中存储每个函数的函数属性,因此,在本实施例中,向预设的云服务器发送目标函数的属性查询请求,比如,获取目标函数的函数标识,该函数标识包括但不限于函数名等可以唯一表示函数的信息,进而,获取云服务器响应于属性查询请求反馈的函数属性。
在实际执行过程中,还可以在获取目标函数的函数属性之前,对目标函数的合法性进行验证,即获取预设的外部数据源函数列表,判断目标函数是否属于外部数据源函数列表,若不属于外部数据源函数列表则报错处理,若属于外部数据源函数列表,则获取目标数据参数的第一参数类型,查询目标函数的预设的第二参数类型,确定第一参数类型和第二参数类型匹配,只有匹配时才获取目标函数的函数属性,否则,则进行报错处理。
步骤104,判断函数属性中是否包括预设的第一属性;
步骤105,若包括第一属性,则判断目标数据参数是否包含与第一属性对应的预设参数;
步骤106,若包含预设参数,则确定数据处理语句的查询值为与预设参数对应的预设值。
可以理解,对于第一属性的目标函数,则该目标函数进行数据处理时,其输出值与特定的输入值唯一对应,即若是函数属性中包括预设的第一属性,则判断目标数据参数是否包含与第一属性对应的预设参数,若是包含预设参数,则该目标函数的输出值固定,因此,直接确定数据处理语句的查询值为与预设参数对应的预设值,从而,无需在外部数据源再执行该目标函数,提升了数据处理效率,且降低了对算力的消耗。
举例而言,若是第一属性为strict属性,则第一属性对应的预设参数为空值参数,即为NULL,则当目标数据参数包括NULL,则直接将数据处理语句的查询值确定为NULL。
在本公开的一个实施例中,如图2所示,在判断函数属性中是否包括预设的第一属性之后,还包括:
步骤201,若不包括预设的第一属性,则判断函数属性中是否包括预设的第二属性。
在本实施例中,若是不包含预设的第一属性,则判断函数属性中是否包括预设的第二属性。
其中,第二属性的目标函数可以基于输入的同样的目标数据参数得到相同结果的执行值。
步骤202,若包含第二属性,则根据目标数据参数查询与预设查询结果数据库。
在本实施例中,若包含第二属性,则根据目标数据参数查询与预设查询结果数据库,该查询结果数据库中包含了第二属性的每个外部函数,以及每个外部函数与不同的数据参数对应的执行值。
步骤203,若是查询到与目标数据参数匹配的匹配值,则确定数据处理语句的查询值为匹配值。
在本实施例中,若是查询到与目标数据参数匹配的匹配值,则确定数据处理语句的查询值为匹配值,由此,无需再次执行对应的目标函数即可得到对应的数据处理结果值。
举例而言,若是第二属性为immutable,则在执行阶段,对同样的输入的目标数据参数,得到的执行结果值是一样的,因此,仅仅需要历史执行一次即可。同样的参数可以执行一次,不需要反馈调用外部函数,特别是数据是本地的数据,而函数是外部函数的场景。
在本实施例中,若是查询不到与目标数据参数匹配的匹配值,即在记录的预设查询结果数据中,并没有获取到对应的执行结果值,则确定目标函数对应的外部数据库,向外部数据库发送数据处理语句,并获取外部数据库响应于数据处理语句反馈的执行结果值,在预设查询结果数据库存储执行结果值和目标数据参数的对应关系,以便于后续在第二属性的目标函数执行时,可以复用同样的目标数据参数对应的输出结果。
在本公开的一个实施例中,若是函数属性中也不包括第二属性,则判断目标数据参数对应的数据库是否为本地数据库,比如,可以根据目标查询语句对应的表格标识(比如上述tableA)判断目标数据参数对应的数据表是否在本地数据库,若是在本地数据库,则认为目标数据参数对应的数据库为本地数据库。
进一步地,若在本地数据库,则在本地数据库中获取与目标数据参数对应的目标数据,向目标函数对应的数据库发送目标数据和数据处理语句。
当然,在本实施例中,如目标数据参数对应的数据库不为本地数据库,则也可以从外部数据库获取目标数据参数对应的目标数据,向目标函数对应的数据库发送目标数据和数据处理语句。
在本公开的一个实施例中,也可以在预设的云服务器中存储每个目标函数以及其对应的输入数据和对应的执行结果值,因此,在判断目标函数的属性也不包含第二属性时,还可以获取目标函数的目标数据参数对应的数据,获取目标函数的函数标识,向云服务器发送携带该函数标识和对应的数据的查询请求,若是获取到云服务器反馈的执行结果值,则直接复用该结果值,无需执行对应的外部函数。
综上,本公开实施例的数据处理方法,获取本地数据库的数据处理语句,并提取处理语句中的目标函数和目标数据参数,判断目标函数是否为本地数据库对应的本地函数,若不是本地函数,则获取目标函数的函数属性,进而,判断函数属性中是否包括预设的第一属性,若包括第一属性,则判断目标数据参数是否包含与第一属性对应的预设参数,进而,若包含预设参数,则确定数据处理语句的查询值为与预设参数对应的预设值。由此,对于外部的处理函数可以预先进行函数的优化,对无需在外部执行的函数直接获取对应的执行结果,提升了数据处理效率,且降低了算力的消耗。
图3为本公开实施例提供的一种数据处理装置的结构示意图,该装置可由软件和/或硬件实现,一般可集成在电子设备中。如图3所示,该装置包括:
提取模块301,用于获取本地数据库的数据处理语句,并提取所述处理语句中的目标函数和目标数据参数;
第一判断模块302,用于判断所述目标函数是否为所述本地数据库对应的本地函数;
获取模块303,用于在不是所述本地函数时,获取所述目标函数的函数属性;
第二判断模块304,用于判断所述函数属性中是否包括预设的第一属性;
第三判断模块305,用于在包括所述第一属性时,判断所述目标数据参数是否包含与所述第一属性对应的预设参数;
确定模块306,用于在包含所述预设参数时,确定所述数据处理语句的查询值为与所述预设参数对应的预设值。本公开实施例所提供的数据处理装置可执行本公开任意实施例所提供的数据处理方法,具备执行方法相应的功能模块和有益效果,其实现原理类似,在此不再赘述。
为了实现上述实施例,本公开还提出一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现上述实施例中的数据处理方法。
为了实现上述实施例,本公开还提出了一种电子设备,电子设备包括:处理器;用于存储处理器可执行指令的存储器;处理器,用于从存储器中读取可执行指令,并执行可执行指令以实现上述数据处理方法。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (10)
1.一种数据处理方法,其特征在于,包括以下步骤:
获取本地数据库的数据处理语句,并提取所述处理语句中的目标函数和目标数据参数;
判断所述目标函数是否为所述本地数据库对应的本地函数;
若不是所述本地函数,则获取所述目标函数的函数属性;
判断所述函数属性中是否包括预设的第一属性;
若包括所述第一属性,则判断所述目标数据参数是否包含与所述第一属性对应的预设参数;
若包含所述预设参数,则确定所述数据处理语句的查询值为与所述预设参数对应的预设值。
2.如权利要求1所述的方法,其特征在于,在所述判断所述函数属性中是否包括预设的第一属性之后,还包括:
若不包括所述预设的第一属性,则判断所述函数属性中是否包括预设的第二属性;
若包含所述第二属性,则根据所述目标数据参数查询与预设查询结果数据库;
若是查询到与所述目标数据参数匹配的匹配值,则确定所述数据处理语句的查询值为所述匹配值。
3.如权利要求2所述的方法,其特征在于,在所述根据所述目标数据参数查询与预设查询结果数据库之后,还包括:
若是查询不到与所述目标数据参数匹配的匹配值,则确定所述目标函数对应的外部数据库;
向所述外部数据库发送所述数据处理语句,并获取所述外部数据库响应于所述数据处理语句反馈的执行结果值;
在所述预设查询结果数据库存储所述执行结果值和所述目标数据参数的对应关系。
4.如权利要求2所述的方法,其特征在于,在所述判断所述函数属性中是否包括预设的第二属性之后,还包括:
若是不包含所述第二属性,则判断所述目标数据参数对应的数据库是否为所述本地数据库;
若为所述本地数据库,则在所述本地数据库中获取与所述目标数据参数对应的目标数据;
向所述目标函数对应的数据库发送所述目标数据和所述数据处理语句。
5.如权利要求1所述的方法,其特征在于,所述获取所述目标函数的函数属性,包括:
向预设的云服务器发送所述目标函数的属性查询请求;
获取所述云服务器响应于所述属性查询请求反馈的函数属性。
6.如权利要求1所述的方法,其特征在于,
若所述第一属性为strict属性,则所述第一属性对应的预设参数为空值参数。
7.如权利要求1所述的方法,其特征在于,在所述获取所述目标函数的函数属性之前,还包括:
获取预设的外部数据源函数列表;
判断所述目标函数是否属于所述外部数据源函数列表;
若属于所述外部数据源函数列表,则获取所述目标数据参数的第一参数类型;
查询所述目标函数的预设的第二参数类型;
确定所述第一参数类型和所述第二参数类型匹配。
8.一种数据处理装置,其特征在于,包括:
提取模块,用于获取本地数据库的数据处理语句,并提取所述处理语句中的目标函数和目标数据参数;
第一判断模块,用于判断所述目标函数是否为所述本地数据库对应的本地函数;
获取模块,用于在不是所述本地函数时,获取所述目标函数的函数属性;
第二判断模块,用于判断所述函数属性中是否包括预设的第一属性;
第三判断模块,用于在包括所述第一属性时,判断所述目标数据参数是否包含与所述第一属性对应的预设参数;
确定模块,用于在包含所述预设参数时,确定所述数据处理语句的查询值为与所述预设参数对应的预设值。
9.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述可执行指令以实现上述权利要求1-7中任一所述的数据处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-7中任一所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111636118.XA CN114297230A (zh) | 2021-12-29 | 2021-12-29 | 数据处理方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111636118.XA CN114297230A (zh) | 2021-12-29 | 2021-12-29 | 数据处理方法、装置、设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114297230A true CN114297230A (zh) | 2022-04-08 |
Family
ID=80971350
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111636118.XA Pending CN114297230A (zh) | 2021-12-29 | 2021-12-29 | 数据处理方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114297230A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117707653A (zh) * | 2024-02-06 | 2024-03-15 | 天津医康互联科技有限公司 | 参数监控方法、装置、电子设备及计算机可读存储介质 |
-
2021
- 2021-12-29 CN CN202111636118.XA patent/CN114297230A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117707653A (zh) * | 2024-02-06 | 2024-03-15 | 天津医康互联科技有限公司 | 参数监控方法、装置、电子设备及计算机可读存储介质 |
CN117707653B (zh) * | 2024-02-06 | 2024-05-10 | 天津医康互联科技有限公司 | 参数监控方法、装置、电子设备及计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110908997B (zh) | 数据血缘构建方法、装置、服务器及可读存储介质 | |
CN109325041B (zh) | 业务数据处理方法、装置、计算机设备及存储介质 | |
CN110659298B (zh) | 财务数据处理方法、装置、计算机设备和存储介质 | |
CN111339171B (zh) | 数据查询的方法、装置及设备 | |
CN106293891B (zh) | 多维投资指标监督方法 | |
CN113568924B (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN112580319A (zh) | 数据处理的方法、装置、设备及计算机可读存储介质 | |
CN112883030A (zh) | 数据收集方法、装置、计算机设备和存储介质 | |
CN114297230A (zh) | 数据处理方法、装置、设备及介质 | |
CN107368500B (zh) | 数据抽取方法及系统 | |
CN113515564A (zh) | 基于j2ee的数据访问方法、装置、设备及存储介质 | |
CN109697234B (zh) | 实体的多属性信息查询方法、装置、服务器和介质 | |
CN112069223A (zh) | 数据获取需求处理方法、装置、计算机设备和存储介质 | |
CN115114325B (zh) | 数据查询方法、装置、电子设备以及存储介质 | |
CN115757479A (zh) | 数据库的查询优化方法、机器可读存储介质与计算机设备 | |
CN112597162B (zh) | 数据集采集方法、系统、设备及存储介质 | |
CN111143356B (zh) | 报表检索方法及装置 | |
CN111475505B (zh) | 一种数据采集的方法及设备 | |
CN115185973A (zh) | 一种数据资源共享方法、平台、装置及存储介质 | |
CN104778253A (zh) | 一种提供数据的方法和装置 | |
CN112579705A (zh) | 元数据采集方法、装置、计算机设备和存储介质 | |
CN116431677B (zh) | 基于内存数据库的数据路由方法、系统和可读存储介质 | |
CN114625745A (zh) | 基于数据库操作的数据处理方法及装置 | |
KR102279109B1 (ko) | 지식 통합을 위한 분산 시스템 및 방법 | |
CN115314751A (zh) | 数据处理方法、装置、电子设备及存储介质 |
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 |