CN104717272A - 事件串流处理系统及其方法 - Google Patents

事件串流处理系统及其方法 Download PDF

Info

Publication number
CN104717272A
CN104717272A CN201410035203.4A CN201410035203A CN104717272A CN 104717272 A CN104717272 A CN 104717272A CN 201410035203 A CN201410035203 A CN 201410035203A CN 104717272 A CN104717272 A CN 104717272A
Authority
CN
China
Prior art keywords
event
crossfire
gateway apparatus
group
enlargement module
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
Application number
CN201410035203.4A
Other languages
English (en)
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.)
Institute for Information Industry
Original Assignee
Institute for Information Industry
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 Institute for Information Industry filed Critical Institute for Information Industry
Publication of CN104717272A publication Critical patent/CN104717272A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/622Queue service order
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6255Queue scheduling characterised by scheduling criteria for service slots or service orders queue load conditions, e.g. longest queue first

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Mathematics (AREA)
  • Multimedia (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明提供一种事件串流处理系统及其方法,该事件串流处理系统包括网关装置与扩充模块。网关装置包括事件处理引擎,扩充模块包括扩充处理器。事件处理引擎包括事件分群器、收集获取器、处理器及事件产生器。事件处理引擎将符合条件规则的事件串流的多个事件进行处理。事件分群器将符合条件规则的事件串流进行分群。收集获取器耦接于事件分群器,用以从事件中储存第一群组事件。处理器耦接于事件分群器,用以处理第二群组事件。事件产生器将第一群组事件的第一处理结果与第二群组事件的第二处理结果整合并产生衍生事件。扩充处理器计算第一群组事件并产生第一处理结果。

Description

事件串流处理系统及其方法
技术领域
本发明涉及一种数据串流处理,且特别涉及一种事件串流处理系统、方法以及机器可读内存。
背景技术
事件驱动运算架构(Event-Driven Architecture,EDA)近几年逐渐受到重视。所谓事件(Event)指的是企业组织受到环境或内部的影响,造成数量的改变,其呈现的方法是用信息来记录改变的状态。事件驱动(Event-Driven)的应用系统区分为四大类,包括简单事件(Simple Events)、代收事件处理(Brokered Event Processing)、业务流程管理加强应用(Business Process Management(BPM)-Enabled Applications)与复合事件处理(Complex Event Processing,CEP)。
复合事件处理是目前最具发展性的架构,不同于前述其他三种事件驱动的应用系统,复合事件处理是一个集中式/分布式的事件管理系统,其处理步骤分成三个阶段。首先过滤掉不重要的事件,然后将事件归类整理成更复杂的事件,最后根据事先设定的规则对这些事件产生对应的回应响应(Response)。然而,无论是在复合事件处理还是其他的事件处理都非常重视时间的有效性。
传统的数据检测分析方式是将实时串流数据先储存至数据库中。接着,再经由处理器检测/分析事件,进而通知使用者需处理的事件。然而,是在传统的数据检测分析方式须先由数据库中取出并过滤,将耗费较多的时间或错失及时反映商务的时机。另外,传统的数据检测分析方式将事件传送至服务器上进行计算,因此大量的网络频宽会被占用,若网络频宽不足,则将可能造成事件的处理速度下降。
发明内容
本发明实施例提供一种事件串流处理系统,且事件串流处理系统包括网关装置(gateway device)与扩充模块。网关装置包括事件处理引擎,而扩充模块包括扩充处理器。事件处理引擎包括事件分群器、收集获取器、处理器及事件产生器。事件处理引擎将符合条件规则的事件串流的多个事件进行处理。事件分群器将符合条件规则的事件进行分群。收集获取器耦接于事件分群器,用以从事件中储存第一群组事件。处理器耦接于事件分群器,用以处理第二群组事件。事件产生器将第一群组事件的第一处理结果与第二群组事件的第二处理结果整合并产生衍生事件。扩充处理器计算第一群组事件并产生第一处理结果。
本发明实施例提供一种事件串流处理方法,适用于事件串流处理系统。事件串流处理系统具有网关装置与扩充模块,事件串流处理方法包括以下步骤。首先,网关装置筛选出符合条件规则的事件串流的多个事件并进行分群。接着,网关装置将第一群组事件传送到扩充模块进行计算,并且将第二群组事件在网关装置中进行计算。随后,扩充模块产生第一处理结果回传给网关装置。最后,网关装置将第一群组事件的第一处理结果与第二群组事件的第二处理结果整合产生衍生事件。
综上所述,通过本发明实施例的事件串流处理系统、方法及机器可读内存,使受限于硬件效能及运算处理能力的网关装置能够通过外部的扩充模块协助处理大量数据与运算复杂的处理程序。再者,通过扩充模块,可依使用者的需求设定所需的定义函式,并且在扩充模块与网关装置之间通过通用的通信方式及数据格式的跨平台整合方式,有效增加事件串流处理的灵活性。值得一提的是,通过本发明实施例由网关装置对事件串流的事件进行实时处理的方式,网关装置仅会将须进行处理的事件传送至其连接的扩充模块进行运算,故能够有效节省网络频宽。
为使能更进一步了解本发明的特征及技术内容,请参阅以下有关本发明的详细说明与附图,但是此等说明与所附图式仅是用来说明本发明,而非对本发明的权利要求范围作任何的限制。
附图说明
图1为本发明实施例的事件串流处理系统或方法进行事件串流处理流程的示意图。
图2为本发明实施例的事件串流处理系统的网关装置的细部方块图。
图3为本发明实施例的事件串流处理系统的扩充模块的细部方块图。
图4为本发明另一实施例的事件串流处理系统的网关装置的细部方块图。
图5为本发明另一实施例的事件串流处理系统的扩充模块的细部方块图。
图6为本发明再一实施例的事件串流处理系统的扩充模块的细部方块图。
图7为本发明实施例的事件串流处理方法流程图。
图8-1至8-3为本发明实施例的事件串流处理方法的详细流程图。
【符号说明】
11:事件串流
13:使用者
14:数据库
15:衍生事件
2、4、5:事件串流处理系统
20、40、50:网关装置
201、401:筛选器
12、202、402:事件处理引擎
203、211、403、411、511:传输单元
2021、4021:事件分群器
2022、4022:收集获取器
2023、4023:处理器
2024、4024:事件产生器
2024a、4024a:事件整合单元
2022a、2024b、4022a、4022b、4022c、4024b:暂存单元
21、41、51:扩充模块
212、512:格式转换单元
213、413、513:事件分析器
213a、413a、513a:暂存单元
214、414、514:扩充处理器
S101~104、S201~S220:步骤流程
具体实施方式
在下文将参看随附图式更充分地描述各种例示性实施例,在随附图式中展示一些例示性实施例。然而,本发明概念可能以许多不同形式来体现,且不应解释为限于本文中所阐述的例示性实施例。确切而言,提供此等例示性实施例使得本发明将为详尽且完整,且将向本领域的普通技术人员充分传达本发明概念的范畴。在诸图式中,可为了清楚而夸示层及区的大小及相对大小。类似数字始终指示类似元件。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种元件,但此等组件不应受此等术语限制。此等术语乃用以区分一元件与另一元件。因此,下文论述的第一元件可称为第二元件而不偏离本发明概念的教示。如本文中所使用,术语“或”视实际情况可能包括相关联的列出项目中的任一者或者多者的所有组合。
在智慧联网的发展下,事件串流会通过网关装置传送至服务器。若要减轻服务器处理事件串流的负载,则可以选择使用网关装置对事件串流的部分或全部进行实时运算。然而,网关装置的运算能力有限,并无法进行复杂的运算。因此,本发明实施例提供一种事件串流处理系统,其通过网关装置与连接网关装置的扩充模块的合作来对事件串流进行实时处理,以藉此有效节省网络频宽,并提升事件串流的处理速度。
请参阅图1,图1为本发明实施例的事件串流处理系统或方法进行事件串流处理流程的示意图。有别于传统的数据串流处理检测分析方式,本发明实施例的事件串流处理系统或方法将事件串流11直接通过事件处理引擎12进行事件检测/分析,并将处理后的实时事件通知使用者13或者将一般事件储存至数据库14中。也就是说,本发明实施例的事件串流处理系统或方法能够对事件串流的事件作实时处理,而不须将事件串流的所有事件的数据先储存于数据库14中,再从数据库14中取出并过滤事件串流的事件的数据,故可以有效提升事件串流的实时运算的需求。后续将进一步细部说明本发明的事件串流处理系统、方法及机器可读内存。
请参阅图2,图2为本发明实施例的事件串流处理系统的网关装置的细部方块图。图2中的事件串流系统2包括网关装置20以及扩充模块21。网关装置20包括事件处理引擎202以及传输单元203。事件处理引擎202包括筛选器201、事件分群器2021、收集获取器2022、处理器2023、事件产生器2024。收集获取器2022包括暂存单元2022a,事件产生器2024包括事件整合单元2024a以及暂存单元2024b。网关装置20耦接于扩充模块21。事件处理引擎202耦接于传输单元203。筛选器201耦接于事件分群器2021,收集获取器2022与处理器2023耦接于事件分群器2021,且收集获取器2022与处理器2023耦接于事件产生器2024。
网关装置20可以是网关器(Gateway)、路由器(Router)、Wi-fi接入点(Wi-fi Access Point,Wi-fi AP)、交换机(Switch)或其他网络转发中继点。网关装置20用以连线局域网络或互联网(Internet),例如在家庭中或小型企业网络中的局域网络。网关装置20还具有在系统之间的协定转换、阻抗匹配、速率转换、故障隔离或信号转换的功能。在本发明实施例中,网关装置20的事件处理引擎202接收具有一连串事件的事件串流11,并经由筛选器201将事件串流中符合条件规则的多个事件进一步传送至事件分群器2021进行处理,其中每一个事件对应地具有至少一笔以上的数据。值得一提的是,条件规则是由使用者自行定义,如关联(Association)、聚合(Aggregation)或组合(composition)等的逻辑方式,且本发明不以上述所举例的逻辑方式为限。
当使用者将符合条件规则的事件串流的多个事件筛选出后,网关装置20则进一步将符合条件规则的事件串流的多个事件通过事件处理引擎202的事件分群器2021进行处理,以将所述一连串的事件串流分为第一群组事件与第二群组事件。扩充模块21用以处理第一群组事件并对应地产生第一处理结果,并且将第一处理结果回传给网关装置20。网关装置20接着将第一群组事件的第一处理结果与第二群组事件的第二处理结果整合,并产生衍生事件。
以下介绍事件处理引擎202的其中一种实现方式,然而,本发明并不限制于此。事件处理引擎202包括筛选器201、事件分群器2021、收集获取器2022、处理器2023以及事件产生器2024。
经由筛选器201筛选出的事件串流的多个事件将经由事件分群器2021进行分群。事件分群器2021可包含适当的电路、逻辑和/或编码,用以依照事件串流所需运算的复杂度、数据量、时间间隔等分组条件将事件串流中的多个事件分成不同的事件群组。举例来说而牵扯较长的历史数据(数个礼拜、数个月)、数据的预估与模型校正等此类数据的事件须使用矩阵运算等较大运算量的运算可被事件分群器2021归类为大量数据运算的事件群组,也即此类的事件为第一群组事件;牵扯一般的实时数值平均、差值等计算的事件可被事件分群器2021归类为小量数据运算的事件群组,也即此类的事件为第二群组事件。接着,经由事件分群器2021依据依照运算量的不同对事件串流的多个事件进行分群后,分群后的多个事件将进一步分别传送至收集获取器2022以及处理器2023进行后续处理。值得一提的是,在事件分群器2021将事件串流的多个事件进行分群时,事件分群器2021对事件串流中的多个事件嵌入数据识别。数据识别用以在后续处理中依照数据识别判别多个事件计算的结果的顺序。
处理器2023可包含适当的电路、逻辑和/或编码,用于处理由事件分群器2021分群的较小运算量的事件群组的多个事件,以产生对应多个事件的处理结果并传送至事件产生器2024以进行后续处理。
收集获取器2022可包含适当的电路、逻辑和/或编码。收集获取器2022具有暂存单元2022a,当事件分群器2021将须进行较大运算量的事件分群后,对应的多个事件(多个第一群组事件)会被传送至收集获取器2022,并将所述多个事件储存于暂存单元2022a中。更仔细地说,收集获取器2022根据使用者自定义的预设参考值与多个事件的变化量来判断暂存单元2022a储存的多个事件是否应传送至扩充模块21进行处理。预设参考值可以为预设数值变化量或预设事件到达率,变化量可以是目前事件与前一个事件之间的数值变化量或者是事件到达率。
举例来说,收集获取器2022判断是否将暂存单元2022a储存的多个事件传送至扩充模块21进行处理是依据下述公式:|事件i+1-事件i|>k×STD,其中k为实数(例如为0.1),事件i+1与事件i分别为第(i+1)事件与第i个事件的数据笔数,而STD表示其中一个事件群组的数据笔数。换言之,|事件i+1-事件i|为目前事件与前一个事件之间的数值变化量,而k×STD则为预设数值变化量。
再举一例来说,扩充模块21可以预设事件到达率,且收集获取器2022依据所述多个事件的事件到达率是否等于或大于事件到达率来判断是否将暂存单元2022a储存的多个事件传送至扩充模块21进行处理。例如,预设事件到达率为每五分钟有10笔事件到达,则当收集获取器2022在五分钟内收到10笔事件,则其会将暂存单元2022a储存的多个事件传送至扩充模块21进行处理1。
值得一提的是,收集获取器2022将储存的多个事件的数据进行特征获取并产生特征向量与残存数据,例如小波转换(Wavelet Transformation)、傅立叶转换(Fourier Transformation)或离散余弦转换(Discrete CosineTransformation)等在数值分析领域常用的数值转换,但本发明并不限制于频域中取得与产生所述多个事件的数据的特征向量。所述多个事件的数据通过收集获取器2022将对其数据进行转换并传送特征向量与残留数据的方式能够有效降低数据的传输量,故可用以在传输至扩充模块21时减少数据量的传输。在本发明实施例中,收集获取器2022可选择是否进行数值转换,也可直接将事件数据传输至扩充模块21后再进行特征获取,总而言之,本发明并不以此作为限制。另外,收集获取器2022还可将暂存单元2022a中储存的多个事件嵌入时间标签,用以提供后续处理时检查所述多个事件的时效性。举例来说,当收集获取器2022欲传送某一个事件的数据至扩充模块21时,收集获取器2022会进一步检查事件的时间标签是否失效,若失效则收集获取器2022从暂存单元2022a中清除对应的事件的数据,并传送事件失效信息至事件产生器2024。
事件产生器2024可包含适当的电路、逻辑和/或编码。事件产生器2024具有事件整合单元2024a以及暂存单元2024b。用以将群组事件的处理结果进行整合并产生衍生事件15。详细地说,处理器2023产生事件处理结果并传送至事件产生器2024后,事件产生器2024将其储存至暂存单元2024b中,以等待其他群组事件的事件处理结果或事件失效信息。同样地,收集获取器2022检查多个事件的数据中的时间卷标失效时所传送至事件产生器2024的事件失效信息也储存于暂存单元2024b中。随后,事件产生器2024通过事件整合单元2024a将每一事件串流的多个事件的事件处理结果或事件失效信息依照数据识别进行整合,并据此产生衍生事件15给使用者进行通知或储存于数据库。
传输单元203可为有线模式或无线模式的方式实施。有线模式的实施可以通过数据导线(Ethernet cable)、通用序列总线(USB)通信界面或其他有线的传输接口来实现;而无线模式的实施可以通过蓝牙无线通信模块或第三代移动通信模块来实现。本发明仅以此做为说明,并不以此做为限制。
接着,请同时参阅图2与图3,图3为本发明实施例的事件串流处理系统的扩充模块的细部方块图。在图3的事件串流处理系统2包括网关装置20以及扩充模块21。扩充模块21包括传输单元211、格式转换单元212、事件分析器213以及扩充处理器214。事件分析器213还包括暂存单元213a。扩充模块21耦接于网关装置20。格式转换单元212耦接于传输单元211,事件分析器213耦接于格式转换单元212,扩充处理器214耦接于事件分析器213与格式转换单元212。
扩充模块21可以是服务器、个人电脑或任何具有运算能力的装置。在网关装置20普遍为运算能力较差的网络转发中继点来说,扩充模块21用以提供网关装置20额外的处理能力,将网关装置20收到较复杂的群组事件进一步进行计算。
在本发明实施例中,扩充模块21的传输单元211对应网关装置20中的传输单元203。也就是说,当网关装置20可以有线模式与扩充模块21进行传输,或者以无线模式与扩充模块21进行传输。举例来说,当网关装置20的传输单元203为USB通信界面时,可以使用USB通信界面的传输单元211,以使扩充模块21与网关装置20进行连接;或者当网关装置20的传输单元203以无线通信模块来实施时,可以同样为无线通信模块的传输单元211,以使扩充模块21与网关装置20得以进行无线传输而彼此连接。
格式转换单元212可包含适当的电路、逻辑或/和代码。当扩充模块21通过传输单元211接收来自收集获取器2022所传送的群组事件,格式转换单元212可将群组事件进行格式转换并产生待处理事件。举例来说,网关装置20为JAVA语言的系统,而扩充模块21为C语言的系统,格式转换单元212可将来自网关装置20的JAVA语言的群组事件转换成C语言的待处理事件,并传送至事件分析器213以进行后续处理程序。简单来说,格式转换单元212用于在网关装置20与扩充模块21之间进行不同的格式转换。
事件分析器213可包含适当的电路、逻辑或/和代码。事件分析器213包括暂存器213a,用以储存经由格式转换后的待处理事件。在接收格式转换之后,事件分析器213进一步检查所储存的转换成待处理事件中的数据的时间标签是否失效。若时间标签失效,则将失效的待处理事件的数据清除并产生事件失效信息,接着经由格式转换单元212回传网关装置20中的事件产生器2024。若时间标签还在时效内,则进一步传送至扩充处理器214进行后续处理。值得一提的是,使用者可通过事件分析器213设定预设参考值以使网关装置20中的收集获取器2022提供运算所需的群组事件。
扩充处理器214可包含适当的电路、逻辑或/和代码。扩充处理器214用于处理较大运算量的群组事件,并产生事件处理结果。接着经由格式转换单元212回传网关装置20中的事件产生器2024。
通过本发明实施例所提出的事件串流处理系统能够将原本硬件架构受限制所造成无法执行大量数据或复杂度高的网关装置进一步扩充。通过扩充模块额外处理运算较复杂的事件,并支持使用者的需求而能扩充不同的功能函式。提升于网关器上事件串流处理的灵活性与实时性。
请参阅图4,图4为本发明另一实施例的事件串流处理系统的网关装置的细部方块图。图4中的事件串流系统4包括网关装置40以及扩充模块41。网关装置40包括事件处理引擎402以及传输单元403。事件处理引擎402包括筛选器401、事件分群器4021、收集获取器4022、处理器4023、事件产生器4024。收集获取器4022包括暂存单元4022a、4022b及4022c,事件产生器4024包括事件整合单元4024a以及暂存单元4024b。图4的事件串流处理系统4中所包含的元件与图2的事件串流处理系统2大致相同,其差异在于,网关装置40所具有的收集获取器4022包括多个暂存单元4022a、4022b与4022c。举例来说,当事件分群器4021将较大运算量的事件群组数据分群后传送至收集获取器4022后,可进一步细分为不同的子群组事件,并将子群组事件储存于不同的暂存单元4022a、4022b与4022c。举例来说,经由分群后的较大运算量事件可依照不同的计算目标再次进行分群,例如可细分为用电量信息事件、湿温度统计事件或等等不同计算目标的事件。另外,对应收集获取器4022中的暂存单元4022a、4022b与4022c,还可以多个扩充模块(图未示)同时耦接于网关装置40,并用以分别处理不同的子群组事件。也就是说,在本发明实施例中可同时进行多种不同的事件处理。在后续的发明实施例说明中,虽以单一个扩充模块作为说明,但并不以此为限制。
请参阅图5,图5为本发明另一实施例的事件串流处理系统的扩充模块的细部方块图。图5中的事件串流处理系统4包括网关装置40以及扩充模块41。扩充模块41包括传输单元411、事件分析器413以及扩充处理器414。事件分析器413还包括暂存单元413a。扩充模块41耦接于网关装置40。事件分析器413耦接于传输单元411,扩充处理器414耦接于事件分析器413。图5的扩充模块41与图3的扩充模块21的差异仅在于,扩充模块41不具有格式转换单元。也就是说,扩充模块41可以直接以与网关装置40相同的数据格式语言作为实施方式。
请参阅图6,图6为本发明再一实施例的事件串流处理系统的扩充模块的细部方块图。图6中的事件串流处理系统5包括网关装置50以及扩充模块51。扩充模块51包括传输单元511、事件分析器513以及扩充处理器514。事件分析器513还包括暂存单元513a与格式转换单元512。扩充模块51耦接于网关装置50。事件分析器513耦接于传输单元511,扩充处理器514耦接于事件分析器513。图6的扩充模块51与图3的扩充模块21的差异在于,格式转换单元512可以设置于事件分析器513中,而图3的各元件的作用与图3各元件的作用相同,于此不再赘述。
在说明完本发明的事件串流处理系统后,后续将进一步说明本发明实施例的事件串流处理方法于网关装置与扩充模块之间运作的步骤流程。
请参阅图7,图7为本发明实施例的事件串流处理方法流程图。事件串流处理方法包括以下步骤:步骤S101,将事件串流的多个事件进行分群;步骤S102,将第一群组事件传送至扩充模块进行计算;步骤S103,将第二群组事件在网关装置中进行计算;步骤S104,将第一群组事件计算后的处理结果与第二群组事件计算后的处理结果整合,并产生衍生事件。
在本发明实施例的事件串流处理方法,其主要通过网关装置先将筛选后符合条件规则的事件串流的多个事件进行分群的动作。接着,将计算较复杂或数据量较大的事件归类为第一群组事件并传送至扩充模块以进行计算。同时,将计算较简单或数据量较小的事件归类为第二群组事件并直接于网关装置中进行计算。最后,将传送至扩充模块处理第一群组事件的处理结果与网关装置中处理第二群组事件的处理结果整合产生衍生事件,以进行后续通知使用者或数据库储存的动作。
接着请同时参阅图2、图8-1至8-3,图8-1至8-3为本发明实施例的事件串流处理方法的详细流程图。在步骤S201中,网关装置20接收具有一连串事件的事件串流11,并经由筛选器201将符合条件规则的多个事件进一步传送至事件处理引擎202进行处理。
接着,在步骤S202中,经由筛选器201筛选出的事件串流的多个事件将经由事件分群器2021进行分群。事件分群器2021依照事件的数据所需运算的复杂度、数据量、时间间隔等等分组条件将事件分成不同的群组事件。并且进一步将各事件嵌入数据识别,用以后续整合多个事件结果,使其多个事件结果的顺序对应于所述多个事件的顺序。
在步骤S203中,将计算较复杂或数据量较大的事件归类为第一群组事件并传送至收集获取模块2022。在步骤S207中,将计算较简单或数据量较小的事件归类为第二群组事件并传送至处理器2023。处理器2023将第二群组事件计算后产生第二处理结果并进入步骤S212,将第二处理结果传送给事件产生器2024。
在步骤S204中,收集获取器2022根据使用者自定义的预设参考值与暂存单元2022a储存的事件的变化量来判断暂存单元2022a储存的事件是否应传送至扩充模块21进行处理。若否,则回到步骤S202,持续接收事件分群器2021传输的事件。若是,将进入步骤S205。
在步骤S205中,收集获取器2022将储存的第一群组事件进行特征获取并产生特征向量与残存数据。事件通过收集获取器2022将事件转换的特征向量与残存数据的方式能够有效降低数据的传输量,故可以减少传输至扩充模块21时的数据量。
接着,在步骤S206中,收集获取器2022将第一群组事件嵌入时间标签,用以提供后续处理时检查所述事件的时效性。在步骤S208中,收集获取器2022检查传输单元203是否与扩充模块21连线畅通。若否,则等待连线回复畅通并进入步骤S209。若是,则进入步骤S211,将特征向量与残存数据传送至扩充模块21进行处理。
在步骤S209中,收集获取器2022在等待的过程会持续判断特征向量与残存数据的时间标签是否失效。若未失效,则周期性地检查传输单元203是否恢复畅通。若已失效,则进入步骤S210将失效的特征向量与残存数据清除并产生事件失效信息给事件产生器2024,储存于暂存单元2024b中以进行后续处理。
在步骤S214中,通过传输模块211接收特征向量数据的扩充模块21,进一步通过格式转换单元212将属于网关装置20系统语言格式的特征向量数据进行格式转换,产生能够提供扩充模块21处理的待处理事件,并传送至事件分析器213中的暂存单元213a储存以待后续处理。
接着,请同时参阅图3。在步骤S215中,事件分析器213检查所储存的待处理事件中的时间标签是否失效。若是,则进入步骤S216,则事件分析器213将失效的待处理事件的数据清除并产生事件失效信息,并进入步骤S212。若否,则进入步骤S217。
在步骤S217中,扩充处理器214将所收到的待处理事件进行计算,并产生第一事件结果。值得一提的是,第一处理结果经由格式转换单元212将格式转换回网关装置20的格式,接着进入步骤S218。在步骤S218中,进一步将第一处理结果通过传输单元211回传至网关装置20的事件产生器2024,并进入步骤S219。随后,在步骤S219中,事件产生器2024检查第一处理结果的时间标签是否失效。若是,进入步骤S220,事件产生器2024清除失效的第一处理结果并产生事件失效信息,并进入步骤S212。若否,直接进入步骤S212。
在步骤S212中,事件产生器2024将所有计算过后的处理结果或事件失效信息依照数据识别整合并产生衍生事件。也就是说,依照各处理结果或事件失效信息的数据识别找出对应的事件顺序并进行整合,以产生衍生事件。接着,在步骤S213中,将衍生事件进行后续通知或数据库储存的动作。在本发明实施例中以第一群组事件与第二群组事件作为说明,但并不以此做为限制。
本发明提供一种机器可读内存,储存用以实现事件串流处理的程序代码。程序代码可被上述的网关装置与扩充模块执行如下步骤。首先,在网关装置中筛选出符合条件规则的事件串流并进行分群。接着,网关装置将第一群组事件传送到扩充模块进行计算,并且将第二群组事件在网关装置中进行计算。随后,扩充模块产生第一处理结果回传给网关装置。最后,网关装置将第一群组事件的第一处理结果与第二群组事件的第二处理结果整合产生衍生事件。
本发明可以通过硬件、软件,或者软、硬件结合来实现。本发明可以在至少一个电脑系统中以集中的方式实现,或者由分布在几个互连的电脑系统中的不同部分以分散的方式实现。适用于任何可以实现上所述事件串流处理方法的电脑系统或其他装置。另外,通过安装和执行所述程控电脑系统,使其按上所述方法运行。
本发明还可以通过电脑程序产品进行实施,所述程序包含能够实现本发明方法的全部特征,当其安装到电脑系统中时,通过运行,可以实现本发明的方法。本发明中的电脑程序所指的是:可以采用任何程序语言、代码或符号编写指令的任何表达式,使系统具有信息处理能力并直接实现特定功能。另外,也可在执行下述一个或两个步骤之后,a)转换成其他语言、代码或符号;b)以不同的格式再现,实现特定功能。
[本发明可能效果]
综上所述,通过本发明实施例的事件串流处理系统、方法及机器可读内存,使受限于硬件效能及运算处理能力的网关装置能够通过外部的扩充模块协助处理大量数据与运算复杂的处理程序。再者,通过扩充模块,可依使用者的需求设定所需的定义函式,并且在扩充模块与网关装置之间通过通用的通信方式及数据格式的跨平台整合方式,有效增加事件串流处理的灵活性。值得一提的是,通过本发明实施例由网关装置对事件串流的事件进行实时处理的方式,网关装置仅会将须进行处理的事件传送至其连接的扩充模块进行运算,故能够有效节省网络频宽。
以上所述,仅为本发明的优选的具体实施例,然而本发明的特征并不局限于此,任何熟悉该项技艺者在本发明的领域内,可轻易思及的变化或修饰,皆可涵盖在以下本发明的专利范围。

