CN116610736A - 一种数据处理方法、装置、电子设备及存储介质 - Google Patents
一种数据处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116610736A CN116610736A CN202310585124.XA CN202310585124A CN116610736A CN 116610736 A CN116610736 A CN 116610736A CN 202310585124 A CN202310585124 A CN 202310585124A CN 116610736 A CN116610736 A CN 116610736A
- Authority
- CN
- China
- Prior art keywords
- rule
- data
- available
- preset
- stream
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 23
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 238000012545 processing Methods 0.000 claims abstract description 98
- 238000000034 method Methods 0.000 claims abstract description 55
- 230000002776 aggregation Effects 0.000 claims description 15
- 238000004220 aggregation Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 13
- 238000012512 characterization method Methods 0.000 claims description 11
- 238000012217 deletion Methods 0.000 claims description 6
- 230000037430 deletion Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 abstract description 25
- 238000012423 maintenance Methods 0.000 abstract description 4
- 238000010586 diagram Methods 0.000 description 12
- 238000004519 manufacturing process Methods 0.000 description 7
- 230000001960 triggered effect Effects 0.000 description 6
- 238000012216 screening Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 3
- 239000012141 concentrate Substances 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 239000011800 void material Substances 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000005111 flow chemistry technique Methods 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 238000006116 polymerization reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请实施例提供了一种数据处理方法、装置、电子设备及存储介质,该方法包括:获得待处理数据;其中,所述待处理数据包括日志数据流以及广播状态流,所述日志数据流包括各对象对应的运行数据;若所述广播状态流表征新增规则,则将所述广播状态流中的规则转化为预设格式的规则,并将所述预设格式的规则添加至预设规则引擎中;其中,所述预设格式为所述预设规则引擎对应的格式;针对所述预设规则引擎中的任一可用规则,将各对象对应的运行数据分别与所述可用规则进行匹配,确定各对象对应的运行数据是否符合各可用规则。上述方案,在数据处理中动态添加规则,并将规则管理过程与日志数据流处理过程进行解耦,方便数据处理和后期规则维护。
Description
技术领域
本申请实施例涉及大数据技术领域,尤其涉及一种数据处理方法、装置、电子设备及存储介质。
背景技术
随着大数据技术的发展,数据处理引擎被广泛应用于数据处理中,如在生产环境中,采用Flink(一种开源流处理框架)对运行日志进行基本的抽取转换加载(Extract-Transform-Load,ETL),并根据规则筛选出符合条件的数据。
相关技术中,在数据处理引擎中预先定义好规则,进行数据筛选。还是以Flink为例,通过复杂事件处理(Complex Event Processing,CEP)预先定义好规则,Flink启动后,使用该规则进行数据筛选。
然而,上述方式在数据处理引擎启动后,就无法改变规则,难以满足生产环境中动态使用规则的需求。
发明内容
本申请实施例提供了一种数据处理方法、装置、电子设备及存储介质,用以在数据处理中动态添加规则。
第一方面,本申请实施例提供了第一种数据处理方法,应用于数据处理引擎中的任务节点,该方法包括:
获得待处理数据;其中,所述待处理数据包括日志数据流以及广播状态流,所述日志数据流包括各对象对应的运行数据;
若所述广播状态流表征新增规则,则将所述广播状态流中的规则转化为预设格式的规则,并将所述预设格式的规则添加至预设规则引擎中;其中,所述预设格式为所述预设规则引擎对应的格式;
针对所述预设规则引擎中的任一可用规则,将各对象对应的运行数据分别与所述可用规则进行匹配,确定各对象对应的运行数据是否符合各可用规则。
上述方案,无需在数据处理引擎中预先定义规则,在数据处理引擎启动后如果需要添加新的规则,可实时通过外部系统触发新的规则,数据处理引擎将新的规则处理为广播状态流后,通过任务节点动态将新的规则进行格式转化并添加到预设规则引擎,以便后续调用;另外,通过预设规则引擎对规则进行管理,将规则管理过程与日志数据流处理过程进行解耦,方便后期规则维护,使数据处理引擎专注于数据处理,提升系统运行效率。
一些可选的实施方式中,所述方法还包括:
针对所述预设规则引擎中的任一可用规则,确定在预设时长内各对象对应的运行数据符合所述可用规则的次数;
若有对象符合所述可用规则的次数大于所述可用规则对应的预设次数,则确定所述对象满足所述可用规则的聚合条件。
上述方案,通过设置各规则的预设次数,不仅确定各运行数据是否符合可用规则,还可分析在预设时长内各对象对应的运行数据符合可用规则的次数;通过将确定的次数与上述预设次数进行比对,如果在预设时长内对应的运行数据符合可用规则的次数大于预设次数,说明该对象满足对应可用规则的聚合条件;通过预设规则引擎与数据处理引擎配合使用,最终达到复杂规则的匹配需求。
一些可选的实施方式中,通过以下方式获得所述日志数据流:
从表征日志的主题中获取运行日志;
基于所述运行日志中各对象的标识,将所述运行日志中的数据进行分组处理,得到各对象对应的运行数据。
上述方案,由于本实施例可实时通过外部系统新增规则,数据源不仅有常规的运行日志,还有规则数据;因此,通过主题区分运行日志以及规则数据;任务节点可直接从表征日志的主题中获取运行日志,进而各对象(每台主机或者虚拟机)的标识,将运行日志中的数据进行分组处理(各对象的数据做分组进行分析),得到各对象对应的运行数据。
一些可选的实施方式中,通过以下方式获得所述广播状态流:
接收所述数据处理引擎中广播节点广播的所述广播状态流;
其中,所述广播状态流是所述广播节点在收到规则数据后,将所述规则数据转换得到的;所述规则数据是所述数据处理引擎中读取节点从表征规则的主题中获取的。
上述方案,由于本实施例可实时通过外部系统新增规则,数据源不仅有常规的运行日志,还有规则数据;因此,通过主题区分运行日志以及规则数据;任务节点是分布式节点,无法直接从表征规则的主题中获取运行日志,因此,通过读取节点从表征规则的主题中获取规则数据;进而通过广播节点将规则数据转换为广播状态流后进行广播;任务节点即可接收到广播状态流。
一些可选的实施方式中,将各对象对应的运行数据分别与所述可用规则进行匹配之前,还包括:
确定各对象对应的运行数据中的关键字段;
将各对象对应的运行数据分别与所述可用规则进行匹配,包括:
将各对象对应的运行数据中关键字段对应的信息与所述可用规则进行匹配。
上述方案,运行数据中可能会包含较多无用信息(匹配规则时不需要用到的信息),因此在进行规则匹配前,先确定各对象对应的运行数据中的关键字段,基于关键字段对应的信息可精准、高效实现规则匹配。
一些可选的实施方式中,还包括:
若所述广播状态流表征删除规则,则确定所述广播状态流中的规则标识;
基于所述规则标识从所述预设规则引擎中确定对应的规则,并将所述对应的规则标记为不可用规则。
上述方案,由于在实际应用中,不仅有新增规则的需求,还有删除规则的需求,如果广播状态流表征删除规则(也就是接收到外部系统触发的删除规则的指令),确定广播状态流中的规则标识(需要将哪个规则删除);基于规则标识从预设规则引擎中确定对应的规则,并将对应的规则标记为不可用规则,这样后续就不会匹配该规则。另外,将上述规则标记为不可用规则,而不是直接从预设规则引擎中删除,这样便于相关人员查询,或者对不可用规则恢复使用,更适用于生产环境中。
第二方面,本申请实施例提供了第一种数据处理装置,应用于数据处理引擎中的任务节点,该装置包括:
数据获取模块,用于获得待处理数据;其中,所述待处理数据包括日志数据流以及广播状态流,所述日志数据流包括各对象对应的运行数据;
广播流处理模块,用于若所述广播状态流表征新增规则,则将所述广播状态流中的规则转化为预设格式的规则,并将所述预设格式的规则添加至预设规则引擎中;其中,所述预设格式为所述预设规则引擎对应的格式;
日志流处理模块,用于针对所述预设规则引擎中的任一可用规则,将各对象对应的运行数据分别与所述可用规则进行匹配,确定各对象对应的运行数据是否符合各可用规则。
一些可选的实施方式中,还包括聚合判定模块,用于:
针对所述预设规则引擎中的任一可用规则,确定在预设时长内各对象对应的运行数据符合所述可用规则的次数;
若有对象符合所述可用规则的次数大于所述可用规则对应的预设次数,则确定所述对象满足所述可用规则的聚合条件。
一些可选的实施方式中,所述数据获取模块,用于通过以下方式获得所述日志数据流:
从表征日志的主题中获取运行日志;
基于所述运行日志中各对象的标识,将所述运行日志中的数据进行分组处理,得到各对象对应的运行数据。
一些可选的实施方式中,所述数据获取模块,用于通过以下方式获得所述广播状态流:
接收所述数据处理引擎中广播节点广播的所述广播状态流;
其中,所述广播状态流是所述广播节点在收到规则数据后,将所述规则数据转换得到的;所述规则数据是所述数据处理引擎中读取节点从表征规则的主题中获取的。
一些可选的实施方式中,所述日志流处理模块在将各对象对应的运行数据分别与所述可用规则进行匹配之前,还用于:
确定各对象对应的运行数据中的关键字段;
所述日志流处理模块,具体用于:
将各对象对应的运行数据中关键字段对应的信息与所述可用规则进行匹配。
一些可选的实施方式中,所述广播流处理模块,还用于:
若所述广播状态流表征删除规则,则确定所述广播状态流中的规则标识;
基于所述规则标识从所述预设规则引擎中确定对应的规则,并将所述对应的规则标记为不可用规则。
第三方面,本申请实施例提供一种电子设备,包括至少一个处理器以及至少一个存储器,其中,所述存储器存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行上述第一方面任一所述的数据处理方法。
第四方面,本申请实施例提供一种计算机可读存储介质,其存储有可由处理器执行的计算机程序,当所述程序在所述处理器上运行时,使得所述处理器执行上述第一方面任一所述的数据处理方法。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的第一种应用场景示意图;
图2为本申请实施例提供的第二种应用场景示意图;
图3为本申请实施例提供的第一种数据处理方法的流程示意图;
图4为本申请实施例提供的主题分类示意图;
图5为本申请实施例提供的数据处理引擎的架构图;
图6为本申请实施例提供的第二种数据处理方法的流程示意图;
图7为本申请实施例提供的第三种数据处理方法的流程示意图;
图8为本申请实施例提供的数据处理装置的结构示意图;
图9为本申请实施例提供的电子设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本申请的描述中,需要说明的是,除非另有明确的规定和限定,术语“连接”应做广义理解,例如,可以是直接相连,也可以通过中间媒介间接相连,可以是两个器件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
随着大数据技术的发展,数据处理引擎被广泛应用于数据处理中,如在生产环境中,采用Flink对运行日志进行基本的ETL,并根据规则筛选出符合条件的数据。
相关技术中,在数据处理引擎中预先定义好规则,进行数据筛选。
参阅图1所示,通过Flink CEP预先定义好规则,Flink启动后,无法添加规则,使用预先定义的规则进行数据筛选。
然而,上述方式在数据处理引擎启动后,就无法改变规则,难以满足生产环境中动态使用规则的需求;并且,规则与数据处理耦合性强,不便于规则管理。
鉴于此,本申请实施例提出一种数据处理方法、装置、电子设备及存储介质,用以在数据处理中动态添加规则。
参阅图2所示,为本申请实施例提供的一种应用场景,包括:数据处理引擎以及预设规则引擎;
数据处理引擎中的任务节点,用于获得待处理数据;其中,所述待处理数据包括日志数据流以及广播状态流,所述日志数据流包括各对象对应的运行数据;
若所述广播状态流表征新增规则,则将所述广播状态流中的规则转化为预设格式的规则,并将所述预设格式的规则添加至预设规则引擎中;其中,所述预设格式为所述预设规则引擎对应的格式;
针对所述预设规则引擎中的任一可用规则,将各对象对应的运行数据分别与所述可用规则进行匹配,确定各对象对应的运行数据是否符合各可用规则。
预设规则引擎用于管理规则。
示例性的,上述数据处理引擎可以为Flink,上述预设规则引擎可以为Drools(一种开源业务规则引擎)。
上述方案,无需在数据处理引擎中预先定义规则,在数据处理引擎启动后如果需要添加新的规则,可实时通过外部系统触发新的规则,数据处理引擎将新的规则处理为广播状态流后,通过任务节点动态将新的规则进行格式转化并添加到预设规则引擎,以便后续调用;另外,通过预设规则引擎对规则进行管理,将规则管理过程与日志数据流处理过程进行解耦,方便后期规则维护,使数据处理引擎专注于数据处理,提升系统运行效率。
下面将结合附图及具体实施例,对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图3为本申请实施例提供的第一种数据处理方法的流程示意图,应用于数据处理引擎中的任务节点,如图3所示,包括以下步骤:
步骤S301:获得待处理数据;其中,所述待处理数据包括日志数据流以及广播状态流,所述日志数据流包括各对象对应的运行数据。
实施中,数据处理引擎设置有分布式的任务节点(task),任务节点将日志数据流以及广播状态流进行连接(connect),得到待处理数据(connected Stream),再通过广播状态流处理方法(public void process Broadcast Element)对广播状态流进行处理,通过日志数据流处理方法(public void process Element)处理日志数据流。
可以理解,上述连接并不是将两路数据流融合,而是在数据处理引擎启动后需要添加新的规则时,会得到两路数据流,先将这两路数据流放在一个空间中(connect),调用处理(process)方法,实现两个核心方法(广播状态流处理方法以及日志数据流处理方法)。
步骤S302:若所述广播状态流表征新增规则,则将所述广播状态流中的规则转化为预设格式的规则,并将所述预设格式的规则添加至预设规则引擎中。
其中,所述预设格式为所述预设规则引擎对应的格式。
如上所述,本实施例需要通过广播状态流处理方法对广播状态流进行处理,如果广播状态流表征新增规则,说明需要添加新的规则。将该规则处理为广播状态流后,通过任务节点对广播状态流中的规则进行格式转化,动态将满足预设规则引擎要求格式的规则添加到预设规则引擎中,以便后续调用。
也就是说,预设规则引擎中有历史规则,还有实时添加的新的规则,数据处理引擎无需管理规则,只需进行数据处理。通过将规则管理过程与日志数据流处理过程进行解耦,方便后期规则管理。
步骤S303:针对所述预设规则引擎中的任一可用规则,将各对象对应的运行数据分别与所述可用规则进行匹配,确定各对象对应的运行数据是否符合各可用规则。
如上所述,本实施例需要通过日志数据流处理方法处理日志数据流。预设规则引擎进行规则管理,只需调用预设规则引擎中的可用规则,将各对象对应的运行数据分别与可用规则进行匹配(如确定运行数据中对应字段的值是否在可用规则所要求的范围内),即可筛选出符合各项可用规则的运行数据(如对应字段的值在可用规则所要求的范围内的运行数据,确定为符合可用规则的运行数据)。实施中,可进一步将符合各项可用规则的运行数据以及对应的对象进行通知,本实施例对此不做具体限定。
上述方案,无需在数据处理引擎中预先定义规则,在数据处理引擎启动后如果需要添加新的规则,可实时通过外部系统触发新的规则,数据处理引擎将新的规则处理为广播状态流后,通过任务节点动态将新的规则进行格式转化并添加到预设规则引擎,以便后续调用;另外,通过预设规则引擎对规则进行管理,将规则管理过程与日志数据流处理过程进行解耦,方便后期规则维护,使数据处理引擎专注于数据处理,提升系统运行效率。
由于本实施例可实时通过外部系统新增规则,数据源不仅有常规的运行日志,还有规则数据;为了避免数据混淆,本实施例设置有多个主题(topic),通过主题区分运行日志以及规则数据。
参阅图4所示,Kafka(分布式发布订阅消息)创建topic1以及topic2;Flink从topic1读取运行日志,从topic2读取规则数据。
参阅图5所示,数据处理引擎Flink中有多个分布式的任务节点(图4以task1、task2以及task3为例,实施中可以设置更多或更少的task);
任务节点可直接读取运行日志,但无法直接读取规则数据;
因此,数据处理引擎还设置有读取节点以及广播节点;通过读取节点从表征规则的主题中获取规则数据;进而通过广播节点将规则数据转换为广播状态流后进行广播;task1、task2以及task3都能接收到广播状态流。
一些可选的实施方式中,任务节点可通过以下方式获得日志数据流:
从表征日志的主题中获取运行日志;
基于所述运行日志中各对象的标识,将所述运行日志中的数据进行分组处理,得到各对象对应的运行数据。
如上所述,可通过主题区分运行日志以及规则数据;任务节点可直接从表征日志的主题中获取运行日志,进而从运行日志中识别各对象(每台主机或者虚拟机)的标识,将运行日志中的数据进行分组处理(各对象的数据分组进行分析),得到各对象对应的运行数据。
示例性的,task1从topic1中获取运行日志(DataStream1),运行日志有主机A的相关数据、主机B的相关数据以及虚拟机C的相关数据;task1对主机A、主机B以及虚拟机C的相关数据分组进行分析,得到主机A(key)对应的运行数据(KeyedStream)、主机B对应的运行数据以及虚拟机C对应的运行数据。
一些可选的实施方式中,任务节点可通过以下方式获得所述广播状态流:
接收所述数据处理引擎中广播节点广播的所述广播状态流;
其中,所述广播状态流是所述广播节点在收到规则数据后,将所述规则数据转换得到的;所述规则数据是所述数据处理引擎中读取节点从表征规则的主题中获取的。
如上所述,可通过主题区分运行日志以及规则数据;任务节点是分布式节点,无法直接从表征规则的主题中获取规则数据,因此,通过读取节点从表征规则的主题中获取规则数据(DataStream2);进而通过广播节点定义合适的状态描述器,将规则数据转换为广播状态流后进行广播;任务节点即可接收到广播状态流。
对应的,图6为本申请实施例提供的第二种数据处理方法的流程示意图,应用于数据处理引擎中的任务节点,如图6所示,包括以下步骤:
步骤S601:从表征日志的主题中获取运行日志;基于所述运行日志中各对象的标识,将所述运行日志中的数据进行分组处理,得到各对象对应的运行数据。
步骤S602:接收所述数据处理引擎中广播节点广播的所述广播状态流。
其中,所述广播状态流是所述广播节点在收到规则数据后,将所述规则数据转换得到的;所述规则数据是所述数据处理引擎中读取节点从表征规则的主题中获取的。
本实施例对上述步骤S601以及S602的顺序不做具体限定。
步骤S603:将日志数据流以及广播状态流进行连接,得到待处理数据。
步骤S604:若所述广播状态流表征新增规则,则将所述广播状态流中的规则转化为预设格式的规则,并将所述预设格式的规则添加至预设规则引擎中。
其中,所述预设格式为所述预设规则引擎对应的格式。
步骤S605:针对所述预设规则引擎中的任一可用规则,将各对象对应的运行数据分别与所述可用规则进行匹配,确定各对象对应的运行数据是否符合各可用规则。
该步骤S601~S605的具体实现方式可参照上述实施例,此处不再赘述。
图7为本申请实施例提供的第三种数据处理方法的流程示意图,应用于数据处理引擎中的任务节点,如图7所示,包括以下步骤:
步骤S701:获得待处理数据;其中,所述待处理数据包括日志数据流以及广播状态流,所述日志数据流包括各对象对应的运行数据。
步骤S702:若所述广播状态流表征新增规则,则将所述广播状态流中的规则转化为预设格式的规则,并将所述预设格式的规则添加至预设规则引擎中。
其中,所述预设格式为所述预设规则引擎对应的格式。
该步骤S701~S702的具体实现方式可参照上述实施例,此处不再赘述。
步骤S703:确定各对象对应的运行数据中的关键字段。
实施中,各项规则通常是某个指标的数值范围,如主机中央处理器(CentralProcessing Unit,CPU)使用率大于80%。而运行数据中可能会包含较多无用信息(匹配规则时不需要用到的信息)。
基于此,通过在运行数据中识别出关键字段,后续可直接基于关键字段对应的信息分别与各项可用规则进行匹配。
步骤S704:针对所述预设规则引擎中的任一可用规则,将各对象对应的运行数据中关键字段对应的信息与所述可用规则进行匹配,确定各对象对应的运行数据是否符合各可用规则。
示例性的,将CPU使用率、内存占用率等字段作为关键字段,进行关键字标识;
如果可用规则为CPU使用率的规则,基于关键字标识在运行数据中找出CPU使用率对应的信息,将其与可用规则进行匹配(是否在可用规则所要求的范围内),从而确定各对象对应的运行数据是否符合可用规则,这样就不用在每次匹配时都遍历运行数据。
上述方案,运行数据中可能会包含较多无用信息(匹配规则时不需要用到的信息),因此在进行规则匹配前,先确定各对象对应的运行数据中的关键字段,基于关键字段对应的信息可精准、高效实现规则匹配。
一些可选的实施方式中,在上述任一实施例的基础上,还可执行如下步骤:
针对所述预设规则引擎中的任一可用规则,确定在预设时长内各对象对应的运行数据符合所述可用规则的次数;
若有对象符合所述可用规则的次数大于所述可用规则对应的预设次数,则确定所述对象满足所述可用规则的聚合条件。
实施中,可能会对一些规则有特殊要求,不仅要判断是否符合可用规则,还要确定同一对象在一段时间内的运行数据符合可用规则的次数是多少,以确定各对象是否满足规则的聚合条件。
这里的聚合条件是指满足规则的次数达到要求,从而实现更加的复杂的匹配需求。
示例性的,在TI时刻,主机A的运行数据符合可用规则1;在T2时刻,主机A的运行数据符合可用规则1;T3时刻,主机A的运行数据符合可用规则1;T4时刻,主机A的运行数据不符合可用规则1;T5时刻,主机A的运行数据不符合可用规则1;T6时刻,主机A的运行数据符合可用规则1;
预设时长是从TI~T6,主机A对应的运行数据符合可用规则1的次数为4次;如果可用规则1对应的预设次数为3次,主机A满足可用规则1的聚合条件。
上述过程是对聚合条件判定过程的示例性说明,本实施例对此不做具体限定。
上述方案,通过设置各规则的预设次数,不仅确定各运行数据是否符合可用规则,还可分析在预设时长内各对象对应的运行数据符合可用规则的次数;通过将确定的次数与上述预设次数进行比对,如果在预设时长内对应的运行数据符合可用规则的次数大于预设次数,说明该对象满足对应可用规则的聚合条件;通过预设规则引擎与数据处理引擎配合使用,最终达到复杂规则的匹配需求。
一些可选的实施方式中,在上述任一实施例的基础上,还可执行如下步骤:
若所述广播状态流表征删除规则,则确定所述广播状态流中的规则标识;
基于所述规则标识从所述预设规则引擎中确定对应的规则,并将所述对应的规则标记为不可用规则。
实施中,不仅有新增规则的需求,可能还有删除规则的需求;
基于此,可通过外部系统触发删除规则的指令,对应的,广播状态流表征删除规则,该场景中广播状态流携带有规则标识(实施中,可对预设规则引擎中的规则进行编码,将该编码作为规则标识);
基于规则标识从预设规则引擎中确定对应的规则,并将对应的规则标记为不可用规则,这样后续就不会匹配该规则。
也就是说,在预设规则引擎中,可能会有不可用规则,无需将运行数据与不可用规则进行匹配。
上述方案,由于在实际应用中,不仅有新增规则的需求,还有删除规则的需求,如果广播状态流表征删除规则(也就是接收到外部系统触发的删除规则的指令),确定广播状态流中的规则标识(需要将哪个规则删除);基于规则标识从预设规则引擎中确定对应的规则,并将对应的规则标记为不可用规则,这样后续就不会匹配该规则。另外,将上述规则标记为不可用规则,而不是直接从预设规则引擎中删除,这样便于相关人员查询,或者对不可用规则恢复使用,更适用于生产环境中。
如图8所示,本申请实施例提供一种数据处理装置800,该装置包括:
数据获取模块801,用于获得待处理数据;其中,所述待处理数据包括日志数据流以及广播状态流,所述日志数据流包括各对象对应的运行数据;
广播流处理模块802,用于若所述广播状态流表征新增规则,则将所述广播状态流中的规则转化为预设格式的规则,并将所述预设格式的规则添加至预设规则引擎中;其中,所述预设格式为所述预设规则引擎对应的格式;
日志流处理模块803,用于针对所述预设规则引擎中的任一可用规则,将各对象对应的运行数据分别与所述可用规则进行匹配,确定各对象对应的运行数据是否符合各可用规则。
一些可选的实施方式中,还包括聚合判定模块804,用于:
针对所述预设规则引擎中的任一可用规则,确定在预设时长内各对象对应的运行数据符合所述可用规则的次数;
若有对象符合所述可用规则的次数大于所述可用规则对应的预设次数,则确定所述对象满足所述可用规则的聚合条件。
一些可选的实施方式中,所述数据获取模块801,用于通过以下方式获得所述日志数据流:
从表征日志的主题中获取运行日志;
基于所述运行日志中各对象的标识,将所述运行日志中的数据进行分组处理,得到各对象对应的运行数据。
一些可选的实施方式中,所述数据获取模块801,用于通过以下方式获得所述广播状态流:
接收所述数据处理引擎中广播节点广播的所述广播状态流;
其中,所述广播状态流是所述广播节点在收到规则数据后,将所述规则数据转换得到的;所述规则数据是所述数据处理引擎中读取节点从表征规则的主题中获取的。
一些可选的实施方式中,所述日志流处理模块803在将各对象对应的运行数据分别与所述可用规则进行匹配之前,还用于:
确定各对象对应的运行数据中的关键字段;
所述日志流处理模块803,具体用于:
将各对象对应的运行数据中关键字段对应的信息与所述可用规则进行匹配。
一些可选的实施方式中,所述广播流处理模块802,还用于:
若所述广播状态流表征删除规则,则确定所述广播状态流中的规则标识;
基于所述规则标识从所述预设规则引擎中确定对应的规则,并将所述对应的规则标记为不可用规则。
由于该装置即是本申请实施例中的方法中的装置,并且该装置解决问题的原理与该方法相似,因此该装置的实施可以参见方法的实施,重复之处不再赘述。
基于相同的技术构思,本申请实施例还提供了一种电子设备900,如图9所示,包括至少一个处理器901,以及与至少一个处理器连接的存储器902,本申请实施例中不限定处理器901与存储器902之间的具体连接介质,图9中处理器901和存储器902之间通过总线903连接为例。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
其中,处理器901是电子设备的控制中心,可以利用各种接口和线路连接电子设备的各个部分,通过运行或执行存储在存储器902内的指令以及调用存储在存储器902内的数据,从而实现数据处理。可选的,处理器901可包括一个或多个处理单元,处理器901可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理下发指令。可以理解的是,上述调制解调处理器也可以不集成到处理器901中。在一些实施例中,处理器901和存储器902可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
处理器901可以是通用处理器,例如CPU、数字信号处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合数据处理方法实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器902作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器902可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(Random AccessMemory,RAM)、静态随机访问存储器(Static Random Access Memory,SRAM)、可编程只读存储器(Programmable Read Only Memory,PROM)、只读存储器(Read Only Memory,ROM)、带电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、磁性存储器、磁盘、光盘等等。存储器902是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器902还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
在本申请实施例中,存储器902存储有计算机程序,当该程序被处理器901执行时,使得处理器901执行:
获得待处理数据;其中,所述待处理数据包括日志数据流以及广播状态流,所述日志数据流包括各对象对应的运行数据;
若所述广播状态流表征新增规则,则将所述广播状态流中的规则转化为预设格式的规则,并将所述预设格式的规则添加至预设规则引擎中;其中,所述预设格式为所述预设规则引擎对应的格式;
针对所述预设规则引擎中的任一可用规则,将各对象对应的运行数据分别与所述可用规则进行匹配,确定各对象对应的运行数据是否符合各可用规则。
一些可选的实施方式中,处理器901还执行:
针对所述预设规则引擎中的任一可用规则,确定在预设时长内各对象对应的运行数据符合所述可用规则的次数;
若有对象符合所述可用规则的次数大于所述可用规则对应的预设次数,则确定所述对象满足所述可用规则的聚合条件。
一些可选的实施方式中,处理器901还执行:
从表征日志的主题中获取运行日志;
基于所述运行日志中各对象的标识,将所述运行日志中的数据进行分组处理,得到各对象对应的运行数据。
一些可选的实施方式中,处理器901还执行:
接收所述数据处理引擎中广播节点广播的所述广播状态流;
其中,所述广播状态流是所述广播节点在收到规则数据后,将所述规则数据转换得到的;所述规则数据是所述数据处理引擎中读取节点从表征规则的主题中获取的。
一些可选的实施方式中,将各对象对应的运行数据分别与所述可用规则进行匹配之前,处理器901还执行:
确定各对象对应的运行数据中的关键字段;
处理器901具体执行:
将各对象对应的运行数据中关键字段对应的信息与所述可用规则进行匹配。
一些可选的实施方式中,处理器901还执行:
若所述广播状态流表征删除规则,则确定所述广播状态流中的规则标识;
基于所述规则标识从所述预设规则引擎中确定对应的规则,并将所述对应的规则标记为不可用规则。
由于该电子设备即是本申请实施例中的方法中的电子设备,并且该电子设备解决问题的原理与该方法相似,因此该电子设备的实施可以参见方法的实施,重复之处不再赘述。
基于相同的技术构思,本申请实施例还提供了一种计算机可读存储介质,其存储有可由处理器执行的计算机程序,当所述程序在所述处理器上运行时,使得所述处理器执行上述数据处理方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种数据处理方法,其特征在于,应用于数据处理引擎中的任务节点,该方法包括:
获得待处理数据;其中,所述待处理数据包括日志数据流以及广播状态流,所述日志数据流包括各对象对应的运行数据;
若所述广播状态流表征新增规则,则将所述广播状态流中的规则转化为预设格式的规则,并将所述预设格式的规则添加至预设规则引擎中;其中,所述预设格式为所述预设规则引擎对应的格式;
针对所述预设规则引擎中的任一可用规则,将各对象对应的运行数据分别与所述可用规则进行匹配,确定各对象对应的运行数据是否符合各可用规则。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
针对所述预设规则引擎中的任一可用规则,确定在预设时长内各对象对应的运行数据符合所述可用规则的次数;
若有对象符合所述可用规则的次数大于所述可用规则对应的预设次数,则确定所述对象满足所述可用规则的聚合条件。
3.如权利要求1所述的方法,其特征在于,通过以下方式获得所述日志数据流:
从表征日志的主题中获取运行日志;
基于所述运行日志中各对象的标识,将所述运行日志中的数据进行分组处理,得到各对象对应的运行数据。
4.如权利要求1所述的方法,其特征在于,通过以下方式获得所述广播状态流:
接收所述数据处理引擎中广播节点广播的所述广播状态流;
其中,所述广播状态流是所述广播节点在收到规则数据后,将所述规则数据转换得到的;所述规则数据是所述数据处理引擎中读取节点从表征规则的主题中获取的。
5.如权利要求1所述的方法,其特征在于,将各对象对应的运行数据分别与所述可用规则进行匹配之前,还包括:
确定各对象对应的运行数据中的关键字段;
将各对象对应的运行数据分别与所述可用规则进行匹配,包括:
将各对象对应的运行数据中关键字段对应的信息与所述可用规则进行匹配。
6.如权利要求1~5任一所述的方法,其特征在于,还包括:
若所述广播状态流表征删除规则,则确定所述广播状态流中的规则标识;
基于所述规则标识从所述预设规则引擎中确定对应的规则,并将所述对应的规则标记为不可用规则。
7.一种数据处理装置,其特征在于,应用于数据处理引擎中的任务节点,该装置包括:
数据获取模块,用于获得待处理数据;其中,所述待处理数据包括日志数据流以及广播状态流,所述日志数据流包括各对象对应的运行数据;
广播流处理模块,用于若所述广播状态流表征新增规则,则将所述广播状态流中的规则转化为预设格式的规则,并将所述预设格式的规则添加至预设规则引擎中;其中,所述预设格式为所述预设规则引擎对应的格式;
日志流处理模块,用于针对所述预设规则引擎中的任一可用规则,将各对象对应的运行数据分别与所述可用规则进行匹配,确定各对象对应的运行数据是否符合各可用规则。
8.如权利要求7所述的装置,其特征在于,还包括聚合判定模块,用于:
针对所述预设规则引擎中的任一可用规则,确定在预设时长内各对象对应的运行数据符合所述可用规则的次数;
若有对象符合所述可用规则的次数大于所述可用规则对应的预设次数,则确定所述对象满足所述可用规则的聚合条件。
9.一种电子设备,其特征在于,包括至少一个处理器以及至少一个存储器,其中,所述存储器存储有计算机程序,当所述程序被所述处理器执行时,使得所述处理器执行如权利要求1至6任一所述的方法。
10.一种计算机可读存储介质,其特征在于,其存储有可由计算机执行的计算机程序,当所述程序在所述计算机上运行时,使得所述计算机执行如权利要求1至6任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310585124.XA CN116610736A (zh) | 2023-05-23 | 2023-05-23 | 一种数据处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310585124.XA CN116610736A (zh) | 2023-05-23 | 2023-05-23 | 一种数据处理方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116610736A true CN116610736A (zh) | 2023-08-18 |
Family
ID=87683171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310585124.XA Pending CN116610736A (zh) | 2023-05-23 | 2023-05-23 | 一种数据处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116610736A (zh) |
-
2023
- 2023-05-23 CN CN202310585124.XA patent/CN116610736A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107798038B (zh) | 数据响应方法及数据响应设备 | |
CN111767143A (zh) | 交易数据处理方法、装置、设备及系统 | |
CN107092686B (zh) | 一种基于云存储平台的文件管理方法及装置 | |
CN108399175B (zh) | 一种数据存储、查询方法及其装置 | |
CN111400288A (zh) | 数据质量检查方法及系统 | |
CN106649344B (zh) | 一种网络日志压缩方法和装置 | |
CN113704790A (zh) | 一种异常日志信息汇总方法及计算机设备 | |
CN110633318A (zh) | 一种数据提取的处理方法、装置、设备和存储介质 | |
CN110708363A (zh) | 一种文件传输方法、系统、电子设备及存储介质 | |
CN112307318A (zh) | 一种内容发布方法、系统及装置 | |
CN117708212A (zh) | 元数据采集方法、装置及电子设备 | |
CN112711683A (zh) | 数据比对方法、装置及计算机设备 | |
CN111324645B (zh) | 区块链的数据处理方法及装置 | |
WO2023104183A1 (en) | Methods and systems for event management | |
CN116610736A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN112035413A (zh) | 元数据信息查询方法、装置及存储介质 | |
CN116644115A (zh) | 一种面向大数据平台的分布式管理方法及系统 | |
CN116361153A (zh) | 固件代码的测试方法、装置、电子设备、存储介质 | |
CN113238852B (zh) | 一种任务分配方法、装置、电子设备及存储介质 | |
CN108874798B (zh) | 一种大数据排序方法和系统 | |
CN114417069A (zh) | 页面数据交互方法、装置及电子设备 | |
CN115269519A (zh) | 一种日志检测方法、装置及电子设备 | |
CN112597119A (zh) | 一种处理日志的生成方法、装置及存储介质 | |
CN113132261B (zh) | 一种流量数据包分类方法、装置及电子设备 | |
CN114157662A (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 |