CN106878171B - 一种用于多数据源的流式数据处理方法及装置 - Google Patents
一种用于多数据源的流式数据处理方法及装置 Download PDFInfo
- Publication number
- CN106878171B CN106878171B CN201611259435.3A CN201611259435A CN106878171B CN 106878171 B CN106878171 B CN 106878171B CN 201611259435 A CN201611259435 A CN 201611259435A CN 106878171 B CN106878171 B CN 106878171B
- Authority
- CN
- China
- Prior art keywords
- data
- message header
- message
- transmission path
- node
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/56—Routing software
- H04L45/566—Routing instructions carried by the data packet, e.g. active networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
- H04L63/0245—Filtering by information in the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种用于多数据源的流式数据处理方法及装置,所述方法包括如下步骤:当数据到达传输管道的接入点时,获取所述数据包括的消息头和消息体,所述消息头包含所述消息体的特征信息,所述数据来自多个数据源中的任一数据源;在所述消息头的指示下对所述数据进行传输和处理,以将所述数据经由所述传输管道的出口点传输至目的点,所述目的点根据所述消息头确定;其中,所述数据在所述传输管道内的传输路径根据所述消息头或者消息体确定。通过本发明提供的技术方案能够基于同一传输管道来体系化的接入和处理不同数据源和/或数据结构的数据,极大地提高了对数据的处理效率。
Description
技术领域
本发明涉及大数据处理领域,具体地涉及一种用于多数据源的流式数据处理方法及装置。
背景技术
在大数据领域,特别是在大数据分析过程中,数据的接入和数据的结构化是最为关键的两个部分。在实际应用中,用于分析的数据可能来源于多个数据源,并且基于不同数据源获得的数据的结构也可能存在差异,这就对大数据分析带来了很大的障碍。
在现有的大数据处理领域,对于数据接入方面的处理仍处于“各自为阵”的阶段,没有形成体系化的操作模式。在现阶段,大多数情况下,用户都是根据单一的业务逻辑进行高耦合的开发,从而处理和分析从单一数据源接入的数据。但是,这样的方案需要用户针对不同的数据源以及不同的数据结构分别制定对应的业务逻辑和处理规则,当需要的处理的数据的来源较多时,现有的方案无法满足用户高效、便捷的数据接入和处理需求,不利于提高数据处理的效率。
发明内容
本发明解决的技术问题是现有技术必须针对不同的数据源以及不同的数据结构分别制定对应的业务逻辑和处理规则,无法更好地提高数据处理效率的问题。
为解决上述技术问题,本发明实施例提供一种用于多数据源的流式数据处理方法,包括如下步骤:当数据到达传输管道的接入点时,获取所述数据包括的消息头和消息体,所述消息头包含所述消息体的特征信息,所述数据来自多个数据源中的任一数据源;在所述消息头的指示下对所述数据进行传输和处理,以将所述数据经由所述传输管道的出口点传输至目的点,所述目的点根据所述消息头确定;其中,所述数据在所述传输管道内的传输路径根据所述消息头或者消息体确定。
可选的,所述目的点包括:使用和/或存储所述数据的终端。
可选的,在所述消息头的指示下对所述数据进行传输和处理包括:根据所述消息体与预设标准的比较结果,确定所述数据在所述传输管道内的传输路径,以将符合所述预设标准的数据经由所述传输路径传输至所述出口点。
可选的,在所述消息头的指示下对所述数据进行传输和处理还包括:若所述消息体不符合所述预设标准,则将所述数据从所述传输管道中移除,或者将所述传输管道的出口点修正为错误数据传输管道的接入点。
可选的,在所述消息头的指示下对所述数据进行传输和处理包括:根据所述消息体确定所述目的点是否需要更改;若所述目的点需要更改,则根据更改后的目的点确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径传输至所述出口点。
可选的,根据所述消息体确定所述目的点是否需要更改包括:根据所述消息体判断所述消息头是否需要更改;当判断结果表明所述消息头需要更改时,将所述消息头更改为与所述消息体相对应的消息头,并确定所述目的点需要更改。
可选的,在所述消息头的指示下对所述数据进行传输和处理包括:根据所述消息头确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径传输至所述出口点。
可选的,在所述消息头的指示下对所述数据进行传输和处理包括:根据所述消息体的类型确定是否需要将所述数据分解为至少两个子数据,所述子数据也包括消息头和消息体;当确定需要将所述数据分解为至少两个子数据时,根据每一子数据的特征信息确定对应的消息头;针对每一子数据,根据所述子数据的消息头确定对应的目的点,并确定所述子数据在所述传输管道内的传输路径,以将所述子数据经由所述传输路径传输至所述出口点。
本发明实施例还提供一种用于多数据源的流式数据处理装置,包括:获取模块,当数据到达传输管道的接入点时,获取所述数据包括的消息头和消息体,所述消息头包含所述消息体的特征信息,所述数据来自多个数据源中的任一数据源;处理模块,用于在所述消息头的指示下对所述数据进行传输和处理,以将所述数据经由所述传输管道的出口点传输至目的点,所述目的点根据所述消息头确定;其中,所述数据在所述传输管道内的传输路径根据所述消息头或者消息体确定。
可选的,所述目的点包括:使用和/或存储所述数据的终端。
可选的,所述处理模块包括:过滤器节点,所述过滤器节点用于根据所述消息体与预设标准的比较结果,确定所述数据在所述传输管道内的传输路径,以将符合所述预设标准的数据经由所述传输路径从所述过滤器节点传输至所述出口点。
可选的,若所述消息体不符合所述预设标准,则所述过滤器节点将所述数据从所述传输管道中移除,或者将所述传输管道的出口点修正为错误数据传输管道的接入点。
可选的,所述处理模块包括:转换器节点,所述转换器节点用于根据所述消息体确定所述目的点是否需要更改;若所述目的点需要更改,则所述转换器节点根据更改后的目的点确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径从所述转换器节点传输至所述出口点。
可选的,所述转换器节点包括:判断单元,用于根据所述消息体判断所述消息头是否需要更改;更改单元,当判断结果表明所述消息头需要更改时,将所述消息头更改为与所述消息体相对应的消息头,并确定所述目的点需要更改。
可选的,所述处理模块包括:路由器节点,所述路由器节点用于根据所述消息头确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径从所述路由器节点传输至所述出口点。
可选的,所述处理模块包括:分解器节点,所述分解器节点用于根据所述消息体的类型确定是否需要将所述数据分解为至少两个子数据,所述子数据也包括消息头和消息体;当确定需要将所述数据分解为至少两个子数据时,所述分解器节点根据每一子数据的特征信息确定对应的消息头;针对每一子数据,所述分解器节点根据所述子数据的消息头确定对应的目的点,并确定所述子数据在所述传输管道内的传输路径,以将所述子数据经由所述传输路径从所述分解器节点传输至所述出口点。
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
当数据到达传输管道的接入点时,获取所述数据包括的消息头和消息体,并在所述消息头的指示下对所述数据进行传输和处理,以将所述数据经由所述传输管道的出口点传输至目的点。较之现有用户需要针对不同的数据源以及不同的数据结构,分别制定对应的业务逻辑和处理规则的技术方案,本发明实施例的技术方案能够基于同一传输管道来体系化的接入和处理不同数据源和/或数据结构的数据。在本发明实施例的技术方案中,根据所述消息头确定所述数据的目的点,以引导所述数据经由所述传输管道的传输和处理最终传输至所述目的点。进一步,根据所述消息头或消息体确定所述数据在所述传输管道包括的不同节点之间的传输路径,从而将所述数据成功传输至所述传输管道的出口点,并经由所述出口点传输至所述目的点,极大地提高了对数据的处理效率。
进一步,所述传输管道中可以包括过滤器节点、转换器节点、路由器节点或者分解器节点中的任一个或任多个,用户可以根据实际需要进行确定所述传输管道包括的至少一个节点的类型以及相互之间的连接顺序,从而形成具有不同处理功能的传输路径,使得所述数据能够经过在所述传输路径上的传输后到达所述传输管道的出口点,并经由所述出口点传输至所述目的点。
附图说明
图1是本发明的第一实施例的一种用于多数据源的流式数据处理方法的流程图;
图2是采用本发明实施例的用于多数据源的流式数据处理方法的一个应用场景示意图;
图3是本发明实施例使用的过滤器节点的应用场景示意图;
图4是本发明实施例使用的转换器节点的应用场景示意图;
图5是本发明实施例使用的路由器节点的应用场景示意图;
图6是本发明实施例使用的分解器节点的应用场景示意图;
图7是采用本发明实施例的用于多数据源的流式数据处理方法的另一个应用场景示意图;
图8是本发明的第二实施例的一种用于多数据源的流式数据处理装置的结构示意图。
具体实施方式
如背景技术所言,现有技术无法体系化地接入和处理不同数据源、不同数据结构的数据,不利于更好地提高对数据的处理效率。
为了解决这一技术问题,本发明所述技术方案在数据到达传输管道的接入点时,获取所述数据包括的消息头和消息体,并在所述消息头的指示下对所述数据进行传输和处理,以将所述数据经由所述传输管道的出口点传输至目的点。通过本发明所述技术方案,能够基于同一传输管道来体系化的接入和处理不同数据源和/或数据结构的数据
本领域技术人员理解,由于本发明实施例的技术方案中,根据所述消息头确定所述数据的目的点,以引导所述数据经由所述传输管道的传输和处理最终传输至所述目的点。进一步,根据所述消息头或消息体确定所述数据在所述传输管道包括的不同节点之间的传输路径,从而将所述数据成功传输至所述传输管道的出口点,并经由所述出口点传输至所述目的点,极大地提高了对数据的处理效率。
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
图1是本发明的第一实施例的一种用于多数据源的流式数据处理方法的流程图。具体地,在本实施例中,首先执行步骤S101,当数据到达传输管道的接入点时,获取所述数据包括的消息头和消息体,所述消息头包含所述消息体的特征信息,所述数据来自多个数据源中的任一数据源。更为具体地,所述数据源可以指所述数据的来源地。优选地,所述特征信息可以包括所述消息体的属性、长度、是否存在缺省等内容。在一个优选例中,可以由所述数据源确定所述消息头,并将所述消息头作为所述数据的一部分一并发出。
然后执行步骤S102,在所述消息头的指示下对所述数据进行传输和处理,以将所述数据经由所述传输管道的出口点传输至目的点,所述目的点根据所述消息头确定。具体地,所述传输管道可以包括至少一个节点。更为具体地,所述数据在不同节点之间的传输路径根据所述消息头或者消息体确定。优选地,所述目的点可以包括使用和/或存储所述数据的终端。
在一个变化例中,所述目的点还可以包括另一个传输管道的接入点。
进一步地,所述数据源可以包括文件、爬虫、网络接口、数据库等。例如,所述网络接口可以包括应用程序编程接口(Application Programming Interface,简称API)。
本领域技术人员理解,可以将本发明实施例的技术方案类比于物流行业中的包裹分拣处理模式,其中,所述消息头可以对应于快递单,所述消息体则可以对应于需要投递的包裹,所述传输管道对应于包裹分拣中心,所述数据源可以对应于寄件地址,所述目的点可以对应于收件地址。
在结合图2的一个典型的应用场景中,在执行本发明实施例的技术方案时,所述传输管道2的接入点a可以从多个数据源(图2中仅示出多个数据源中的一个数据源1)处接收到多个数据,对应于快递员会从很多地方收集到需要投递的快递包裹;当所述多个数据到达所述传输管道2后,对应于包裹到达包裹分拣中心;所述传输管道2包括的所述至少一个节点(图中未示出)对所述数据进行传输和处理,对应于分拣中心对接收到的包裹进行各项检查和处理;最终将所述数据经由所述传输管道2的出口点b传输至由所述消息头确定的目的点3,对应于所述分拣中心根据所述快递单确定目的地后,将所述数据转交至所述分拣中心的出货口,并经由所述出货口运输至所述目的地。
下面结合图3至图6对所述至少一个节点在本发明实施例的应用场景做具体阐述。
一并参照图2,在结合图3的一个优选的应用场景中,所述传输管道2包括过滤器节点24,所述过滤器节点24用于根据所述消息体与预设标准的比较结果,确定所述数据在所述传输管道2内的传输路径,以将符合所述预设标准的数据经由所述传输路径传输至所述出口点b。进一步地,所述传输路径包括从所述过滤器节点24到所述出口点b的传输路径。
优选地,所述预设标准基于所述消息体的属性数据确定。例如,可以将所述预设标准设定为判定所述数据的数据类型是否符合预设数据类型,当所述数据经过所述过滤器节点24检测并判定为符合所述预设数据类型时,所述数据才能够继续在所述传输管道2内传输至所述出口点b。又例如,若所述消息体为用户信息,则还可以将所述预设标准定义为判断所述消息体是否包括用户名,若所述消息体中未包括用户名,则可以确定所述数据为不合法数据,无法继续经由所述传输路径传输至所述出口点b。
优选地,在大数据处理领域,所述过滤器节点24主要用于逻辑检验和判断业务数据完整性。例如,若所述过滤器节点24比较发现所述数据的消息体中,出现了网络之间互连的协议(Internet Protocol,简称IP)为零的数据,则可以确定所述数据为不合法数据,需要被过滤掉。
进一步地,若所述消息体不符合所述预设标准,则将所述数据从所述传输管道2中移除(图中未示出),或者将所述传输管道2的出口点修正为错误数据传输管道26的接入点c。
例如,当所述过滤器节点24的比较结果表明所述数据的消息体不符合所述预设标准,并确定将所述数据从所述传输管道2中移除,则所述数据无法再基于所述传输管道2到达其所希望到达的所述出口点b,而是可能被直接从所述传输管道2中删除。
优选地,所述错误数据传输管道26可以包括专用的出口点和目的点(图中未示出),以专门用于存储不符合所述预设标准的数据。
本领域技术人员理解,本应用场景中的所述过滤器节点24的功能可以对应于物流行业中的违禁品排查步骤。例如,若分拣中心在对包裹的处理过程中扫描发现该包裹为违禁品,则可以将该包裹单独取出使之不再流转到分拣中心的下一道环节,还可以将该包裹放置到违禁品仓库,以待后续统一处置。
而在结合图4的一个优选地应用场景中,所述传输管道2包括转换器节点21,所述转换器节点21用于根据所述消息体确定所述目的点(图中未示出)是否需要更改;若所述目的点需要更改,则根据更改后的目的点(图中未示出)确定所述数据在所述传输管道2内的传输路径,以将所述数据经由所述传输路径传输至所述出口点b。进一步地,所述传输路径包括从所述转换器节点21到所述更改后的目的点的传输路径。
在一个优选例中,所述根据所述消息体确定所述目的点是否需要更改包括步骤“根据所述消息体判断所述消息头是否需要更改;当判断结果表明所述消息头需要更改时,将所述消息头更改为与所述消息体相对应的消息头,并确定所述目的点需要更改”。
表1更改前的数据
消息头 | 文件消息头 |
消息体 | 数据1 |
表2更改后的数据
消息头 | 用户消息头 |
消息体 | 数据1 |
以表1和表2为例,所述数据的实质内容为用户数据,但存储于所述数据源的文件中,则当所述数据初始在传输至所述传输管道2的接入点a时,由于所述消息头是基于所述数据的来源(即所述数据源)确定的,所以初始所述数据的消息头可能被确定为文件消息头,此时所述数据的结构如表1所示。但在真正进入到所述传输管道2进行传输后,所述转换器节点21可以根据所述数据包括的消息体进行更为具体的判断,若所述转换器节点21发现所述消息头中的某一字段的来源是用户属性,则可以将所述数据的消息头更改为用户消息头,使得所述数据能够进入用户管道中进行处理,并经由所述用户管道传输至所述出口点b,从而将所述数据传输至其真正合适的目的点。此时更改后的数据的结构如表2所示。
进一步地,本应用场景的转换器节点21可以用于对所述数据的消息头做聚合、性质上的转换,但不会对所述数据的逻辑等实质性内容进行转换。
进一步地,若所述数据的消息体包括多种属性,则可以在所述传输管道2内循环多次,以基于所述转换器节点21将所述数据传输至各属性对应的目的点,实现对所述数据的全面处理。
本领域技术人员理解,本应用场景中的所述过滤器节点24的功能可以类似于物流行业中的快递单更正步骤。例如,所述分拣中心在对所述包裹进行处理的过程中,根据所述快递单上的邮编发现所述包括的邮寄地址错误,则可以对所述快递单的邮寄地址进行修改,使得所述包裹能够被投递到正确的地址。
在结合图5的一个优选的应用场景中,所述传输管道包括路由器节点22,所述路由器节点22用于根据所述消息头确定所述数据在所述传输管道2内的传输路径,以将所述数据经由所述传输路径传输至所述出口点。进一步地,所述传输路径包括从所述路由器节点22到所述出口点(图中未示出)的传输路径。
进一步地,所述传输管道2可以包括一条或多条传输路径。更进一步地,对于多条传输路径,可以分别对应一个出口点,也可以多条传输路径对应同一个出口点。
以图5所示的应用场景为例,数据A的消息头为文件消息头,则经所述路由器节点22判断确定所述数据需要经由专用于处理文件数据的传输路径s1传输至出口点b1;而数据B的消息头为用户消息头,则经所述路由器节点22判断确定所述数据需要经由专用于处理用户数据的传输路径s2传输至出口点b2。优选地,所述出口点b1和所述出口点b2的区别在于,所述出口点b1可以专用于向所述目的点传输文件数据,而所述出口点b2可以专用于向所述目的点传输用户数据。
本领域技术人员理解,上述图3所述过滤器节点24与本应用场景所述路由器节点22的区别在于,所述过滤器节点24本质上优选地用于将不符合所述预设标准的数据转发到所述错误数据传输管道26中,而对于符合所述预设标准的数据,本发明实施例优选地基于所述路由器节点22来进一步确定其在所述传输管道2中的具体传输路径。
进一步地,上述图4所述转换器节点21与本应用场景所述路由器节点22的区别在于,所述转换器节点22可能会改变所述数据的消息头,而所述路由器节点22则优选地只对所述消息头进行读取,并根据所述消息头来确定所述数据的后续传输路径,在所述路由器节点22的处理过程中,不会对所述数据的消息头或消息体进行修改。
本领域技术人员理解,本应用场景中的所述路由器节点22的功能可以类似于物流行业中的包裹分拣步骤。例如,分拣中心可以基于快递单上的收件地址来确定包裹的后续物流路线。
在结合图6的一个优选的应用场景中,所述传输管道2包括分解器节点23,所述分解器节点23用于根据所述消息体的类型确定是否需要将所述数据分解为至少两个子数据,所述子数据也包括消息头和消息体;当确定需要将所述数据分解为至少两个子数据时,根据每一子数据的特征信息确定对应的消息头;针对每一子数据,根据所述子数据的消息头确定对应的目的点(图中未示出),并确定所述子数据在所述传输管道2内的传输路径,以将所述子数据经由所述传输路径传输至所述出口点。进一步地,所述传输管道2包括从所述分解器节点23到所述出口点b的传输路径。
表3分解前的数据
消息头 | 原消息头 |
消息体 | 数据 |
表4分解后的数据
例如,所述接入点a接收到的所述数据为一个压缩数据包(对应表3),所述压缩数据包包括2条数据体,所述压缩数据包可以用于表示某一类型数据的集合。所述分解器节点23可以对所述压缩数据包进行解压,并经由逻辑判断确定解压得到的所述2条数据体分别对应的消息头(对应表4中的子数据1以及对应的消息头1,和子数据2以及对应的消息头2)。
优选地,所述消息头1和所述消息头2可以与分解前的所述数据的消息头相同。
作为一个变化例的,所述消息头1和所述消息头2也可以不同。例如,分解前所述数据的原消息头为文件消息头,经所述分解器节点23分解后,所述子数据1的消息头1仍为文件消息头,而所述子数据2由于是用户数据,所以所述子数据2的消息头2可以为用户消息头。
在另一个变化例中,所述传输管道2还可以包括聚合器节点(图中未示出),当所述数据经所述分解器节点23分解后,若分解获得的多个子数据的出口点相同,则可以在所述多个子数据到达所述出口点时,基于所述聚合器节点将所述多个子数据再压缩为一个数据进行传输,以减小所述目的点需要接收的数据大小,提高数据传输速度。
本领域技术人员理解,本应用场景中的所述路由器节点22的功能可以类似于理想化物流行业中的包裹拆分步骤。例如,若快递单上指明需要将包裹的一部分寄往一个地址,而将包裹的另一个部分寄往另一个地址,则分拣中心可以根据原始快递单上的信息拆分包裹,并填写对应的快递单,以使得拆分出来的两个包裹能够分别寄往对应的地址。
需要指出的是,在本应用场景中,所述转换器节点21、所述路由器节点22、所述分解器节点23以及所述过滤器节点24可以是所述传输管道2从所述接入点a到所述接入点b上的一个节点,图3至图6的示意图中将所述转换器节点21、所述路由器节点22、所述分解器节点23以及所述过滤器节点24与所述传输管道2分别展示以更好的展示本应用场景的实现原理以及工作位置,但在实际应用中,所述转换器节点21、所述路由器节点22、所述分解器节点23以及所述过滤器节点24两侧的传输管道2实际可以是一条连贯的传输路径。
由上,采用第一实施例的方案,通过设定不同的节点来确定所述数据在所述传输管路可能的处理逻辑,用户可以根据实际需要确定所述传输管道包括哪些节点,还可以根据自身业务需求确定不同节点之间的连接和排列顺序,从而实现在多数据源与多输出端点间的体系化数据传输。
例如,在图7示出的一个典型的应用场景中,所述传输管道2包括一个转换器节点21、一个路由器节点22、一个分解器节点23以及过滤器节点24和过滤器节点25,各节点在所述传输管道2中的连接和排列顺序如图7所示。
具体地,数据源11、数据源12以及数据源13将各自的数据传输至所述传输管道2的接入点a,并经由所述接入点a进入所述传输管道2进行传输和处理。
进一步地,在所述传输管道2中,从所述接入点a传入的数据首先经由所述转换器节点21进行处理,以确定所述数据的消息头是否需要更改。然后,所述数据被传输至所述路由器节点22,由所述路由器节点22根据所述数据的消息头确定所述数据的后续传输路径。例如,若所述数据的消息头表明所述数据的目的点为目的点31,则将所述数据的出口点确定为出口点b1,并将所述数据传输至与所述出口点b1相对应的传输路径。
在一个变化例中,所述路由器节点22还可以根据所述数据的消息头确定所述数据在从所述路由器节点22发出后,到达所述目的点之前,需要经过的节点。例如,所述路由器节点22根据所述数据的消息头确定所述数据的目的点为目的点32,并且所述数据在到达所述目的点32之前需要经过过滤器节点24处理,则所述路由器节点22可以将所述数据的后续传输路径确定为与出口点b2对应的传输路径。
进一步地,当所述数据沿所述传输路径传输至所述分解器节点23时,所述分解器节点23根据所述数据的消息体的类型判断是否需要对所述数据进行分解。对于需要分解的数据,所述分解器节点23可以根据分解后每一子数据的消息头确定对应的目的点,并基于所述目的点确定所述子数据的出口点。例如,图7所示的应用场景中,经所述分解器节点23处理后的一个子数据的消息头对应的目的点为目的点31,则所述分解器节点23确定所述子数据的传输路径为指向出口点b1的传输路径,以将所述子数据经由所述出口点b1传输至所述目的点31。
进一步地,当所述数据沿所述传输路径传输至所述过滤器节点25时,所述过滤器节点25通过对所述数据的消息体的处理来确定所述数据是否可以继续传输至出口点b3,进而经由所述出口点b3传输至目的点33。类似的,所述过滤器节点24用于判断所述数据是否符合预设标准,若所述数据符合所述预设标准,则所述数据可以继续传输至所述出口点b2,进而经由所述出口点b2传输至目的点32。
进一步地,对于不同数据源传输至所述接入点a的数据,可以根据所述数据的消息头来确定发送所述数据的数据源。
图8是本发明的第二实施例的一种用于多数据源的流式数据处理装置的结构示意图。本领域技术人员理解,本实施例所述用于多数据源的流式数据处理装置4用于实施上述图1至图7所示实施例中的方法技术方案。具体地,在本实施例中,所述用于多数据源的流式数据处理装置4包括获取模块41,当数据到达传输管道的接入点时,获取所述数据包括的消息头和消息体,所述消息头包含所述消息体的特征信息,所述数据来自多个数据源中的任一数据源;以及处理模块42,用于在所述消息头的指示下对所述数据进行传输和处理,以将所述数据经由所述传输管道的出口点传输至目的点,所述目的点根据所述消息头确定;其中,所述数据在所述传输管道内的传输路径根据所述消息头或者消息体确定。
优选地,所述目的点包括:使用和/或存储所述数据的终端。
进一步地,所述处理模块42包括过滤器节点421,所述过滤器节点421用于根据所述消息体与预设标准的比较结果,确定所述数据在所述传输管道内的传输路径,以将符合所述预设标准的数据经由所述传输路径从所述过滤器节点421传输至所述出口点。
在一个变化例中,若所述消息体不符合所述预设标准,则所述过滤器节点421将所述数据从所述传输管道中移除,或者将所述传输管道的出口点修正为错误数据传输管道的接入点。
进一步地,所述处理模块42包括转换器节点422,所述转换器节点422用于根据所述消息体确定所述目的点是否需要更改;若所述目的点需要更改,则所述转换器节点422根据更改后的目的点确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径从所述转换器节点422传输至所述出口点。
在一个优选例中,所述转换器节点422包括判断单元4221,用于根据所述消息体判断所述消息头是否需要更改;以及更改单元4222,当判断结果表明所述消息头需要更改时,将所述消息头更改为与所述消息体相对应的消息头,并确定所述目的点需要更改。
进一步地,所述处理模块42包括路由器节点423,所述路由器节点423用于根据所述消息头确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径从所述路由器节点423传输至所述出口点。
进一步地,所述处理模块42包括分解器节点424,所述分解器节点424用于根据所述消息体的类型确定是否需要将所述数据分解为至少两个子数据,所述子数据也包括消息头和消息体;当确定需要将所述数据分解为至少两个子数据时,所述分解器节点424根据每一子数据的特征信息确定对应的消息头;针对每一子数据,所述分解器节点424根据所述子数据的消息头确定对应的目的点,并确定所述子数据在所述传输管道内的传输路径,以将所述子数据经由所述传输路径从所述分解器节点424传输至所述出口点。
本领域技术人员理解,本发明实施例的技术方案中,所述过滤器节点421可以用于根据所述消息体与预设标准的比较结果,确定所述数据在所述传输管道内的传输路径,以将符合所述预设标准的数据经由所述传输路径传输至所述出口点;所述转换器节点422可以用于在所述目的点需要更改时,根据更改后的目的点确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径传输至所述出口点;所述路由器节点423可以用于根据所述消息头确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径传输至所述出口点;所述分解器节点424可以用于根据分解后的所述子数据的消息头确定对应的目的点,并确定所述子数据在所述传输管道内的传输路径,以将所述子数据经由所述传输路径传输至所述出口点。
关于所述用于多数据源的流式数据处理装置4的工作原理、工作方式的更多内容,可以参照图1至图7中的相关描述,这里不再赘述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于以计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
Claims (16)
1.一种用于多数据源的流式数据处理方法,其特征在于,包括如下步骤:
当数据到达传输管道的接入点时,获取所述数据包括的消息头和消息体,所述消息头包含所述消息体的特征信息,所述数据来自多个数据源中的任一数据源;
在所述消息头的指示下对所述数据进行传输和处理,以将所述数据经由所述传输管道的出口点传输至目的点,所述目的点根据所述消息头确定;
其中,所述数据在所述传输管道内的传输路径根据所述消息头或者消息体确定;
不同的传输路径具有不同的处理功能。
2.根据权利要求1所述的用于多数据源的流式数据处理方法,其特征在于,所述目的点包括:使用和/或存储所述数据的终端。
3.根据权利要求1所述的用于多数据源的流式数据处理方法,其特征在于,在所述消息头的指示下对所述数据进行传输和处理包括:
根据所述消息体与预设标准的比较结果,确定所述数据在所述传输管道内的传输路径,以将符合所述预设标准的数据经由所述传输路径传输至所述出口点。
4.根据权利要求3所述的用于多数据源的流式数据处理方法,其特征在于,在所述消息头的指示下对所述数据进行传输和处理还包括:
若所述消息体不符合所述预设标准,则将所述数据从所述传输管道中移除,或者将所述传输管道的出口点修正为错误数据传输管道的接入点。
5.根据权利要求1所述的用于多数据源的流式数据处理方法,其特征在于,在所述消息头的指示下对所述数据进行传输和处理包括:
根据所述消息体确定所述目的点是否需要更改;
若所述目的点需要更改,则根据更改后的目的点确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径传输至所述出口点。
6.根据权利要求5所述的用于多数据源的流式数据处理方法,其特征在于,根据所述消息体确定所述目的点是否需要更改包括:
根据所述消息体判断所述消息头是否需要更改;
当判断结果表明所述消息头需要更改时,将所述消息头更改为与所述消息体相对应的消息头,并确定所述目的点需要更改。
7.根据权利要求1所述的用于多数据源的流式数据处理方法,其特征在于,在所述消息头的指示下对所述数据进行传输和处理包括:
根据所述消息头确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径传输至所述出口点。
8.根据权利要求1所述的用于多数据源的流式数据处理方法,其特征在于,在所述消息头的指示下对所述数据进行传输和处理包括:
根据所述消息体的类型确定是否需要将所述数据分解为至少两个子数据,所述子数据也包括消息头和消息体;
当确定需要将所述数据分解为至少两个子数据时,根据每一子数据的特征信息确定对应的消息头;
针对每一子数据,根据所述子数据的消息头确定对应的目的点,并确定所述子数据在所述传输管道内的传输路径,以将所述子数据经由所述传输路径传输至所述出口点。
9.一种用于多数据源的流式数据处理装置,其特征在于,包括:
获取模块,当数据到达传输管道的接入点时,获取所述数据包括的消息头和消息体,所述消息头包含所述消息体的特征信息,所述数据来自多个数据源中的任一数据源;
处理模块,用于在所述消息头的指示下对所述数据进行传输和处理,以将所述数据经由所述传输管道的出口点传输至目的点,所述目的点根据所述消息头确定;
其中,所述数据在所述传输管道内的传输路径根据所述消息头或者消息体确定;
不同的传输路径具有不同的处理功能。
10.根据权利要求9所述的用于多数据源的流式数据处理装置,其特征在于,所述目的点包括:使用和/或存储所述数据的终端。
11.根据权利要求9所述的用于多数据源的流式数据处理装置,其特征在于,所述处理模块包括:
过滤器节点,所述过滤器节点用于根据所述消息体与预设标准的比较结果,确定所述数据在所述传输管道内的传输路径,以将符合所述预设标准的数据经由所述传输路径从所述过滤器节点传输至所述出口点。
12.根据权利要求11所述的用于多数据源的流式数据处理装置,其特征在于,若所述消息体不符合所述预设标准,则所述过滤器节点将所述数据从所述传输管道中移除,或者将所述传输管道的出口点修正为错误数据传输管道的接入点。
13.根据权利要求9所述的用于多数据源的流式数据处理装置,其特征在于,所述处理模块包括:
转换器节点,所述转换器节点用于根据所述消息体确定所述目的点是否需要更改;
若所述目的点需要更改,则所述转换器节点根据更改后的目的点确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径从所述转换器节点传输至所述出口点。
14.根据权利要求13所述的用于多数据源的流式数据处理装置,其特征在于,所述转换器节点包括:
判断单元,用于根据所述消息体判断所述消息头是否需要更改;
更改单元,当判断结果表明所述消息头需要更改时,将所述消息头更改为与所述消息体相对应的消息头,并确定所述目的点需要更改。
15.根据权利要求9所述的用于多数据源的流式数据处理装置,其特征在于,所述处理模块包括:
路由器节点,所述路由器节点用于根据所述消息头确定所述数据在所述传输管道内的传输路径,以将所述数据经由所述传输路径从所述路由器节点传输至所述出口点。
16.根据权利要求9所述的用于多数据源的流式数据处理装置,其特征在于,所述处理模块包括:
分解器节点,所述分解器节点用于根据所述消息体的类型确定是否需要将所述数据分解为至少两个子数据,所述子数据也包括消息头和消息体;
当确定需要将所述数据分解为至少两个子数据时,所述分解器节点根据每一子数据的特征信息确定对应的消息头;
针对每一子数据,所述分解器节点根据所述子数据的消息头确定对应的目的点,并确定所述子数据在所述传输管道内的传输路径,以将所述子数据经由所述传输路径从所述分解器节点传输至所述出口点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611259435.3A CN106878171B (zh) | 2016-12-30 | 2016-12-30 | 一种用于多数据源的流式数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611259435.3A CN106878171B (zh) | 2016-12-30 | 2016-12-30 | 一种用于多数据源的流式数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106878171A CN106878171A (zh) | 2017-06-20 |
CN106878171B true CN106878171B (zh) | 2020-03-13 |
Family
ID=59165574
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611259435.3A Active CN106878171B (zh) | 2016-12-30 | 2016-12-30 | 一种用于多数据源的流式数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106878171B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111385212B (zh) * | 2018-12-29 | 2021-08-31 | 华为技术有限公司 | 数据传输技术及神经网络系统 |
US11939856B2 (en) | 2019-01-24 | 2024-03-26 | Halliburton Energy Services, Inc. | Operating wellbore equipment using data from mediator computing devices |
CN111181846B (zh) * | 2019-12-26 | 2022-03-01 | 天津中科曙光存储科技有限公司 | 消息传输方法和装置以及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101312531A (zh) * | 2007-11-02 | 2008-11-26 | 北京创毅视讯科技有限公司 | 一种广播系统中的流媒体业务传输方法及流媒体帧封装器 |
CN101420456A (zh) * | 2008-11-07 | 2009-04-29 | 华为技术有限公司 | 节点间通讯的方法和设备 |
CN101431476A (zh) * | 2008-12-12 | 2009-05-13 | 中国工商银行股份有限公司 | 一种基于消息队列的数据传输方法、服务器及系统 |
CN101355571B (zh) * | 2007-07-26 | 2011-09-28 | 中国移动通信集团公司 | 多媒体消息的处理方法、装置及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104052676B (zh) * | 2014-06-13 | 2017-12-05 | 华为技术有限公司 | 一种发送通路装置及发送通路的数据处理方法 |
-
2016
- 2016-12-30 CN CN201611259435.3A patent/CN106878171B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101355571B (zh) * | 2007-07-26 | 2011-09-28 | 中国移动通信集团公司 | 多媒体消息的处理方法、装置及系统 |
CN101312531A (zh) * | 2007-11-02 | 2008-11-26 | 北京创毅视讯科技有限公司 | 一种广播系统中的流媒体业务传输方法及流媒体帧封装器 |
CN101420456A (zh) * | 2008-11-07 | 2009-04-29 | 华为技术有限公司 | 节点间通讯的方法和设备 |
CN101431476A (zh) * | 2008-12-12 | 2009-05-13 | 中国工商银行股份有限公司 | 一种基于消息队列的数据传输方法、服务器及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN106878171A (zh) | 2017-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104348716B (zh) | 一种报文处理方法及设备 | |
KR101717000B1 (ko) | 패킷 처리를 위한 방법 및 장치 | |
CN106878171B (zh) | 一种用于多数据源的流式数据处理方法及装置 | |
CN104780080B (zh) | 深度报文检测方法及系统 | |
CN108710629B (zh) | 基于命名数据网络的Top-k查询方法及系统 | |
CN1761244A (zh) | 设置边界网关协议路由选择通知功能的方法 | |
US9848059B2 (en) | Content handling method, apparatus, and system | |
CN101534248B (zh) | 深度报文识别方法和系统及业务板 | |
CN102316121A (zh) | 支持动态扩展帧头的过滤匹配预处理方法及装置 | |
CN110191066A (zh) | 一种确定最大传输单元pmtu的方法、设备及系统 | |
CN102497297A (zh) | 基于多核多线程的深度报文检测技术的实现系统和方法 | |
CN1988543A (zh) | 报文类型识别方法及装置、报文首部压缩方法及系统 | |
CN105141681A (zh) | Rpki文件的同步方法及装置 | |
CN104079623A (zh) | 多级云存储同步控制方法及系统 | |
CN112468469A (zh) | 一种保障sctp协议多归属报文同源同宿的方法和装置 | |
CN101888303B (zh) | 网络流量信息的记录方法以及相关装置 | |
CN101795273B (zh) | 一种垃圾邮件过滤方法及装置 | |
CN107508828A (zh) | 一种超远程数据交互系统及方法 | |
CN107483341A (zh) | 一种跨防火墙报文快速转发方法及装置 | |
CN101257461A (zh) | 基于分类的内容过滤方法及其装置 | |
CN105429881A (zh) | 一种组播报文转发方法和装置 | |
CN104009924A (zh) | 一种基于tcam和fpga的报文处理方法及装置 | |
CN103118083B (zh) | 一种业务报文转发的方法和装置 | |
US9497167B2 (en) | System and method for automatic provisioning of multi-stage rule-based traffic filtering | |
US20150350039A1 (en) | Deep packet inspection (dpi) of network packets for keywords of a vocabulary |
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 | ||
GR01 | Patent grant |