Claims (19)

1.一种事件串流处理系统,其特征在于,所述事件串流处理系统包括:
一网关装置,所述网关装置包括:
一事件处理引擎,将符合一条件规则的一事件串流的多个事件进行处理,所述事件处理引擎包括:
一事件分群器,将符合所述条件规则的所述事件进行分群;
一收集获取器,耦接于所述事件分群器,用以从所述事件中储存一第一群组事件;
一处理器,耦接于所述事件分群器,用以处理一第二群组事件;以及
一事件产生器,将所述第一群组事件的一第一处理结果与所述第二群组事件的一第二处理结果整合,并产生一衍生事件;以及
至少一扩充模块,耦接于所述网关装置,每一个所述扩充模块包括:
一扩充处理器,计算所述第一群组事件并产生所述第一处理结果。
2.根据权利要求1所述的事件串流处理系统,其特征在于,所述收集获取器还包括:
至少一暂存单元,用以分别储存所述第一群组事件中的至少一第一子群组事件。
3.根据权利要求1所述的事件串流处理系统,其特征在于,所述事件处理引擎还包括:
一筛选器,用以筛选符合所述条件规则的事件,并提供至所述事件分群器。
4.根据权利要求1所述的事件串流处理系统,其特征在于,所述收集获取器用以将储存的所述第一群组事件进行一特征获取,并产生一特征向量与一残存数据。
5.根据权利要求1所述的事件串流处理系统,其特征在于,所述收集获取器用以将储存的所述第一群组事件嵌入一时间标签。
6.根据权利要求5所述的事件串流处理系统,其特征在于,每一个所述扩充模块还包括:
一事件分析器,当每一个所述扩充模块收到所述第一群组事件时检查所述时间标签。
7.根据权利要求1所述的事件串流处理系统,其特征在于,所述事件分群器用以将每一个所述事件嵌入一数据识别。
8.根据权利要求7所述的事件串流处理系统,其特征在于,所述事件产生器根据所述数据识别将所述第一处理结果与所述第二处理结果整合。
9.根据权利要求1所述的事件串流处理系统,其特征在于,每一个所述扩充模块还包括:
一格式转换单元,用以将所述第一群组事件进行格式转换。
10.一种事件串流处理方法,适用于一事件串流处理系统,所述事件串流处理系统具有一网关装置与至少一扩充模块,其特征在于,所述事件串流处理方法包括:
所述网关装置筛选出符合一条件规则的一事件串流的多个事件并进行分群;
所述网关装置将一第一群组事件传送到所述扩充模块进行计算,并且将一第二群组事件在所述网关装置中进行计算;
所述扩充模块产生一第一处理结果并回传给所述网关装置;以及
所述网关装置将所述第一群组事件的所述第一处理结果与所述第二群组事件的一第二处理结果整合,产生一衍生事件。
11.根据权利要求10所述的事件串流处理方法,其特征在于,在所述网关装置将所述第一群组事件传送到所述扩充模块进行计算的步骤中,包括:
根据一预设参考值来判断是否将所述第一群组事件进行传送。
12.根据权利要求10所述的事件串流处理方法,其特征在于,在所述网关装置将所述第一群组事件传送到所述扩充模块进行计算的步骤之前,包括:
所述网关装置将所述第一群组事件进行一特征获取,并产生一特征向量与一残存数据。
13.根据权利要求12所述的事件串流处理方法,其特征在于,所述特征获取为小波转换、傅立叶转换或离散余弦转换。
14.根据权利要求10所述的事件串流处理方法,其特征在于,在所述网关装置将所述第一群组事件传送到所述扩充模块进行计算的步骤之前,包括:
所述网关装置将所述第一群组事件中每一个所述事件嵌入一时间标签。
15.根据权利要求14所述的事件串流处理方法,其特征在于,在所述网关装置将所述第一群组事件传送到所述扩充模块进行计算的步骤中,包括:
所述扩充模块在收到所述第一群组事件时检查所述时间标签。
16.根据权利要求15所述的事件串流处理方法,其特征在于,所述扩充模块在收到所述第一群组事件时检查所述时间标签的步骤中,包括:
当所述时间卷标失效时,所述扩充模块清除所述第一群组事件并同时产生一事件失效信息。
17.根据权利要求10所述的事件串流处理方法,其特征在于,在所述网关装置筛选出符合所述条件规则的所述事件串流并进行分群的步骤中,包括:
所述网关装置将每一个所述事件串流的事件嵌入一数据识别。
18.根据权利要求17所述的事件串流处理方法,其特征在于,在所述网关装置将所述第一群组事件的所述第一处理结果与所述第二群组事件的所述第二处理结果整合,并产生所述衍生事件的步骤中,包括:
所述网关装置根据所述数据识别将所述第一处理结果与所述第二处理结果整合。
19.根据权利要求10所述的事件串流处理方法,其特征在于,在所述网关装置将所述第一群组事件传送到所述扩充模块进行计算的步骤中,包括:
所述扩充模块将接收的所述第一群组事件进行格式转换。
CN201410035203.4A 2013-12-13 2014-01-24 事件串流处理系统及其方法 Pending CN104717272A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW102146146 2013-12-13
TW102146146A TWI623881B (zh) 2013-12-13 2013-12-13 事件串流處理系統、方法與機器可讀記憶體

