CN117971844A - 用于数据处理的方法、装置、设备和存储介质 - Google Patents
用于数据处理的方法、装置、设备和存储介质 Download PDFInfo
- Publication number
- CN117971844A CN117971844A CN202410131277.1A CN202410131277A CN117971844A CN 117971844 A CN117971844 A CN 117971844A CN 202410131277 A CN202410131277 A CN 202410131277A CN 117971844 A CN117971844 A CN 117971844A
- Authority
- CN
- China
- Prior art keywords
- node
- data
- nodes
- processing
- data processing
- 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
- 238000012545 processing Methods 0.000 title claims abstract description 130
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000003860 storage Methods 0.000 title claims abstract description 17
- 230000004044 response Effects 0.000 claims abstract description 46
- 230000008859 change Effects 0.000 claims abstract description 11
- 238000012544 monitoring process Methods 0.000 claims abstract description 6
- 238000003672 processing method Methods 0.000 claims abstract description 5
- 230000002159 abnormal effect Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 4
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 21
- 230000008569 process Effects 0.000 description 19
- 238000004891 communication Methods 0.000 description 17
- 230000006870 function Effects 0.000 description 9
- 238000013507 mapping Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
-
- 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/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Quality & Reliability (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Hardware Redundancy (AREA)
Abstract
根据本公开的实施例,提供了用于数据处理的方法、装置、设备和存储介质。一种数据处理方法包括:在多个节点的第一节点处,响应于监听到由第一数据对应的数据变更,确定第一数据是否包括完成标记,完成标记用于指示第一数据已被处理完成;如果确定第一数据不包括完成标记,向第一数据添加节点标记,节点标记指示用于处理第一数据的节点为多个节点中的第二节点;以及将包括节点标记的第一数据发送给多个节点中第一节点之外的其他节点。以此方式,可以使得多个节点均参与到数据处理,可以提高资源的利用率以及数据处理的效率。
Description
技术领域
本公开的示例实施例总体涉及计算机领域,特别地涉及用于数据处理的方法、装置、设备和计算机可读存储介质。
背景技术
随着互联网技术的发展,通过互联网获取信息、生活、娱乐和工作成为人们生活的一部分。人们可以利用互联网执行各种各样的操作,这会产生大量的实时数据。大量的实时数据可以被发送至处理这些数据的处理设备(例如,处理系统中的某个节点)。人们期望可以提高设备处理数据的性能以及效率。
发明内容
在本公开的第一方面,提供了一种数据处理方法。该方法包括:在多个节点的第一节点处,响应于监听到由第一数据对应的数据变更,确定第一数据是否包括完成标记,完成标记用于指示第一数据已被处理完成;如果确定第一数据不包括完成标记,向第一数据添加节点标记,节点标记指示用于处理第一数据的节点为多个节点中的第二节点;以及将包括节点标记的第一数据发送给多个节点中第一节点之外的其他节点。
在本公开的第二方面,提供了一种数据处理方法。该方法包括:在多个节点的第二节点处,响应于接收到第一数据,确定第一数据中的节点标记,节点标记指示用于处理第一数据的节点;如果确定节点标记指示的节点为第二节点,对第一数据执行数据处理;以及响应于对第一数据的数据处理完成,从第一数据中删除节点标记。
在本公开的第三方面,提供了一种用于数据处理的装置。该装置包括:完成标记确定模块,被配置为在多个节点的第一节点处,响应于监听到由第一数据对应的数据变更,确定第一数据是否包括完成标记,完成标记用于指示第一数据已被处理完成;节点标记添加模块,被配置为如果确定第一数据不包括完成标记,向第一数据添加节点标记,节点标记指示用于处理第一数据的节点为多个节点中的第二节点;以及第一数据发送模块,被配置为将包括节点标记的第一数据发送给多个节点中第一节点之外的其他节点。
在本公开的第四方面,提供了一种用于数据处理的装置。该装置包括:第一数据接收模块,被配置为在多个节点的第二节点处,响应于接收到第一数据,确定第一数据中的节点标记,节点标记指示用于处理第一数据的节点;数据处理执行模块,被配置为如果确定节点标记指示的节点为第二节点,对第一数据执行数据处理;以及节点标记删除模块,被配置为响应于对第一数据的数据处理完成,从第一数据中删除节点标记。
在本公开的第五方面,提供了一种电子设备。该设备包括至少一个处理单元;以及至少一个存储器,至少一个存储器被耦合到至少一个处理单元并且存储用于由至少一个处理单元执行的指令。指令在由至少一个处理单元执行时使设备执行第一方面的方法或执行第二方面的方法。
在本公开的第六方面,提供了一种计算机可读存储介质。该计算机可读存储介质上存储有计算机程序,计算机程序可由处理器执行以实现第一方面的方法或实现第二方面的方法。
应当理解,本发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键特征或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的描述而变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了本公开的实施例能够在其中实现的示例环境的示意图;
图2示出了根据本公开的一些实施例的用于数据处理的信息流的流程图;
图3示出了根据本公开的一些实施例的节点异常处理的示例的示意图;
图4示出了根据本公开的一些实施例的数据处理的过程的流程图;
图5示出了根据本公开的另一些实施例的数据处理的过程的流程图;
图6示出了根据本公开的一些实施例的用于数据处理的装置的示意性结构框图;
图7示出了根据本公开的另一些实施例的用于数据处理的装置的示意性结构框图;以及
图8示出了其中可以实施本公开的一个或多个实施例的电子设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中示出了本公开的一些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反,提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
下面将参照附图更详细地描述本公开的实施例。虽然附图中示出了本公开的一些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反,提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“一些实施例”应当理解为“至少一些实施例”。下文还可能包括其它明确的和隐含的定义。
需要说明的是,本公开的技术方案中,所涉及的用户个人信息的获取,存储和应用等,均符合相关法律法规的规定,且不违背公序良俗。
可以理解的是,在使用本公开各实施例公开的技术方案之前,均应当根据相关法律法规通过适当的方式对本公开所涉及个人信息的类型、使用范围、使用场景等告知用户并获得用户的授权。
例如,在响应于接收到用户的主动请求时,向用户发送提示信息,以明确地提示用户,其请求执行的操作将需要获得和使用到用户的个人信息,从而使得用户可以根据提示信息来自主地选择是否向执行本公开技术方案的操作的电子设备、应用程序、服务器或存储介质等软件或硬件提供个人信息。
作为一种可选的但非限制性的实现方式,响应于接收到用户的主动请求,向用户发送提示信息的方式,例如可以是弹出窗口的方式,弹出窗口中可以以文字的方式呈现提示信息。此外,弹出窗口中还可以承载供用户选择“同意”或“不同意”向电子设备提供个人信息的选择控件。
可以理解的是,上述通知和获得用户授权过程仅是示意性的,不对本公开的实现方式构成限定,其他满足相关法律法规的方式也可应用于本公开的实现方式中。
图1示出了本公开的实施例能够在其中实现的示例环境100的示意图。如图1所示,环境100可以包括数据处理系统110。
数据处理系统110可以接收待处理的数据102。数据处理系统110可以对数据102执行数据处理并生成相应的处理结果112。在一些实施例中,数据处理系统110可以是分布式数据处理系统,例如基于Kubernetes的集群。如图1所示,数据处理系统110包括多个节点120(例如可以包括节点120-1、120-2、……、120-N,其中N是正整数,在下文中为讨论方便,将一个或多个节点统称为节点120)。数据处理系统110可以响应于接收到数据102,利用特定的节点120对数据102执行数据处理以获取处理结果112。在一些实施例中,数据处理系统110中可以部署有集中式或分布式处理系统。在这种情况下,数据处理系统110中的每个节点可以指示系统中的处理节点。在一些实施例中,节点120可以是云环境中的物理节点或虚拟节点(例如,容器)。
数据处理系统110或其中包括的各个节点120可以包括具有计算能力的任何计算系统,例如各种计算设备/系统、终端设备、服务端设备等。终端设备可以是任意类型的移动终端、固定终端或便携式终端,包括移动手机、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、媒体计算机、多媒体平板、掌上电脑、便携式游戏终端、VR/AR设备、个人通信系统(Personal Communication System,PCS)设备、个人导航设备、个人数字助理(Personal Digital Assistant,PDA)、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或者前述各项的任意组合,包括这些设备的配件和外设或者其任意组合。
服务端设备可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络、以及大数据和人工智能平台等基础云计算服务的云服务器。服务端设备例如可以包括计算系统/服务器,诸如大型机、边缘计算节点、云环境中的计算设备,等等。
应当理解,仅出于示例性的目的描述环境100中各个元素的结构和功能,而不暗示对于本公开的范围的任何限制。
如上文所讨论的,大量的实时数据可以被发送至处理这些数据的节点。处理系统中可以包括多个节点。传统上,在多个节点中,仅有被选中为主节点的节点会监听数据变更并执行后续操作,其他的节点会进入监听等待状态。也即多个节点中仅有一个处于正常运行状态的节点。这会导致处理系统的数据处理性能较低,且会造成资源浪费。
有鉴于此,本公开的实施例提供了一种用于数据处理的方案。该方案包括:在多个节点的第一节点处,响应于监听到由第一数据对应的数据变更,确定第一数据是否包括完成标记。完成标记用于指示第一数据已被处理完成。如果确定第一数据不包括完成标记,向第一数据添加节点标记,节点标记指示用于处理第一数据的节点为多个节点中的第二节点。第一节点将包括节点标记的第一数据发送给多个节点中第一节点之外的其他节点。在多个节点的第二节点处,响应于接收到第一数据,确定第一数据中的节点标记。如果确定节点标记指示的节点为第二节点,对第一数据执行数据处理。响应于对第一数据的数据处理完成,从第一数据中删除节点标记。以此方式,可以使得多个节点均参与到数据处理,可以提高资源的利用率以及数据处理的效率。
以下将继续参考附图描述本公开的一些示例实施例。
图2示出了根据本公开的一些实施例的用于数据处理的信息流200的流程图。信息流200可以被实现在数据处理系统110中。信息流200涉及多个节点120中的节点201和节点202。为便于讨论,将参考图1的环境100来描述信息流200。
节点201例如可以为多个节点120中的第一节点,节点202例如可以为多个节点中的第二节点。在一些实施例中,在信息流200中参考节点201所描述的操作可以为多个节点120中的主节点要执行的操作,且多个节点120中的其他节点(包括节点202)为主节点(也即节点201)的从节点。因此,参考节点202所描述的操作可以为多个节点120中的从节点要执行的操作。
在信息流200中,节点201可以监听(205)数据变更。数据变更可以是新增数据、删除数据、数据更新等多种原因所导致的。节点201响应于监听到由第一数据对应的数据变更(例如新增第一数据导致的数据变更),确定(210)第一数据是否包括完成标记。完成标记用于指示第一数据已被处理完成。完成标记可以是任意适当的标记,其可以包括但不限于符号、数字、文本等等。节点201可以采用任意适当的方式来确定第一数据是否包括完成标记。例如,节点201可以基于预定的规则或算法来确定第一数据是否包括完成标记。
在一些实施例中,如果确定第一数据包括完成标记,节点201可以确定第一数据已被处理完成,第一数据无需再次执行数据处理。节点201进而可以丢弃第一数据。在另一些实施例中,如果确定第一数据不包括完成标记,节点201可以确定第一数据尚未被执行数据处理。节点201进而可以向第一数据添加(215)节点标记。节点标记可以指示用于处理第一数据的节点。例如,节点标记指示用于处理第一数据的节点为多个节点(具体地,多个从节点)中的第二节点(也即节点202)。可以理解,不同的从节点可以对应不同的节点标记。与完成标记类似地,节点标记同样可以是任意适当的标记,其可以包括但不限于符号、数字、文本等等。关于第二节点的节点标记的具体确定方式,在一些实施例中,节点201可以预先获取到多个数据类型和多个从节点之间的第一映射关系。节点201例如可以确定第一数据的数据类型以及第一映射关系,确定第一数据对应的从节点(例如,节点202)。
在一些实施例中,节点201例如还可以确定多个从节点各自的工作状态。节点201例如可以将当前处于空闲状态(例如处理数据的量低于预定阈值或当前未执行数据处理)的从节点确定为第二节点。例如,节点201可以响应于节点202当前未执行针对数据的数据处理,确定节点202当前处于空闲状态,进而向第一数据添加指示处理第一数据的节点为节点202的节点标记。
在一些实施例中,节点201可以预先获取到多个节点和相应的节点标记之间的第二映射关系。节点201进而可以基于节点202以及第二映射关系确定与节点202对应的节点标记。节点201同样可以基于任意适当的方式向第一数据添加节点标记。例如,节点201可以基于预先定义的规则或算法来向第一数据添加节点标记。
节点201进而可以向节点202发送(220)包括节点标记的第一数据。节点201例如可以经由任意适当的通信方式将包括节点标记的第一数据发生给节点202。例如,节点201可以基于节点和节点之间的通信连接将包括节点标记的第一数据发送给节点202。在一些实施例中,节点201可以将包括节点标记的第一数据发送给全部的从节点。备选地或者附加地,在一些实施例中,节点201还可以仅将包括节点标记的第一数据发送给对应的用于处理第一数据的节点202。
节点202可以响应于接收到第一数据,确定(225)第一数据中的节点标记。节点202同样可以基于任意适当的方式来确定节点标记。在一些实施例中,节点202还可以确定节点标记是否为自身对应的节点标记(也即确定处理第一数据的节点是否是节点202)。在节点202处,其可以响应于确定节点标记指示的节点为节点202,对第一数据执行(230)数据处理。这样,可以通过校验第一数据,来保证数据处理和节点通信的安全性。
需要注意的是,如果多个从节点均可以接收到第一数据,则每个从节点均可以基于第一数据的节点标记确定自身是否是处理第一数据的节点。在这种情况下,仅有与节点标记相匹配的节点202执行针对第一数据的数据处理,其他的从节点可以丢弃或删除接收到的第一数据。由此,可以保证仅有与节点标记相匹配的第二节点处理第一数据,可以保证数据处理的准确性。
节点202响应于对第一数据的数据处理完成,从第一数据中删除(235)节点标记。在一些实施例中,节点202还可以响应于对第一数据的数据处理完成,向第一数据添加(240)指示第一数据已被处理完成的完成标记。节点202进而可以将包括完成标记的第一数据发送(245)给节点201。与节点201类似地,节点202同样可以采用任意适当的方式删除节点标记以及添加完成标记。节点202同样可以经由任意适当的通信方式将包括完成标记的第一数据发生给节点201。例如,节点202可以基于节点和节点之间的通信连接将包括完成标记的第一数据发送给节点201。在一些实施例中,节点202可以将包括完成标记的第一数据发送给全部的多个节点120中除了节点202之外的其他节点(也即包括节点201和其他从节点)。备选地或者附加地,在一些实施例中,节点201还可以仅将包括完成标记的第一数据发送给节点201。
在一些实施例中,不同从节点对应的完成标记可以是不同的。在这种情况下,主节点(例如节点201)可以响应于在接收到的数据中检测到了完成标记,确定与该完成标记相对应的从节点已经完成了针对该数据的数据处理,有助于帮助主节点确定不同从节点的数据处理量。
上面结合图2描述了多个节点120执行数据处理的详细内容,下面结合图3来描述某个节点出现异常后,多个节点的处理方式。图3示出了根据本公开的一些实施例的节点异常处理的示例300的示意图。示例300可以被部署或被实现在数据处理系统110处。下面参考图1的环境100来示例300。
在框310,数据处理系统110中的多个节点120可以执行选主(也即从多个节点120中确定唯一的一个主节点)。多个节点120可以基于任意适当的方式来执行选主。例如,多个节点120可以采用投票选主的方式或采用竞争选主的方式来执行选主。
在一些实施例中,被选择的节点(例如第一节点)被称为主节点。主节点可以获取多个节点120各自对应的节点信息,节点信息至少包括对应节点的心跳信息。主节点例如可以直接获取自身的节点信息。主节点例如可以经由任意适当的方式获取从节点的节点信息。例如,主节点可以经由和从节点之间的通信,获取从节点发送的节点信息。主节点获取从节点的心跳信息的机制也可以被称之为多个节点120的心跳机制。心跳机制可以维护多个节点120之间的通信和状态,可以使节点之间保持连接并实时交换信息。通过定时的、周期性的心跳信息,主节点可以确定多个节点依旧处于正常工作状态。主节点可以响应于从某个节点的心跳信息检测到异常事件(例如该节点心跳超时),确定该节点出现异常。
在框320,主节点可以实时检测是否出现心跳超时。主节点例如可以响应于在预定时刻没有接收到来自某个节点的心跳,确定该节点出现心跳超时。主节点例如还可以响应于接收到某个节点的心跳的间隔时长超过阈值时长,确定该节点出现心跳超时。
在框330,主节点可以响应于某个从节点心跳超时,重新分配待处理的数据。示例性地,如果多个从节点中的第二节点出现心跳超时,主节点可以确定从第二节点的心跳信息检测到异常事件。主节点可以更新待第二节点处理的第一数据的节点标记。
更新后的节点标记可以示用于处理第一数据的节点为多个节点中的第三节点,第三节点不同于第二节点。也即,主节点可以将原定分配给第二节点处理的第一数据重新分配给第三节点。主节点可以采用任意适当的方式来确定第三节点。例如,主节点可以响应于确定第三节点和第二节点可以处理相同数据类型的数据,将第一数据分配给第三节点。又例如,主节点还可以响应于确定第三节点当前处于空闲状态,而将第一数据分配给第三节点。
在一些实施例中,出现心跳超时的第二节点还可以执行节点重启。例如,主节点可以响应于第二节点出现心跳超时,向第二节点发送指示执行节点重启的重启指令。第二节点响应于接收到重启指令,执行节点重启。又例如,第二节点还可以监测自身的心跳信息。第二节点例如可以响应于确定自身的心跳信息出现异常,直接执行节点重启。
可以理解,执行节点重启后的第二节点可以重新向主节点发送心跳信息。主节点可以响应于第二节点的心跳信息恢复正常,恢复向第二节点分配待处理的数据。
在框340,主节点可以响应于主节点(也即自身)心跳超时,确定从自身的心跳信息检测到异常时间,进而执行重启操作(也即主节点自身重启)。在一些实施例中,主节点执行重启操作的同时,多个节点中的其他节点(也即多个从节点)可以重新执行选主操作。示例性地,如果第一节点执行节点从启,且多个从节点中的第四节点被选择为新的主节点,则重启后的第一节点可以被确定为第四节点的从节点。
在框350,新的主节点可以重新分配待处理数据。示例性地,被确定为主节点后,第四节点可以获取其他节点(包括重启后的第一节点)的节点信息。第四节点可以重新分配待处理数据。例如。第四节点可以向获取到的数据添加指示由第一节点执行数据处理的节点标记,以将该数据分配给第一节点执行数据处理。
综上所述,在本公开的实施例中,多个节点中的主节点可以通过添加节点标记来指示相应的从节点执行数据处理。多个节点还可以响应于确定某个节点的心跳信息监测到异常事件,执行数据重分配或者重新选主。以此方式,可以使得多个节点均参与到数据处理,可以提高资源的利用率以及数据处理的效率。
图4示出了根据本公开的一些实施例的数据处理的过程400的流程图。过程400可以被实现在数据处理系统110中多个节点120的第一节点处。
在框410,在多个节点的第一节点处,响应于监听到由第一数据对应的数据变更,确定第一数据是否包括完成标记,完成标记用于指示第一数据已被处理完成。
在框420,如果确定第一数据不包括完成标记,向第一数据添加节点标记,节点标记指示用于处理第一数据的节点为多个节点中的第二节点。
在框430,将包括节点标记的第一数据发送给多个节点中第一节点之外的其他节点。
在一些实施例中,过程400还包括:如果确定第一数据包括完成标记,丢弃第一数据。
在一些实施例中,过程400还包括:获取多个节点各自对应的节点信息,节点信息至少包括对应节点的心跳信息;以及如果从第二节点的心跳信息检测到异常事件,更新第一数据的节点标记,更新后的节点标记指示用于处理第一数据的节点为多个节点中的第三节点,第三节点不同于第二节点。
在一些实施例中,第一节点为多个节点中的主节点,并且多个节点中的其他节点为从节点。
在一些实施例中,过程400还包括:在第一节点处,响应于从第一节点的心跳信息检测到异常事件,执行第一节点的节点重启,其中多个节点中的第四节点被确定为多个节点中的主节点,并且重启后的第一节点被确定为从节点。
图5示出了根据本公开的一些实施例的数据处理的过程500的流程图。过程500可以被数据处理系统110中多个节点120的第二节点处。
在框510,在多个节点的第二节点处,响应于接收到第一数据,确定第一数据中的节点标记,节点标记指示用于处理第一数据的节点。
在框520,如果确定节点标记指示的节点为第二节点,对第一数据执行数据处理。
在框530,响应于对第一数据的数据处理完成,从第一数据中删除节点标记。
在一些实施例中,过程500还包括:向第一数据添加完成标记,完成标记用于指示第一数据已被处理完成;以及将包括完成标记的第一数据发送给多个节点中第二节点之外的其他节点。
在一些实施例中,多个节点包括主节点和至少一个从节点,第二节点为从节点。
在一些实施例中,过程500还包括:向多个节点中的主节点发送第二节点的心跳信息。
本公开的实施例还提供了用于实现上述方法或过程的相应装置。
图6示出了根据本公开的某些实施例的用于数据处理的装置600的示意性结构框图。装置600可以被实现为或者被包括在数据处理系统110中多个节点120的第一节点处。装置600中的各个模块/组件可以由硬件、软件、固件或者它们的任意组合来实现。
如图6所示,装置600包括完成标记确定模块610,被配置为在多个节点的第一节点处,响应于监听到由第一数据对应的数据变更,确定第一数据是否包括完成标记,完成标记用于指示第一数据已被处理完成。装置600还包括节点标记添加模块620,被配置为如果确定第一数据不包括完成标记,向第一数据添加节点标记,节点标记指示用于处理第一数据的节点为多个节点中的第二节点。装置600还包括第一数据发送模块630,被配置为将包括节点标记的第一数据发送给多个节点中第一节点之外的其他节点。
在一些实施例中,装置600还包括:数据丢弃模块,被配置为果确定第一数据包括完成标记,丢弃第一数据。
在一些实施例中,装置600还包括:节点信息获取模块,被配置为获取多个节点各自对应的节点信息,节点信息至少包括对应节点的心跳信息;以及节点标记更新模块,被配置为如果从第二节点的心跳信息检测到异常事件,更新第一数据的节点标记,更新后的节点标记指示用于处理第一数据的节点为多个节点中的第三节点,第三节点不同于第二节点。
在一些实施例中,第一节点为多个节点中的主节点,并且多个节点中的其他节点为从节点。
在一些实施例中,装置600还包括:节点重启模块,被配置为在第一节点处,响应于从第一节点的心跳信息检测到异常事件,执行第一节点的节点重启,其中多个节点中的第四节点被确定为多个节点中的主节点,并且重启后的第一节点被确定为从节点。
图7示出了根据本公开的某些实施例的用于数据处理的装置700的示意性结构框图。装置700可以被实现为或者被包括在数据处理系统110中多个节点120的第二节点处。装置700中的各个模块/组件可以由硬件、软件、固件或者它们的任意组合来实现。
如图7所示,装置700包括第一数据接收模块710,被配置为在多个节点的第二节点处,响应于接收到第一数据,确定第一数据中的节点标记,节点标记指示用于处理第一数据的节点。装置700还包括数据处理执行模块720,被配置为如果确定节点标记指示的节点为第二节点,对第一数据执行数据处理。装置700还包括节点标记删除模块730,被配置为响应于对第一数据的数据处理完成,从第一数据中删除节点标记。
在一些实施例中,装置700还包括:标记添加模块,被配置为向第一数据添加完成标记,完成标记用于指示第一数据已被处理完成;以及数据发送模块,被配置为将包括完成标记的第一数据发送给多个节点中第二节点之外的其他节点。
在一些实施例中,多个节点包括主节点和至少一个从节点,第二节点为从节点。
在一些实施例中,装置700还包括:心跳信息发送模块,被配置为向多个节点中的主节点发送第二节点的心跳信息。
图8示出了其中可以实施本公开的一个或多个实施例的电子设备800的框图。应当理解,图8所示出的电子设备800仅仅是示例性的,而不应当构成对本文所描述的实施例的功能和范围的任何限制。图8所示出的电子设备800可以用于实现图1的数据处理系统110。
如图8所示,电子设备800是通用电子设备的形式。电子设备800的组件可以包括但不限于一个或多个处理器或处理单元810、存储器820、存储设备830、一个或多个通信单元840、一个或多个输入设备850以及一个或多个输出设备860。处理单元810可以是实际或虚拟处理器并且能够根据存储器820中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高电子设备800的并行处理能力。
电子设备800通常包括多个计算机存储介质。这样的介质可以是电子设备800可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器820可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(RAM))、非易失性存储器(例如,只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存)或它们的某种组合。存储设备830可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如闪存驱动、磁盘或者任何其他介质,其可以能够用于存储信息和/或数据并且可以在电子设备800内被访问。
电子设备800可以进一步包括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图8中示出,可以提供用于从可拆卸、非易失性磁盘(例如“软盘”)进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。存储器820可以包括计算机程序产品825,其具有一个或多个程序模块,这些程序模块被配置为执行本公开的各种实施例的各种方法或动作。
通信单元840实现通过通信介质与其他电子设备进行通信。附加地,电子设备800的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,电子设备800可以使用与一个或多个其他服务器、网络个人计算机(PC)或者另一个网络节点的逻辑连接来在联网环境中进行操作。
输入设备850可以是一个或多个输入设备,例如鼠标、键盘、追踪球等。输出设备860可以是一个或多个输出设备,例如显示器、扬声器、打印机等。电子设备800还可以根据需要通过通信单元840与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与电子设备800交互的设备进行通信,或者与使得电子设备800与一个或多个其他电子设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(I/O)接口(未示出)来执行。
根据本公开的示例性实现方式,提供了一种计算机可读存储介质,其上存储有计算机可执行指令,其中计算机可执行指令被处理器执行以实现上文描述的方法。根据本公开的示例性实现方式,还提供了一种计算机程序产品,计算机程序产品被有形地存储在非瞬态计算机可读介质上并且包括计算机可执行指令,而计算机可执行指令被处理器执行以实现上文描述的方法。
这里参照根据本公开实现的方法、装置、设备和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实现的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各个实现方式。
Claims (13)
1.一种数据处理方法,包括:
在多个节点的第一节点处,响应于监听到由第一数据对应的数据变更,确定所述第一数据是否包括完成标记,所述完成标记用于指示所述第一数据已被处理完成;
如果确定所述第一数据不包括所述完成标记,向所述第一数据添加节点标记,所述节点标记指示用于处理所述第一数据的节点为所述多个节点中的第二节点;以及
将包括所述节点标记的所述第一数据发送给所述多个节点中所述第一节点之外的其他节点。
2.根据权利要求1所述的方法,还包括:
如果确定所述第一数据包括所述完成标记,丢弃所述第一数据。
3.根据权利要求1所述的方法,还包括:
获取所述多个节点各自对应的节点信息,所述节点信息至少包括对应节点的心跳信息;以及
如果从所述第二节点的心跳信息检测到异常事件,更新所述第一数据的所述节点标记,更新后的节点标记指示用于处理所述第一数据的节点为所述多个节点中的第三节点,所述第三节点不同于所述第二节点。
4.根据权利要求1至3中任一项所述的方法,其中所述第一节点为所述多个节点中的主节点,并且所述多个节点中的其他节点为从节点。
5.根据权利要求4所述的方法,还包括:
在所述第一节点处,响应于从所述第一节点的心跳信息检测到异常事件,执行所述第一节点的节点重启,
其中所述多个节点中的第四节点被确定为所述多个节点中的主节点,并且重启后的所述第一节点被确定为从节点。
6.一种数据处理方法,包括:
在多个节点的第二节点处,响应于接收到第一数据,确定所述第一数据中的节点标记,所述节点标记指示用于处理所述第一数据的节点;
如果确定所述节点标记指示的节点为所述第二节点,对所述第一数据执行数据处理;以及
响应于对所述第一数据的数据处理完成,从所述第一数据中删除所述节点标记。
7.根据权利要求6所述的方法,还包括:
向所述第一数据添加完成标记,所述完成标记用于指示所述第一数据已被处理完成;以及
将包括所述完成标记的所述第一数据发送给所述多个节点中所述第二节点之外的其他节点。
8.根据权利要求6和7中任一项所述的方法,其中所述多个节点包括主节点和至少一个从节点,所述第二节点为从节点。
9.根据权利要求8所述的方法,还包括:
向所述多个节点中的主节点发送所述第二节点的心跳信息。
10.一种用于数据处理的装置,包括:
完成标记确定模块,被配置为在多个节点的第一节点处,响应于监听到由第一数据对应的数据变更,确定所述第一数据是否包括完成标记,所述完成标记用于指示所述第一数据已被处理完成;
节点标记添加模块,被配置为如果确定所述第一数据不包括所述完成标记,向所述第一数据添加节点标记,所述节点标记指示用于处理所述第一数据的节点为所述多个节点中的第二节点;以及
第一数据发送模块,被配置为将包括所述节点标记的所述第一数据发送给所述多个节点中所述第一节点之外的其他节点。
11.一种用于数据处理的装置,包括:
第一数据接收模块,被配置为在多个节点的第二节点处,响应于接收到第一数据,确定所述第一数据中的节点标记,所述节点标记指示用于处理所述第一数据的节点;
数据处理执行模块,被配置为如果确定所述节点标记指示的节点为所述第二节点,对所述第一数据执行数据处理;以及
节点标记删除模块,被配置为响应于对所述第一数据的数据处理完成,从所述第一数据中删除所述节点标记。
12.一种电子设备,
至少一个处理单元;以及
至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理单元并且存储用于由所述至少一个处理单元执行的指令,所述指令在由所述至少一个处理单元执行时使所述电子设备执行根据权利要求1至5中任一项所述的方法或权利要求6至9中任一项所述的方法。
13.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序可由处理器执行以实现根据权利要求1至5中任一项所述的方法或权利要求6至9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410131277.1A CN117971844A (zh) | 2024-01-30 | 2024-01-30 | 用于数据处理的方法、装置、设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410131277.1A CN117971844A (zh) | 2024-01-30 | 2024-01-30 | 用于数据处理的方法、装置、设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117971844A true CN117971844A (zh) | 2024-05-03 |
Family
ID=90861070
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410131277.1A Pending CN117971844A (zh) | 2024-01-30 | 2024-01-30 | 用于数据处理的方法、装置、设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117971844A (zh) |
-
2024
- 2024-01-30 CN CN202410131277.1A patent/CN117971844A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8407688B2 (en) | Methods and apparatus for storing and transmitting historical configuration data associated with information technology assets | |
WO2019205371A1 (zh) | 服务器、消息分配的方法及存储介质 | |
US9384114B2 (en) | Group server performance correction via actions to server subset | |
US9686330B2 (en) | Topic-based messaging using consumer address and pool | |
CN111274252B (zh) | 一种区块链的数据上链方法、装置、存储介质和服务器 | |
CN110795503A (zh) | 分布式存储系统的多集群数据同步方法及相关装置 | |
CN111078147A (zh) | 一种缓存数据的处理方法、装置、设备及存储介质 | |
CN109275042B (zh) | 一种弹幕消息的分发方法、装置、终端和存储介质 | |
CN111770002A (zh) | 测试数据转发控制方法、装置、可读存储介质和电子设备 | |
CN112737800A (zh) | 服务节点故障定位方法、调用链生成方法及服务器 | |
CN105373563B (zh) | 数据库切换方法及装置 | |
CN113535344A (zh) | 网络数据处理方法和装置、服务器及存储介质 | |
CN113220342A (zh) | 中心化配置方法、装置、电子设备及存储介质 | |
US9754004B2 (en) | Asynchronous notification method for data storage systems | |
CN116540938A (zh) | 数据读取方法、装置、分布式存储系统、设备和存储介质 | |
CN115658745A (zh) | 数据处理方法、装置、计算机设备和计算机可读存储介质 | |
CN117971844A (zh) | 用于数据处理的方法、装置、设备和存储介质 | |
CN114185804A (zh) | 一种接口测试方法、装置及终端设备 | |
CN111552581B (zh) | 事件传递方法、装置、系统和电子设备 | |
CN113726885A (zh) | 一种流量配额的调整方法和装置 | |
CN109309583B (zh) | 基于分布式系统的信息获取方法、装置、电子设备和介质 | |
CN110147379B (zh) | 基于数据锁的信息采集方法、装置、计算机设备 | |
CN111679899A (zh) | 任务调度方法、装置、平台设备及存储介质 | |
CN111324374A (zh) | 基于应用性能管理系统的应用程序的注册方法和装置 | |
CN112099857B (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 |