CN102957622B - 一种数据处理的方法、装置及系统 - Google Patents

一种数据处理的方法、装置及系统 Download PDF

Info

Publication number
CN102957622B
CN102957622B CN201110235099.XA CN201110235099A CN102957622B CN 102957622 B CN102957622 B CN 102957622B CN 201110235099 A CN201110235099 A CN 201110235099A CN 102957622 B CN102957622 B CN 102957622B
Authority
CN
China
Prior art keywords
data
processing node
processing
initial conditions
task
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.)
Active
Application number
CN201110235099.XA
Other languages
English (en)
Other versions
CN102957622A (zh
Inventor
张维
王晓哲
郑培祥
原攀峰
张茂森
朱震杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201110235099.XA priority Critical patent/CN102957622B/zh
Publication of CN102957622A publication Critical patent/CN102957622A/zh
Priority to HK13104631.2A priority patent/HK1177353A1/zh
Application granted granted Critical
Publication of CN102957622B publication Critical patent/CN102957622B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本申请公开了一种数据处理的方法、装置及系统,用以解决现有技术中对数据处理的实时性和可扩展性差的问题。该方法处理节点在协调服务器中获取为该处理节点配置的每个数据处理任务,接收上一级处理节点输出的每个数据流,根据获取的数据处理任务对应的输入条件,在接收到的每个数据流包含的数据中,提取符合输入条件的数据,根据该数据处理任务对应的处理逻辑,对提取的数据进行处理,当判断存在下一级处理节点时,将处理后的数据发送给下一级处理节点处理,否则将处理后的数据作为处理结果输出,提高了处理数据的实时性,提高了数据处理的系统的可扩展性。

Description

一种数据处理的方法、装置及系统
技术领域
本申请涉及互联网技术领域,尤其涉及一种数据处理的方法、装置及系统。
背景技术
随着互联网用户的增多及大型网站的访问量不断攀升,互联网上出现了大量的数据流,其中,该数据流由多个数据构成,构成该数据流的数据携带该数据流对应的数据流标识信息。
数据流中的每个数据往往具有很强的实时性,要求数据处理装置及时的处理数据流中的每个数据。例如,该数据流中的数据包含用户访问某个网站的访问量,及时的对包含访问量的数据进行处理,可以反映该网站的访问量的变化情况,分析每天各小时用户访问该网站的访问量,以及各小时访问该网站的用户数分布,这对于该网站来说具有重要的实际意义。再如,团购网站上进行限时促销某种商品时,由于商品的数量有限,因此需要实时的更新商品的剩余数量信息,对于用户而言,用户也会比较关心该商品已经有多少人抢购成功,还剩多少件商品等信息,那么包含这些信息的数据也是具有很强的实时性的。
然而,现有技术中一种数据处理的方法为:数据处理装置将数据流中的数据先保存下来,并按照设定的时间间隔,采用批处理的方式对保存的数据进行处理,将处理结果输出。
在上述过程中,由于数据处理装置的能力有限,因此数据处理装置不能持续的对数据进行处理,而只能先将数据保存下来,并按照设定的时间间隔通过批处理的方式进行处理。并且,受限于数据处理装置的能力,该设定的时间间隔一般较长,例如一天。显然,根据这种数据处理的方法,数据处理装置对数据流中的数据进行处理的实时性较差。
现有技术中的另一种数据处理方法为,通过流计算技术进行数据的处理,该方法虽然可以对数据流中的数据进行实时的处理,但是该方法需要为数据处理系统中的每个处理节点分别配置数据处理任务,因此,该方法只能针对某一特定应用场景进行数据处理,例如,某种数据处理系统只能处理包含网站的访问量的数据,而另一种数据处理系统只能处理包含网站上促销的商品信息的数据,这种方法使得通过流计算技术进行数据处理的方法不具有通用性,可扩展性较差。
发明内容
本申请实施例提供一种数据处理的方法、装置及系统,用以解决现有技术中对数据流中的数据进行处理的实时性较差,可扩展性较差的问题。
本申请实施例提供的一种数据处理的方法,包括:
每级处理节点在协调服务器中获取分别为所述每级处理节点配置的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑;
所述每级处理节点接收至少一个上一级处理节点输出的每个数据流;并
针对获取的每个数据处理任务,根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据;以及
根据该数据处理任务对应的处理逻辑,对提取的数据进行处理;
所述每级处理节点判断是否存在下一级处理节点,若存在,则将处理后的数据发送给下一级处理节点进行处理,否则将处理后的数据作为处理结果输出。
本申请实施例提供的一种数据处理的系统,包括:
多级处理节点,每级处理节点用于在协调服务器中获取分别为所述每级处理节点配置的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑,每级处理节点接收至少一个上一级处理节点输出的每个数据流,并针对获取的每个数据处理任务,根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据,根据该数据处理任务对应的处理逻辑,对提取的数据进行处理,判断是否存在下一级处理节点,若存在,则将处理后的数据发送给下一级处理节点进行处理,否则将处理后的数据作为处理结果输出;
协调服务器,用于存储分别为每级处理节点配置的每个数据处理任务,并分别向每级处理节点提供为每级处理节点配置的每个数据处理任务。
本申请实施例提供的一种数据处理的方法,包括:
当前处理节点在协调服务器中获取为所述当前处理节点配置的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑;
所述当前处理节点接收至少一个上一级处理节点输出的每个数据流;并
针对获取的每个数据处理任务,执行:
当前处理节点根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据;以及
根据该数据处理任务对应的处理逻辑,对提取的数据进行处理;
当前处理节点判断是否存在下一级处理节点,若存在,则将处理后的数据发送给下一级处理节点进行处理,否则将处理后的数据作为处理结果输出。
本申请实施例提供的一种处理节点,包括:
获取模块,用于在协调服务器中获取为自身配置的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑;
接收模块,用于接收至少一个上一级处理节点输出的每个数据流;
提取模块,用于针对获取的每个数据处理任务,根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据;
处理模块,用于根据该数据处理任务对应的处理逻辑,对提取的数据进行处理;
判断发送模块,用于判断是否存在下一级处理节点,若存在,则将处理后的数据发送给下一级处理节点进行处理,否则将处理后的数据作为处理结果输出。
本申请实施例提供一种数据处理的方法、装置及系统,该方法每级处理节点在协调服务器中获取分别为该每级处理节点配置的每个数据处理任务,并接收上一级处理节点输出的每个数据流,根据获取的数据处理任务对应的输入条件,在接收到的每个数据流包含的数据中,提取符合该输入条件的数据,根据该数据处理任务对应的处理逻辑,对提取的数据进行处理,当判断存在下一级处理节点时,将处理后的数据发送给下一级处理节点处理,否则将处理后的数据作为处理结果输出。由于本申请实施例中将对数据流中的数据进行处理的过程拆分为多个数据处理任务,并采用多级处理节点分别进行不同的数据处理任务,因此每级处理节点处理数据的负担较轻,可以持续的对数据流中的数据进行处理,提高了处理数据流中的数据的实时性,并且可以在协调服务器中为每级处理节点配置相应的数据处理任务,提高了数据处理系统的可扩展性。
附图说明
图1为本申请实施例提供的数据处理的过程;
图2为本申请实施例提供的基于图1的方法的数据处理的系统结构示意图;
图3为本申请实施例提供的针对图2中的一个处理节点的数据处理过程;
图4为本申请实施例提供的针对图2中的一个处理节点的数据处理的详细过程;
图5为本申请实施例提供的处理节点结构示意图;
图6为本申请实施例提供的处理节点的具体实现结构示意图。
具体实施方式
由于现有技术中数据处理的方法主要受限于数据处理装置的能力,数据处理装置不能持续的进行处理操作,而只能先将数据保存下来,并按照设定的时间间隔通过批处理的方式对数据进行处理。因此,本申请实施例中,为了持续的对数据流中的数据进行处理,提高数据处理的实时性,采用分布式系统对数据流中的数据进行处理,将对数据进行处理的整个过程拆分为若干个数据处理任务,由分布式系统中的不同处理节点分别进行不同的数据处理任务,以分担数据处理的压力,达到持续的对数据流中的数据进行处理,提高数据处理的实时性的目的。并且,为了提高数据处理的系统的可扩展性,本发明实施例中在协调服务器中统一为每级处理节点配置相应的数据处理任务,运行系统时,每级处理节点先从协调服务器中获取相应的数据处理任务,再对数据流中的数据进行处理。
下面结合说明书附图,对本申请实施例进行详细描述。
图1为本申请实施例提供的数据处理的过程,具体包括以下步骤:
S101:每级处理节点在协调服务器中获取分别为该每级处理节点配置的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑。
在本申请实施例中,为了提高数据处理的系统的可扩展性,便于该数据处理的系统能够应用于不同的场景中,以及便于根据需要增加或减少处理节点,采用协调服务器保存每级处理节点的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件以及处理逻辑,并且每级处理节点需要执行的每个数据处理任务可以根据需要进行配置。因此,针对每级处理节点,该处理节点则可以在协调服务器中获取为该处理节点配置的每个数据处理任务。其中,该协调服务器可采用分布式应用程序协调服务集群,包括ZooKeeper集群等。
S102:每级处理节点接收至少一个上一级处理节点输出的每个数据流。
在本申请实施例中,数据处理系统包括多级处理节点,每级处理节点分别对数据进行不同的数据处理任务,因此针对每级处理节点,该处理节点将每个上一级处理节点输出的数据流作为输入,即接收至少一个上一级处理节点输出的每个数据流。
S103:针对获取的每个数据处理任务,根据该数据处理任务对应的输入条件,在接收到的该至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据。
在本申请实施例中,每级处理节点可以对多个数据分别进行对应的数据处理任务。每级处理节点获取到相应的数据处理任务后,则可以针对每个数据处理任务,根据该数据处理任务对应的输入条件,在接收到的每个数据流中包含的数据中,提取出符合该输入条件的数据。也即根据每个数据处理任务对应的输入条件,筛选出每个数据处理任务对应要处理的数据。
S104:根据该数据处理任务对应的处理逻辑,对提取的数据进行处理。
其中,每个数据处理任务分别对应的处理逻辑,也即每个数据处理任务分别对应具体的处理操作,根据该数据处理任务对应的具体的处理操作,对提取的数据进行处理。
S105:每级处理节点判断是否存在下一级处理节点,若判断结果为是,则进行步骤S106,否则进行步骤S107。
在本申请实施例中,针对每级处理节点,该处理节点处理完数据后,判断自身是否是最后一级处理节点,也即判断是否还存在下一级处理节点。具体可以根据保存的下一级处理节点列表来判断,即,判断保存的下一级处理节点列表中是否记录了至少一个下一级处理节点的标识信息,若判断结果为是,则确定存在下一级处理节点,也即确定自身不是最后一级处理节点,否则确定不存在下一级处理节点,也即确定自身是最后一级处理节点。
S106:将处理后的数据发送给下一级处理节点进行处理。
当确定存在下一级处理节点时,说明对数据进行处理的整个过程尚未结束,还需要下一级处理节点继续进行处理,因此将处理后的数据发送给下一级处理节点处理。
S107:将处理后的数据作为处理结果输出。
当确定不存在下一级处理节点时,说明该处理节点对数据进行处理后,对该数据进行处理的整个过程已经结束,因此将处理后的数据作为处理结果输出。
图2为本申请实施例提供的基于图1的方法的数据处理的系统结构示意图。如图2所示,该系统包括多级处理节点,以及协调服务器。每级处理节点在协调服务器中获取相应的数据处理任务,执行获取的数据处理任务,并按照连接关系,将处理后的数据发送给下一级处理节点进行处理,当最后一级处理节点处理完成后,则对数据的处理过程结束,输出处理结果。具体的:
每级处理节点,用于在协调服务器中获取分别为该每级处理节点配置的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑,每级处理节点接收至少一个上一级处理节点输出的每个数据流,并针对保存的每个数据处理任务,根据该数据处理任务对应的输入条件,在接收到的该至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据,根据该数据处理任务对应的处理逻辑,对提取的数据进行处理,判断是否存在下一级处理节点,若存在,则将处理后的数据发送给下一级处理节点进行处理,否则将处理后的数据作为处理结果输出;
协调服务器,用于存储分别为每级处理节点配置的每个数据处理任务,并分别向每级处理节点提供为每级处理节点配置的每个数据处理任务。
并且,该系统还可以包括监控服务器,用于对该系统中的每个处理节点进行监控,监控每个处理节点的运行情况。
基于上述系统,在本申请实施例提供的数据处理的过程中,每级处理节点在协调服务器中获取相应的数据处理任务,其中,可以根据需要在协调服务器中为每级处理节点配置相应的数据处理任务,并推送到某个处理节点上执行。因此本申请实施例提供的数据处理的系统,相比于现有技术中只能针对某一特征场景使用的数据处理的系统,提高了可扩展性,可以根据不同的应用场景在协调服务器中为每级处理节点配置相应的数据处理任务,并且还可以根据需要为每级处理节点配置其他相关信息,以方便增加或减少处理节点。
另外,由于本申请实施例中将对数据流中的数据进行处理的过程拆分为多个数据处理任务,并采用多级处理节点分别进行不同的数据处理任务,每级处理节点将上一级处理节点输出的数据流作为输入,直至最后一级处理节点处理数据后,将处理结果输出,因此每个处理节点处理数据的负担较轻,可以持续的对数据流中的数据进行处理,即每当有数据流输入时,都可以及时的对数据流中的数据进行处理,相比与现有技术中先将数据保存下来,并按照设定的时间间隔进行处理的方法,本申请实施例提供的数据处理的方法提高了处理数据流中的数据的实时性。
图3为本申请实施例提供的针对图2中的一个处理节点的数据处理过程,具体包括以下步骤:
S301:当前处理节点在协调服务器中获取为该当前处理节点配置的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑。
S302:当前处理节点接收至少一个上一级处理节点输出的每个数据流。
S303:针对获取的每个数据处理任务,根据该数据处理任务对应的输入条件,在接收到的该至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据。
S304:根据该数据处理任务对应的处理逻辑,对提取的数据进行处理。
S305:判断是否存在下一级处理节点,若判断结果为是,则进行步骤S306,否则进行步骤S307。
S306:将处理后的数据发送给下一级处理节点进行处理。
S307:将处理后的数据作为处理结果输出。
在本申请实施例中,在图3所示的步骤S303中,该处理节点根据该数据处理任务对应的输入条件,在接收到的该至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据的过程具体为:根据该数据处理任务对应的输入条件中包含的数据流标识信息,在接收到的该至少一个上一级处理节点输出的每个数据流中,确定该输入条件中包含的数据流标识信息对应的数据流,并根据该数据处理任务对应的输入条件中包含的数据的属性信息,在确定出的数据流中提取具有该属性信息的数据。
在本申请实施例中,在图3所示的步骤S306中,该当前处理节点将处理后的数据发送给下一级处理节点进行处理的过程具体为,该处理节点根据处理后的数据中携带的数据流标识信息,将处理后的数据添加到该处理后的数据中携带的数据流标识信息对应的数据流中,并将添加了处理后的数据的数据流发送给下一级处理节点进行处理。其中,对于一个数据流中包含的数据,该数据携带有该数据流的数据流标识信息,表示该数据归属于该数据流。该当前处理节点在该数据流中提取并处理数据后,将处理后的数据添加到该处理后的数据归属的数据流中,如果处理该数据之前该数据归属的数据流,与处理后该数据归属的数据流相同,则将该处理后的数据放回到原来的数据流中,如果不同,则将该处理后的数据添加到其归属的数据流中,并将添加了该处理后的数据的数据流发送给下一级处理节点进行处理。
其中,该当前处理节点向下一级处理节点发送添加了该处理后的数据的数据流时,可以根据保存的下一级处理节点列表中记录的下一级处理节点的标识信息进行发送。
具体的,该当前处理节点将处理后的数据添加到其归属的数据流之后,并在将该数据流发送给下一级处理节点之前,还可以根据保存的下一级处理节点列表中记录的该下一级处理节点所需的数据流的数据流标识信息,确定添加了该处理后的数据的数据流为,该下一级处理节点所需的数据流。也即,当该当前处理节点确定存在下一级处理节点时,将处理后的数据添加到其归属的数据流中,并根据保存的下一级处理节点列表中记录的该下一级处理节点所需的数据流的数据流标识信息,判断下一级处理节点是否需要添加了处理后的数据的数据流,若判断结果为是,则将该数据流发送给下一级处理节点处理,否则输出处理结果。
并且,为了进一步提高数据处理的系统的可扩展性,每级处理节点保存的下一级处理节点列表也可以保存在协调服务器中,在处理数据之前,每级处理节点则先从协调服务器中获取为该每级处理节点配置的下一级处理节点列表,以及每个数据处理任务对应的输入条件和处理逻辑。
具体的,可以在协调服务器中定义每个数据处理任务。其中,数据处理任务可包括对应的任务名称、输入数据流的数据流标识信息、处理逻辑、输出数据流的数据流标识信息。并且还可以定义每级处理节点的标识信息,针对定义的每级处理节点,定义该处理节点具体需要执行的数据处理任务对应的任务名称、执行数据处理任务时所需要的数据的属性信息,以及该处理节点的下一级处理节点列表。在下一级处理节点列表中,可以定义该处理节点的下一级处理节点的标识信息,以及该下一级处理节点所需要的数据流的数据流标识信息。其中,处理节点的标识信息可以为该处理节点的互联网协议(Internet Protocol,IP)地址。
在协调服务器上保存了为每个数据处理任务以及每级处理节点配置的相关信息后,当该数据处理的系统运行时,处理节点先到协调服务器中确定其需要执行的每个数据处理任务的任务名称,以及执行数据处理任务时所需要的数据的属性信息,根据确定的每个任务名称,获取定义的每个任务名称对应的每个数据处理任务,包括每个数据处理任务对应的输入数据流的数据流标识信息、处理逻辑、输出数据流的数据流标识信息。针对需要执行的每个数据处理任务,将执行该数据处理任务时所需要的数据的属性信息,以及该数据处理任务对应的输入数据流的数据流标识信息,作为该数据处理任务对应的输入条件。进一步,处理节点在协调服务器中获取为该处理节点配置的下一级处理节点列表,包括下一级处理节点的标识信息,以及下一级处理节点所需要的数据流的数据流标识信息。该数据处理的系统中的每级处理节点获取上述信息后,则可以根据获取到的信息对数据流中的数据进行处理。
图4为本申请实施例提供的针对图2中的一个处理节点的数据处理的详细过程,具体包括以下步骤:
S401:当前处理节点在协调服务器中获取为该当前处理节点配置的每个数据处理任务,以及下一级处理节点列表,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑。
S402:当前处理节点接收至少一个上一级处理节点输出的每个数据流。
S403:针对获取的每个数据处理任务,根据该数据处理任务对应的输入条件中包含的数据流标识信息,在该至少一个上一级处理节点输出的每个数据流中,确定该输入条件中包含的数据流标识信息对应的数据流。
S404:根据该数据处理任务对应的输入条件中包含的数据的属性信息,在确定出的数据流中提取具有该属性信息的数据。
S405:根据该数据处理任务对应的处理逻辑,对提取的数据进行处理。
S406:判断获取的下一级处理节点列表中是否记录了至少一个下一级处理节点的标识信息,若判断结果为是,则进行步骤S407,否则进行步骤S409。
S407:根据处理后的数据中携带的数据流标识信息,将处理后的数据添加到该处理后的数据中携带的数据流标识信息对应的数据流中。
S408:将添加了处理后的数据的数据流发送给下一级处理节点进行处理。
S409:将处理后的数据作为处理结果输出。
图5为本申请实施例提供的处理节点结构示意图,具体包括:
获取模块501,用于在协调服务器中获取为自身配置的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑;
接收模块502,用于接收至少一个上一级处理节点输出的每个数据流;
提取模块503,用于针对获取的每个数据处理任务,根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据;
处理模块504,用于根据该数据处理任务对应的处理逻辑,对提取的数据进行处理;
判断发送模块505,用于判断是否存在下一级处理节点,若存在,则将处理后的数据发送给下一级处理节点进行处理,否则将处理后的数据作为处理结果输出。
所述提取模块503,具体用于根据该数据处理任务对应的输入条件中包含的数据流标识信息,在接收到的所述至少一个上一级处理节点输出的每个数据流中,确定该输入条件中包含的数据流标识信息对应的数据流,并根据该数据处理任务对应的输入条件中包含的数据的属性信息,在确定出的数据流中提取具有所述属性信息的数据。
所述判断发送模块505,具体用于判断保存的下一级处理节点列表中是否记录了至少一个下一级处理节点的标识信息,若判断结果为是,则确定存在下一级处理节点,否则确定不存在下一级处理节点。
所述判断发送模块505,具体用于根据处理后的数据中携带的数据流标识信息,将处理后的数据添加到该处理后的数据中携带的数据流标识信息对应的数据流中,并将添加了处理后的数据的数据流发送给所述下一级处理节点进行处理。
图6为本申请实施例提供的处理节点的具体实现结构示意图,如图6所示,包括请求接收模块、数据接收模块、输入数据流模块、输入数据流管理模块、数据处理模块、数据处理管理模块、输出数据流模块、输出数据流管理模块、发送模块、发送管理模块、配置信息管理模块、监控模块。其中:
请求接收模块,用于接收至少一个上一级处理节点发送的连接请求,并根据该连接请求与该至少一个上一级处理节点建立连接;
数据接收模块,用于基于与该至少一个上一级处理节点建立的连接,接收该至少一个上一级节点发送的每个数据流,并且,为每个数据流创建一个接收进程,一个接收进程只用于接收一个数据流;
输入数据流模块,用于根据每个数据处理任务对应的输入条件中包含的数据流标识信息,将相应的数据流输入到数据处理模块中相应的数据处理任务对应的处理进程中;
输入数据流管理模块,用于在输入数据流模块中创建与每个接收进程对应的输入数据流进程,每个输入数据流进程只对应输入一个数据流;
数据处理模块,包括每个数据处理任务对应的处理进程,每个数据处理任务对应的处理进程接收输入数据流模块输入的相应的数据流,并根据该数据处理任务对应的输入条件中包含的数据的属性信息,在输入的数据流中包含的每个数据中,提取该属性信息对应的数据;每个数据处理任务对应的处理进程分别对应一个处理子模块,用于根据该数据处理任务对应的处理逻辑,对提取的数据进行处理,并将处理后的数据返回该数据处理任务对应的处理进程;
数据处理管理模块,用于根据保存的每个数据处理任务,在数据处理模块中分别创建与每个数据处理任务对应的处理进程;
输出数据流模块,包括与每个处理进程对应的输出进程,用于将数据处理模块中每个处理进程输出的处理后的数据添加到其归属的数据流中,并将添加了处理后的数据的数据流输出到发送模块;
输出数据流管理模块,用于在输出数据流模块中分别创建与数据处理模块中的每个处理进程对应的输出进程,每个输出进程只对应一个数据流;
发送模块,包括与每个输出进程对应的发送进程,用于向下一级节点发送连接请求,将数据数据流模块中的每个输出进程输出的每个数据流发送到下一级节点;
发送管理模块,用于在发送模块中分别创建与输出数据流模块中每个输出进程对应的发送进程,每个发送进程只对应一个数据流;
配置信息管理模块,用于在协调服务器中获取该处理节点以及该处理节点需要执行的每个数据处理任务的相关信息,将获取的信息发送给数据接收模块、输入数据流模块、数据处理模块、输出数据流模块以及发送模块;
监控模块,用于监控该处理节点中各个模块的运行情况。
本申请实施例提供一种数据处理的方法、装置及系统,该方法每级处理节点在协调服务器中获取分别为该每级处理节点配置的每个数据处理任务,并接收上一级处理节点输出的每个数据流,根据获取的数据处理任务对应的输入条件,在接收到的每个数据流包含的数据中,提取符合该输入条件的数据,根据该数据处理任务对应的处理逻辑,对提取的数据进行处理,当判断存在下一级处理节点时,将处理后的数据发送给下一级处理节点处理,否则将处理后的数据作为处理结果输出。由于本申请实施例中将对数据流中的数据进行处理的过程拆分为多个数据处理任务,并采用多级处理节点分别进行不同的数据处理任务,因此每级处理节点处理数据的负担较轻,可以持续的对数据流中的数据进行处理,提高了处理数据流中的数据的实时性,并且可以在协调服务器中为每级处理节点配置相应的数据处理任务,提高了数据处理系统的可扩展性。
本领域的技术人员应明白,本申请的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。例如:可以通过C语言等编程语言编辑计算机程序功能模块实现。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (8)

1.一种数据处理的方法,其特征在于,包括:
每级处理节点在协调服务器中获取分别为所述每级处理节点配置的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑;
所述每级处理节点接收至少一个上一级处理节点输出的每个数据流;并
针对获取的每个数据处理任务,根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据;以及
根据该数据处理任务对应的处理逻辑,对提取的数据进行处理;
所述每级处理节点判断是否存在下一级处理节点,若存在,则将处理后的数据发送给下一级处理节点进行处理,否则,将处理后的数据作为处理结果输出;
所述根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合所述输入条件的数据,具体包括:
根据该数据处理任务对应的输入条件中包含的数据流标识信息,在接收到的所述至少一个上一级处理节点输出的每个数据流中,确定该输入条件中包含的数据流标识信息对应的数据流;并
根据该数据处理任务对应的输入条件中包含的数据的属性信息,在确定出的数据流中提取具有所述属性信息的数据。
2.一种数据处理的系统,其特征在于,包括:
多级处理节点,每级处理节点用于在协调服务器中获取分别为所述每级处理节点配置的每个数据处理任务;其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑,每级处理节点接收至少一个上一级处理节点输出的每个数据流,并针对获取的每个数据处理任务,根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据,根据该数据处理任务对应的处理逻辑,对提取的数据进行处理,判断是否存在下一级处理节点,若存在,则将处理后的数据发送给下一级处理节点进行处理,否则将处理后的数据作为处理结果输出;所述根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合所述输入条件的数据,具体包括:根据该数据处理任务对应的输入条件中包含的数据流标识信息,在接收到的所述至少一个上一级处理节点输出的每个数据流中,确定该输入条件中包含的数据流标识信息对应的数据流;并根据该数据处理任务对应的输入条件中包含的数据的属性信息,在确定出的数据流中提取具有所述属性信息的数据;
协调服务器,用于存储分别为每级处理节点配置的每个数据处理任务,并分别向每级处理节点提供为每级处理节点配置的每个数据处理任务。
3.一种数据处理的方法,其特征在于,包括:
当前处理节点在协调服务器中获取为所述当前处理节点配置的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑;
所述当前处理节点接收至少一个上一级处理节点输出的每个数据流;并
针对获取的每个数据处理任务,执行:
当前处理节点根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据;以及
根据该数据处理任务对应的处理逻辑,对提取的数据进行处理;
当前处理节点判断是否存在下一级处理节点,若存在,则将处理后的数据发送给下一级处理节点进行处理,否则将处理后的数据作为处理结果输出;
根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合所述输入条件的数据,具体包括:
根据该数据处理任务对应的输入条件中包含的数据流标识信息,在接收到的所述至少一个上一级处理节点输出的每个数据流中,确定该输入条件中包含的数据流标识信息对应的数据流;并
根据该数据处理任务对应的输入条件中包含的数据的属性信息,在确定出的数据流中提取具有所述属性信息的数据。
4.如权利要求3所述的方法,其特征在于,所述当前处理节点判断是否存在下一级处理节点,具体包括:
所述当前处理节点判断保存的下一级处理节点列表中是否记录了至少一个下一级处理节点的标识信息,若判断结果为是,则确定存在下一级处理节点,否则确定不存在下一级处理节点。
5.如权利要求3所述的方法,其特征在于,将处理后的数据发送给下一级处理节点进行处理,具体包括:
根据处理后的数据中携带的数据流标识信息,将处理后的数据添加到该处理后的数据中携带的数据流标识信息对应的数据流中;并
将添加了处理后的数据的数据流发送给所述下一级处理节点进行处理。
6.一种处理节点,其特征在于,包括:
获取模块,用于在协调服务器中获取为自身配置的每个数据处理任务,其中,数据处理任务包括该数据处理任务对应的输入条件和处理逻辑;
接收模块,用于接收至少一个上一级处理节点输出的每个数据流;
提取模块,用于针对获取的每个数据处理任务,根据该数据处理任务对应的输入条件,在接收到的所述至少一个上一级处理节点输出的每个数据流包含的数据中,提取符合该输入条件的数据;
处理模块,用于根据该数据处理任务对应的处理逻辑,对提取的数据进行处理;
判断发送模块,用于判断是否存在下一级处理节点,若存在,则将处理后的数据发送给下一级处理节点进行处理,否则将处理后的数据作为处理结果输出;
所述提取模块,具体用于根据该数据处理任务对应的输入条件中包含的数据流标识信息,在接收到的所述至少一个上一级处理节点输出的每个数据流中,确定该输入条件中包含的数据流标识信息对应的数据流,并根据该数据处理任务对应的输入条件中包含的数据的属性信息,在确定出的数据流中提取具有所述属性信息的数据。
7.如权利要求6所述的处理节点,其特征在于,所述判断发送模块,具体用于判断保存的下一级处理节点列表中是否记录了至少一个下一级处理节点的标识信息,若判断结果为是,则确定存在下一级处理节点,否则确定不存在下一级处理节点。
8.如权利要求6所述的处理节点,其特征在于,所述判断发送模块,具体用于根据处理后的数据中携带的数据流标识信息,将处理后的数据添加到该处理后的数据中携带的数据流标识信息对应的数据流中,并将添加了处理后的数据的数据流发送给所述下一级处理节点进行处理。
CN201110235099.XA 2011-08-16 2011-08-16 一种数据处理的方法、装置及系统 Active CN102957622B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110235099.XA CN102957622B (zh) 2011-08-16 2011-08-16 一种数据处理的方法、装置及系统
HK13104631.2A HK1177353A1 (zh) 2011-08-16 2013-04-17 種數據處理的方法、裝置及系統

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110235099.XA CN102957622B (zh) 2011-08-16 2011-08-16 一种数据处理的方法、装置及系统

Publications (2)

Publication Number Publication Date
CN102957622A CN102957622A (zh) 2013-03-06
CN102957622B true CN102957622B (zh) 2015-05-27

Family

ID=47765870

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110235099.XA Active CN102957622B (zh) 2011-08-16 2011-08-16 一种数据处理的方法、装置及系统

Country Status (2)

Country Link
CN (1) CN102957622B (zh)
HK (1) HK1177353A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104346135B (zh) * 2013-08-08 2018-06-15 腾讯科技(深圳)有限公司 数据流并行处理的方法、设备及系统
CN104320382B (zh) * 2014-09-30 2018-04-20 华为技术有限公司 分布式的实时流处理装置、方法和单元
JP6598973B2 (ja) * 2015-03-23 2019-10-30 モルガン スタンレー サービシーズ グループ,インコーポレイテッド 分散コンピューティングシステムにおけるデータフローの追跡
CN106951424B (zh) * 2016-01-07 2021-08-06 菜鸟智能物流控股有限公司 一种输入处理方法及装置
WO2020034154A1 (zh) * 2018-08-16 2020-02-20 朱小军 一种作用于仿生数据细胞体的数据蛋白
CN110347636A (zh) * 2019-07-15 2019-10-18 北京一流科技有限公司 数据执行体及其数据处理方法
CN110708576A (zh) * 2019-09-25 2020-01-17 李多 收视数据处理方法、装置以及存储介质
CN111475684B (zh) * 2020-06-29 2020-09-22 北京一流科技有限公司 数据处理网络系统及其计算图生成方法
CN111935663B (zh) * 2020-07-17 2022-01-25 腾讯科技(深圳)有限公司 传感器数据流的处理方法、装置、介质及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101425077A (zh) * 2007-10-29 2009-05-06 株式会社东芝 协调服务器、数据库服务器、及流水线处理控制方法
CN102138138A (zh) * 2008-08-18 2011-07-27 国际商业机器公司 用于实现流处理计算机架构的方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7395298B2 (en) * 1995-08-31 2008-07-01 Intel Corporation Method and apparatus for performing multiply-add operations on packed data

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101425077A (zh) * 2007-10-29 2009-05-06 株式会社东芝 协调服务器、数据库服务器、及流水线处理控制方法
CN102138138A (zh) * 2008-08-18 2011-07-27 国际商业机器公司 用于实现流处理计算机架构的方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《S4: Distributed Stream Computing Platform》;Leonardo Neumeyer et al;《2010 IEEE International Conference on Data Mining Workshops》;20101231;第3页,图2 *

Also Published As

Publication number Publication date
CN102957622A (zh) 2013-03-06
HK1177353A1 (zh) 2013-08-16

Similar Documents

Publication Publication Date Title
CN102957622B (zh) 一种数据处理的方法、装置及系统
JP7112919B2 (ja) スマート装置のタスク処理方法および装置
CN110569298B (zh) 一种数据对接、可视化方法和系统
CN107770229B (zh) 云端文件分享方法、系统和云服务器
US9516684B2 (en) Data transmission method, data acquiring method, and electronic device
CN106095597B (zh) 客户端数据处理方法及装置
CN109862100B (zh) 用于推送信息的方法和装置
CN104243598A (zh) 一种信息推荐方法及装置
EP3651421A1 (en) Multimedia display method, apparatus, and device
CN104767839A (zh) 一种ip定位方法及装置
WO2014110929A1 (en) Method, device, and system for uploading data
CN110928681A (zh) 数据的处理方法和装置、存储介质及电子装置
CN103701867A (zh) 一种处理调用请求的方法、系统及中心服务器
CN105335186B (zh) 数据下载管理方法及系统
CN114676205A (zh) 事件信息的处理方法及装置
CN103001989A (zh) 参数接收方法及系统
CN114390044A (zh) 一种文件上传方法、系统、设备及存储介质
CN104753811A (zh) 一种流媒体业务优化方法、设备及系统
CN107329832B (zh) 一种数据接收方法及装置
CN113242244A (zh) 数据传输方法、装置和系统
CN111859127A (zh) 消费数据的订阅方法、装置及存储介质
CN106161517B (zh) 通过云文件系统实现云存储接入的方法和装置
CN111045928A (zh) 一种接口数据测试方法、装置、终端及存储介质
CN109831335A (zh) 一种数据监控方法、监控终端、存储介质及数据监控系统
CN115878860A (zh) 一种菜单的生成方法、装置、服务器设备及介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1177353

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1177353

Country of ref document: HK