Publications (1)

Publication Number Publication Date
CN104717272A true CN104717272A (zh) 2015-06-17

Family

ID=53368749

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410035203.4A Pending CN104717272A (zh) 2013-12-13 2014-01-24 事件串流处理系统及其方法

Country Status (3)

Country Link
US (1) US20150169724A1 (zh)
CN (1) CN104717272A (zh)
TW (1) TWI623881B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI714840B (zh) * 2018-04-12 2021-01-01 群聯電子股份有限公司 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
GB2575289B (en) * 2018-07-04 2020-09-16 Graphcore Ltd Streaming engine
WO2020007667A1 (en) * 2018-07-04 2020-01-09 Graphcore Limited Streaming engine
GB2575294B8 (en) * 2018-07-04 2022-07-20 Graphcore Ltd Host Proxy On Gateway
GB2575293B (en) 2018-07-04 2020-09-16 Graphcore Ltd Data Through Gateway
WO2020007648A1 (en) * 2018-07-04 2020-01-09 Graphcore Limited Data through gateway
GB201819616D0 (en) * 2018-11-30 2019-01-16 Graphcore Ltd Virtualised gateways
JP2022151355A (ja) 2021-03-26 2022-10-07 富士通株式会社 データ処理プログラム、データ処理方法及びデータ処理システム
TWI769773B (zh) * 2021-04-06 2022-07-01 鼎新電腦股份有限公司 業務流程管理系統及業務流程管理方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040231498A1 (en) * 2003-02-14 2004-11-25 Tao Li Music feature extraction using wavelet coefficient histograms
US20060004597A1 (en) * 2004-06-30 2006-01-05 International Business Machines Corporation Method and system for grouping events
US20060074621A1 (en) * 2004-08-31 2006-04-06 Ophir Rachman Apparatus and method for prioritized grouping of data representing events
US20060136558A1 (en) * 2004-12-17 2006-06-22 Modius, Inc. Event manager for use in a facilities monitoring system having network-level and protocol-neutral communication with a physical device
CN101488942A (zh) * 2008-01-18 2009-07-22 财团法人工业技术研究院 车载媒体导向系统传输网络中多媒体数据分享系统与方法
CN102802113A (zh) * 2011-05-25 2012-11-28 宏达国际电子股份有限公司 改善区域性服务的方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5063523A (en) * 1989-11-16 1991-11-05 Racal Data Communications Inc. Network management system with event rule handling
US5893077A (en) * 1995-08-23 1999-04-06 Microsoft Corporation Method and apparatus for generating and collecting a billing event object within an on-line network
US5944782A (en) * 1996-10-16 1999-08-31 Veritas Software Corporation Event management system for distributed computing environment
WO2001044974A2 (en) * 1999-12-17 2001-06-21 Xigo, Inc. Analyzing input data streams using user criteria
US7111010B2 (en) * 2000-09-25 2006-09-19 Hon Hai Precision Industry, Ltd. Method and system for managing event attributes
US6564170B2 (en) * 2000-12-29 2003-05-13 Hewlett-Packard Development Company, L.P. Customizable user interfaces
US7570262B2 (en) * 2002-08-08 2009-08-04 Reuters Limited Method and system for displaying time-series data and correlated events derived from text mining
US7602413B2 (en) * 2002-10-18 2009-10-13 Sony Corporation Information processing system and method, information processing apparatus, image-capturing device and method, recording medium, and program
JP2007503034A (ja) * 2003-08-19 2007-02-15 フロインホーファー−ゲゼルシャフト ツール フェルデルング デア アンゲヴァンテン フォルシュング イー ファウ データストリーム中の異常オブジェクトを自動的にオンラインで検出及びクラス分類するための方法及び装置
CA2486482A1 (en) * 2004-11-01 2006-05-01 Canadian Medical Protective Association Event analysis system and method
US7984040B2 (en) * 2007-06-05 2011-07-19 Oracle International Corporation Methods and systems for querying event streams using multiple event processors
US8543534B2 (en) * 2007-09-11 2013-09-24 Oracle International Corporation Concurrency in event processing networks for event server
US8078556B2 (en) * 2008-02-20 2011-12-13 International Business Machines Corporation Generating complex event processing rules utilizing machine learning from multiple events
CN102246156A (zh) * 2008-10-14 2011-11-16 惠普开发有限公司 在网络系统中管理事件流量
US8386848B2 (en) * 2009-05-11 2013-02-26 Microsoft Corporation Root cause analysis for complex event processing
US8612983B2 (en) * 2009-09-07 2013-12-17 International Business Machines Corporation Scheduling event streams depending on content information data
US8560481B2 (en) * 2009-11-17 2013-10-15 Gregory P. Naifeh Method and apparatus for analyzing system events
CN102096848B (zh) * 2009-12-09 2015-11-25 Sap欧洲公司 用于在对流事件的查询模式匹配期间进行快速响应的调度
US9286354B2 (en) * 2011-08-15 2016-03-15 Software Ag Systems and/or methods for forecasting future behavior of event streams in complex event processing (CEP) environments
US8943009B2 (en) * 2011-11-20 2015-01-27 International Business Machines Corporation Method of adapting an event processing component having a plurality of event processing agents which carry out a plurality of rules complying with at least one correctness requirement to process a plurality of events
US9173073B2 (en) * 2011-12-19 2015-10-27 Motorola Solutions, Inc. Method and apparatus for processing group event notifications and providing group policy in a communication system
TWI519147B (zh) * 2011-12-28 2016-01-21 財團法人工業技術研究院 提供與傳送複合濃縮串流之方法以及系統

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040231498A1 (en) * 2003-02-14 2004-11-25 Tao Li Music feature extraction using wavelet coefficient histograms
US20060004597A1 (en) * 2004-06-30 2006-01-05 International Business Machines Corporation Method and system for grouping events
US20060074621A1 (en) * 2004-08-31 2006-04-06 Ophir Rachman Apparatus and method for prioritized grouping of data representing events
US20060136558A1 (en) * 2004-12-17 2006-06-22 Modius, Inc. Event manager for use in a facilities monitoring system having network-level and protocol-neutral communication with a physical device
CN101488942A (zh) * 2008-01-18 2009-07-22 财团法人工业技术研究院 车载媒体导向系统传输网络中多媒体数据分享系统与方法
CN102802113A (zh) * 2011-05-25 2012-11-28 宏达国际电子股份有限公司 改善区域性服务的方法

Also Published As

Publication number Publication date
TW201523450A (zh) 2015-06-16
TWI623881B (zh) 2018-05-11
US20150169724A1 (en) 2015-06-18

Similar Documents

Publication Publication Date Title
CN104717272A (zh) 事件串流处理系统及其方法
Liu et al. Traffic flow combination forecasting method based on improved LSTM and ARIMA
CN106027328A (zh) 一种基于应用容器部署的集群监控的方法及系统
EP3780496A1 (en) Feature engineering programming method and apparatus
CN105279614A (zh) 基于流程的业务审计系统及方法
JP2023506239A (ja) ハイブリッドエネルギー管理における自律的モニタリング及びリカバリのためのシステム及び方法
CN101217408B (zh) 全方位故障相关性处理系统及其处理方法
CN111062562A (zh) 一种社区网格服务联动处置控制方法及系统
US10560519B2 (en) Sensory data capture and processing for the Internet of Things
CN115469627A (zh) 基于物联网的智能工厂运行管理系统
CN111324644B (zh) 大型微服务架构下的数据库连接风暴的监控方法及装置
CN102932847B (zh) 基于稀疏表示分类器的分布式压缩感知数据分类方法
CN103973489A (zh) 一种异构设备集中监控系统
CN204790999U (zh) 一种工业大数据收集和处理系统
CN105446707B (zh) 一种数据转换方法
CN113505326B (zh) 一种基于http协议族的动态编码数据传输控制方法
CN109687592A (zh) 变电站信息显示控制方法、装置及电子设备
DE102022124386A1 (de) Verfahren und vorrichtungen, um den netzwerkverkehr auszurichten und den leistungsverbrauch zu verbessern
CN101674210A (zh) 基于射频技术的智能化数据处理系统和方法
Zhang et al. Intelligent fault diagnosis system based on vibration signal edge computing
CN103580903A (zh) 识别服务器系统中的热点和可能故障的方法、设备和系统
Lakshman Narayana et al. An intelligent iot framework for handling multidimensional data generated by iot gadgets
CN106209993B (zh) 基于qp量子状态机实现车载设备数据复杂差分上传系统及方法
CN106204790B (zh) 车载设备数据复杂差分上传平台
CN115759236B (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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20150617

WD01 Invention patent application deemed withdrawn after publication