WO2010107107A1 - Event processing system, event processing method, rule distributor, and program storage medium - Google Patents
Event processing system, event processing method, rule distributor, and program storage medium Download PDFInfo
- Publication number
- WO2010107107A1 WO2010107107A1 PCT/JP2010/054759 JP2010054759W WO2010107107A1 WO 2010107107 A1 WO2010107107 A1 WO 2010107107A1 JP 2010054759 W JP2010054759 W JP 2010054759W WO 2010107107 A1 WO2010107107 A1 WO 2010107107A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- event
- external
- rule
- processing
- local
- Prior art date
Links
- 238000003672 processing method Methods 0.000 title claims description 10
- 230000004931 aggregating effect Effects 0.000 claims abstract description 6
- 238000009826 distribution Methods 0.000 claims description 37
- 238000000034 method Methods 0.000 claims description 26
- 230000005540 biological transmission Effects 0.000 claims description 5
- 230000026676 system process Effects 0.000 claims description 2
- 238000001514 detection method Methods 0.000 description 15
- 238000004220 aggregation Methods 0.000 description 12
- 230000002776 aggregation Effects 0.000 description 12
- 238000003860 storage Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 102100037698 Dorsal root ganglia homeobox protein Human genes 0.000 description 5
- 101000880911 Homo sapiens Dorsal root ganglia homeobox protein Proteins 0.000 description 5
- 101000621511 Potato virus M (strain German) RNA silencing suppressor Proteins 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 4
- 230000010365 information processing Effects 0.000 description 3
- 101000798429 Pinus strobus Putative 2-Cys peroxiredoxin BAS1 Proteins 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 101000831940 Homo sapiens Stathmin Proteins 0.000 description 1
- 102100024237 Stathmin Human genes 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Classifications
-
- 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
Definitions
- the present invention relates to an event processing system, an event processing method, a rule distribution apparatus, and a program storage medium, and in particular, an event processing system that processes a large amount of events from devices such as RFID (Radio Frequency Identification) and sensors,
- the present invention relates to an event processing method, a rule distribution device, and a program storage medium.
- FIG. 17 shows a load distribution distribution system disclosed in Japanese Patent No. 41611998.
- the load distribution distribution system includes an event processing distribution unit 501, a context-independent distribution unit 502, a plurality of context-dependent distribution units (dispatchers) 503a and 503b (hereinafter abbreviated as 503), and a plurality of event processes.
- the servers 504a and 504b (hereinafter abbreviated as 504) are configured.
- the applications 506a and 506b that request event processing transmit event processing rules to the event processing distributor 501 (arrow 511).
- the event processing distributor 501 that has received the processing rule sets the processing rule in the event processing server 504 so that the load on the event processing server 504 is equalized, and event processing related to the same event is performed by the same server. (Arrow 512). For example, in the RFID system, when the application 506 wants to detect all the RFID tags of all the members necessary for manufacturing a certain product, the application 506 reads “If all the RFID tags of all the members of a certain product are detected, the application Process rule "is sent to the event processing distributor 501. The event processing distributor 501 sets this processing rule, for example, in the event processing server 504a.
- the event processing distributor 501 sets an event distribution rule (dispatch rule) in all the context-dependent distribution units 503 so that the event to be processed is transferred to the processing server for which the processing rule related to the event is set (arrow) 513a, 513b).
- the event processing distributor 501 sets the event distribution rule that “the detection event of the RFID tag of the member related to the product is transferred to the event processing server 504a” to the context-dependent distributor 503 (dispatcher). Set.
- an event generated from an event generation source 505a, 505b (hereinafter abbreviated as 505) such as a device is sent to the event processing server 504 in which a processing rule regarding the event is set by the context-dependent event distributor 503 (dispatcher).
- a processing rule regarding the event is set by the context-dependent event distributor 503 (dispatcher).
- the event processing server 504 processes the event based on the processing rule, and notifies the processing result to the application 506 (arrows 517a and 517b).
- the event processing distributor sets the generated dispatch rule to all dispatchers so that the event can be transferred to the event processing server for which the processing rule related to the event is set regardless of which dispatcher receives the event. To do. Therefore, as the number of applications increases and the event processing rules increase, the processing rules are distributed and distributed to multiple processing servers, but the dispatch rules set in the dispatcher increase, and the processing load associated with dispatch rule search There was a problem of increasing.
- An object of the present invention is to solve the above-described problems, an event processing system and an event processing method capable of suppressing an increase in dispatch rules set in a dispatcher even when the number of applications increases and an event processing rule increases. It is to provide a rule distribution device and a program storage medium.
- the event processing system of the present invention includes a plurality of external dispatchers that receive events from an event generation source and a plurality of local systems that transmit event processing results to an application server, and each of the plurality of local systems includes the application
- a processing rule including an event condition indicating an event condition to be processed is received from a server
- an aggregate event condition is generated by aggregating a plurality of the event conditions
- the aggregate event condition is set as an external event condition
- the local system is
- an external dispatch rule that is a transfer destination of the event that matches an external event condition is generated, the external dispatch rule is set in the external dispatcher, and the event is received from the external dispatcher, the processing rule is Processing the event, the processing result of the event, and notifies the application server of the transmission source of the processing rule
- each of the plurality of external dispatchers receives the event from the event generation source
- each of the plurality of external dispatchers refers to the external dispatch rule, and sends the event to the local system of the transfer destination corresponding to the external event condition that
- the rule distribution device of the present invention is provided in a local system having at least one processing server and at least one local dispatcher, and sets processing rules received from an application server to any one of the processing servers of the local system. And a local dispatch rule that uses the processing server as a transfer destination of an event that matches the event condition included in the processing rule, and sets the local dispatch rule in the local dispatcher of the local system.
- Generating an aggregated event condition that aggregates a plurality of the event conditions, setting the aggregated event condition as an external event condition, and using the local system as a transfer destination of the event that matches the external event condition Generates Le, characterized in that a dispatch rule setting unit which sets the external dispatch rule to external dispatcher.
- the local system when the local system receives a processing rule including an event condition indicating an event condition to be processed from the application server, the local system sets an aggregate event condition obtained by aggregating a plurality of the event conditions. Generate the aggregate event condition as an external event condition, generate an external dispatch rule with the local system as a transfer destination of the event that matches the external event condition, set the external dispatch rule in the external dispatcher, and When the external dispatcher receives the event from the event generation source, the external dispatcher refers to the external dispatch rule and transfers the event to the local system of the transfer destination corresponding to the external event condition that matches the event.
- the program recording medium of the present invention sets a processing rule received from an application server to any one of the processing servers of a local system having at least one processing server and at least one local dispatcher.
- a local dispatch rule is generated as a transfer destination of an event that matches an event condition included in the processing rule, the local dispatch rule is set in the local dispatcher of the local system, and a plurality of event conditions are aggregated Generate an event condition, set the aggregated event condition as an external event condition, generate an external dispatch rule with the local system as the transfer destination of the event that matches the external event condition, and generate the external dispatch To execute a process of setting Lumpur external dispatcher.
- An effect of the present invention is that an increase in dispatch rules accompanying an increase in processing rules can be suppressed in an event processing system.
- FIG. 1 is a configuration diagram of the entire event processing system according to the first embodiment of the present invention.
- the first embodiment of the event processing system of the present invention includes a plurality of local systems 100 installed on a network (not shown), a plurality of external dispatchers 140, an event source 150, and An application server 160 is provided.
- the local system 100 has two local systems with identifiers LS1 and LS2, respectively.
- the plurality of external dispatchers 140 have four dispatchers with identifiers GD1 to GD4, respectively.
- the event generation source 150 has eight event generation sources with identifiers G1 to G8, respectively.
- the application server 160 has six application servers with identifiers AS11, AS12, AS13, AS21, AS22, and AS23, respectively.
- the symbol in parentheses following the reference number indicates an identifier.
- the local system 100 (LS1) indicates the local system with the identifier LS1
- the application server 160 (AS11) indicates the application server with the identifier AS11. This is the same for the processing rules.
- the event generation source 150 transmits the detected information to the local system 100 as an event 201.
- the event generation source 150 may be anything as long as it can detect information and transmit it to the local system 100.
- Examples of the event generation source 150 include a non-contact or contact-type information reading device such as an RFID reader and a magnetic card reader, and various sensors for detecting temperature, atmospheric pressure, acceleration, and the like.
- a non-contact or contact-type information reading device such as an RFID reader and a magnetic card reader
- various sensors for detecting temperature, atmospheric pressure, acceleration, and the like for example, an identifier of an RFID tag detected at a certain time, temperature, atmospheric pressure, acceleration, etc.
- Attributes such as “type of information detected by the event source (event source type)”, “identifier of the event source (event source identifier)”, “related information such as detection time of detected information”, etc. It is included as information (event attribute information).
- the application server 160 is a server on which an application that performs various types of information processing on the event 201 detected in the event generation source 150 operates.
- the application server 160 performs various types of information processing on the results of processing performed in the local system 100 for the event 201 detected by the event generation source 150.
- the application server 160 localizes an event condition specifying the condition of the event 201 to be processed by the local system 100 and a processing rule 202 including the processing content performed by the local system 100 for the event 201 that matches the event condition. To system 100.
- the local system 100 generates an external dispatch rule 204 based on the processing rule 202 received from the application server 160 and sets the external dispatch rule 204 in the external dispatcher 140.
- the local system 100 receives the event 201 from the external dispatcher 140, the local system 100 processes the event 201 according to the processing rule 202, and transmits the processing result (event processing result 205) of the event 201 to the application server 160.
- the local system 100 further includes a rule distribution unit 110, at least one processing server 120, and at least one local dispatcher 130.
- FIG. 1 shows a case where the local system 100 includes a plurality of processing servers 120 and one local dispatcher 130.
- the processing server 102 has six processing servers with identifiers PS11, PS12, PS13, PS21, PS22, and PS23, respectively.
- the processing server 202 (PS11, PS12, PS13) is arranged in the local system 100 (LS1), and the processing server 202 (PS21, PS22, PS23) is arranged in the local system 100 (LS2).
- the rule distribution unit 110 of the local system 100 performs setting of the processing rule 202 to the processing server 120, generation of the local dispatch rule 203, and generation of the external dispatch rule 204.
- the processing server 120 processes the event 201 according to the processing rule 202.
- FIG. 2 shows the configuration of the local system 100 in the first embodiment of the present invention.
- the rule distribution unit 110 of the local system 100 further includes a processing rule setting unit 111, a processing rule distribution algorithm storage unit 112, a processing rule setting information storage unit 113, and a dispatch rule setting unit 114.
- the processing rule setting unit 111 receives the processing rule 202 from the application server 160, the processing rule setting unit 111 determines the processing server 120 that processes the processing rule 202 and sets the processing rule 202.
- the processing rule distribution algorithm storage unit 112 stores and manages a processing rule distribution algorithm (not shown) for determining the processing server 120 that processes the processing rule 202.
- the processing rule setting information storage unit 113 stores and manages the setting result of the processing rule 202 as processing rule setting information 211.
- the dispatch rule setting unit 114 generates a local dispatch rule 203 and sets it in the local dispatcher 130.
- the dispatch rule setting unit 114 generates an external dispatch rule 204 and sets it in the external dispatcher 140.
- the rule distribution unit 110, the processing server 120, the local dispatcher 130, the external dispatcher 140, the event generation source 150, and the application server 160 may be information processing devices that operate under program control. Some of these may be configured as one device.
- FIG. 3 is a sequence diagram showing a dispatch rule setting operation in the first embodiment of the present invention.
- the local system 100 from which each application server 160 requests the processing of the event 201 is determined in advance and set in each application server 160.
- the external dispatcher 140 from which each event generation source 150 transmits the event 201 is also determined in advance and set to each event generation source 150.
- the above-described setting for the local system 100 in the application server 160 may be set by an administrator directly specifying the local system 100, or each application server 160 may be set to a nearby local system based on the distance on the network.
- the processing rule 202 includes processing rule identifiers R11, R12, R21, and R22, event conditions that specify the conditions of the event 201 that the local system 100 processes, associated with each rule identifier, And processing performed by the local system 100 for the event 201 that matches the event condition.
- FIG. 5 the processing rule 202 includes processing rule identifiers R11, R12, R21, and R22, event conditions that specify the conditions of the event 201 that the local system 100 processes, associated with each rule identifier, And processing performed by the local system 100 for the event 201 that matches the event condition.
- FIG. 5 shows an example in which the local system 100 (LS1) receives the processing rule 202 (R11, R12) and the local system 100 (LS2) receives the processing rule 202 (R21, R22).
- the processing rule setting unit 111 of the rule distribution unit 110 stores the processing rule distribution algorithm stored in the processing rule distribution algorithm storage unit 112 and the processing rule setting information storage unit 113.
- the processing server 120 that processes the processing rule 202 is determined (step S102).
- the local system 100 sets the processing rule 202 in the determined processing server 120 (step S103).
- the processing rule setting unit 111 updates the processing rule setting information 211, and stores the updated processing rule setting information 211 in the processing rule setting information storage unit 113 (step S104).
- the processing rule distribution algorithm for example, a method of distributing the processing rules 202 so that the load of the processing server 120 is equalized according to the processing content, or an event as described in Japanese Patent No. 4161998 is disclosed. There is a method of distributing processing rules 202 having the same conditions to the same processing server 120. Further, as shown in FIG.
- the processing rule setting information 211 includes a processing server identifier and an identifier of the set processing rule 202.
- FIG. 6 shows an example of the processing rules 202 set in the processing servers (PS11, PS12) of the local system 100 (LS1) and the processing servers (PS21, PS22) of the local system 100 (LS2).
- the processing rule 202 (PR11) is set in the processing server 120 (PS11) of the local system 100 (LS1). With this setting, the processing server 120 (PS11) processes the processing rule 202 (R11).
- the dispatch rule setting unit 114 generates a local dispatch rule 203 with the processing server 120 set with the processing rule 202 as a transfer destination of the event 201 that matches the event condition of the processing rule 202 (step S105).
- the local dispatch rule 203 includes local dispatch rule identifiers DRL11, DRL12, DRL21, and DRL22, an event condition associated with each rule identifier, and an identifier of the processing server 120 that is a transfer destination.
- FIG. 7 shows an example of the local dispatch rule 203 (DRL11, DRL12) generated by the local system 100 (LS1) and the local dispatch rule 203 (DRL21, DRL22) generated by the local system 100 (LS2).
- DRL11, DRL12 generated by the local system 100
- DRL21, DRL22 the local dispatch rule 203
- the dispatch rule setting unit 114 sets the generated local dispatch rule 203 in the local dispatcher 130 (step S106).
- the dispatch rule setting unit 114 generates an aggregate event condition obtained by aggregating the event conditions of the plurality of processing rules 202, sets the external event condition as the aggregate event condition, and sets the local local system 100 for the event 201 that matches the external event condition.
- An external dispatch rule 204 (with aggregation) as a transfer destination is generated (step S107).
- an event condition aggregation method for example, when an event condition is specified by a value of detection information, a range of values including a plurality of event conditions may be set as the aggregation event condition.
- the processing rule 202 PR11, PR12
- the external dispatch rule 204 includes the external dispatch rule identifiers DRG11, DRG12, DRG21, and DRG22, the external event condition associated with each rule identifier, and the identifier of the local system 100 that is the transfer destination of the event 201. Including. FIG.
- the dispatch rule setting unit 114 sets the generated external dispatch rule 204 (with aggregation) in the external dispatcher 140 (step S108). For example, when the local system 100 (LS1, LS2) sets the external dispatch rule 204 (DRG11, DRG21) in the external dispatcher 140, the external dispatch rule 204 as shown in FIG. 9 is set in each external dispatcher 140.
- FIG. 4 is a sequence diagram showing an event processing operation in the first embodiment of the present invention.
- the event generation source 150 detects information to be detected, the event generation source 150 transmits the detected information to the external dispatcher 140 as an event 201 (step S201).
- the event 201 can include event attribute information such as an event identifier 131, an event generation source type, an event generation source identifier, a detection time, and detection information.
- event generation source type RFID
- event generation source identifier G3
- detection information: TagID 6 are set as event attribute information of event 201 (I31).
- the external dispatcher 140 When receiving the event 201, the external dispatcher 140 searches whether or not the event attribute information included in the event 201 matches any of the external event conditions of the external dispatch rule 204 (step S202). If there is a matching external event condition, the external dispatcher 140 refers to the external dispatch rule 204 and transfers the event 201 to the local system 100 corresponding to the external event condition (steps S203 and S204).
- the local dispatcher 130 searches whether the event attribute information included in the event 201 matches any of the event conditions of the local dispatch rule 203 (steps S211 and S221).
- the local dispatcher 130 of the local system 100 (LS1) transfers the event 201 (I31) to the processing server 120 (PS12).
- the processing server 120 of the local system 100 receives the event 201, the processing server 120 processes the event 201 according to the processing rule 202 (steps S213 and S223), and transmits the event processing result 205 to the application server 160 (step S214, S224).
- the processing server 120 (PS12) of the local system 100 (LS1) transmits the event 201 (I31) to the application server 160 (AS12) as the event processing result 205.
- the processing server 120 (PS21) of the local system 100 (LS2) transmits the event 201 (I31) to the application server 160 (AS21) as the event processing result 205.
- FIG. 11 shows a characteristic configuration of the first embodiment.
- the event processing system includes a plurality of external dispatchers 140 that receive the event 201 from the event generation source 150 and a plurality of local systems 100 that transmit the event processing result 205 to the application server 160.
- the local system 100 receives the processing rule 202 including the event condition indicating the condition of the event 201 to be processed from the application server 160, and generates an aggregate event condition in which a plurality of event conditions are aggregated.
- the local system 100 uses the aggregate event condition as an external event condition, generates an external dispatch rule 204 with the local system as a transfer destination of the event 201 that matches the external event condition, and uses the external dispatch rule 204 as the external dispatcher 140.
- the local system 100 processes the event 201 according to the processing rule 202, and notifies the event processing result 205 to the application server 160 that is the transmission source of the processing rule 202.
- the external dispatcher 140 When the external dispatcher 140 receives the event 201 from the event generation source 150, the external dispatcher 140 refers to the external dispatch rule 204 and sends the event 201 to the local system 100 that is a transfer destination corresponding to the external event condition that matches the event 201. Forward.
- the local system 100 sets an external event rule that is a consolidated event condition obtained by aggregating a plurality of event conditions as an external event condition, and sets an external dispatch rule 204 as a transfer destination of an event 201 that matches the external event condition. This is because it is set to 140.
- FIG. 12 shows the configuration of the entire event processing system according to the second embodiment of the present invention
- FIG. 13 shows the configuration of the local system 100 according to the second embodiment of the present invention.
- the local dispatcher 130 of the local system 100 further includes an event discard counter 115 that counts the number of events 201 discarded.
- the local dispatcher 130 counts the number of events 201 that do not match the local dispatch rule 203 and are discarded by the event discard counter 115. Further, the contents of the event discard counter 115 are periodically transmitted to the dispatch rule setting unit 114 as dispatch statistical information 206.
- the dispatch rule setting unit 114 refers to the value of the event discard counter 115 received from the local dispatcher 130.
- the event rule aggregation is stopped, and the external dispatch rule 204 To reset.
- the dispatch rule setting operation in the second embodiment of the present invention is the same as that in the first embodiment (FIG. 3) of the present invention.
- the external dispatch rule 204 as shown in FIG. 9 is set in each external dispatcher 140 based on the processing rule 202 of FIG. .
- step S301 to S311 Processing from when the event generation source 150 transmits the event 201 to when the local dispatcher 130 searches for the event condition of the local dispatch rule 203 (steps S301 to S311) is the first embodiment (steps S201 to S211). It will be the same.
- step S ⁇ b> 311 if there is no event condition that matches the event attribute information of the event 201 in the event condition of the local dispatch rule 203, the local dispatcher 130 discards the event 201. In this case, the local dispatcher 130 adds 1 to the event discard counter 115 (step S312).
- the local dispatcher 130 discards the event 201 (I 41) and adds 1 to the event discard counter 115. Note that the value of the event discard counter 115 is reset to 0 at a predetermined cycle.
- the local dispatcher 130 transmits the value of the event discard counter 115 as dispatch statistical information 206 to the dispatch rule setting unit 114 of the rule distribution unit 110 at a predetermined cycle (step S313).
- the dispatch rule setting unit 114 refers to the value of the event discard counter 115 received from the local dispatcher 130, and compares it with a predetermined discard number threshold value (step S314).
- the dispatch rule setting unit 114 sets the event condition (non-aggregated event condition) of each processing rule 202 as an external event condition, and the own local system
- An external dispatch rule 204 (no aggregation) having 100 as the transfer destination of the event 201 that matches the external event condition is generated (step S315).
- the local system 100 (LS1) sets the event condition of the processing rule 202 (PR11, PR12) in FIG.
- the external dispatch rule 204 (DRG12, DRG13) is regenerated.
- the dispatch rule setting unit 114 sets the generated external dispatch rule 204 (no aggregation) in the external dispatcher 140 (step S316).
- the event 201 having the same event attribute information as the event 201 discarded by the local dispatcher 130 does not match the external event condition of the external dispatch rule 204, and is therefore discarded by the external dispatcher 140 (Step S317, S318).
- the local system 100 (LS1) sets the external dispatch rule 204 (DRG12, DRG13) to the external dispatcher 140, the external dispatch rule 204 as shown in FIG.
- the dispatch rule setting unit 114 counts the elapsed time after setting the external dispatch rule 204 (no aggregation) (step S319), and aggregates event conditions of a plurality of processing rules 202 again when a predetermined time elapses.
- An event condition is generated, and an external dispatch rule 204 (with aggregation) using the aggregate event condition as an external event condition is generated (step S320).
- the dispatch rule setting unit 114 sets the generated external dispatch rule 204 (with aggregation) in the external dispatcher 140 (step S321).
- the local system 100 stops the aggregation of the event conditions, and external dispatch using each event condition as an external event condition. This is because the rule 204 is reset in the external dispatcher 140.
- the number of dispatch rules can be adjusted to reduce the number of dispatch rules.
- the reason is that when the local system 100 resets the external dispatch rule 204 that does not aggregate event conditions in the external dispatcher 140 and then a predetermined time has elapsed, the external dispatch rule 204 with the aggregate event condition as the external event condition is set. This is for resetting to the external dispatcher 140.
- the effect of the present invention is that an increase in dispatch rules accompanying an increase in processing rules can be suppressed in an event processing system. While the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention. This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2009-063720 for which it applied on March 17, 2009, and takes in those the indications of all here.
- the present invention can be applied to an event processing system that processes events that occur in large quantities from devices such as RFIDs and sensors.
- the present invention can be applied to a physical distribution traceability system using an event from an RFID or a sensor, an SCEM (Supply Chain Event Management) system, and an environmental management system such as weather or disaster.
- SCEM Serial Chain Event Management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
Provided is an event processing system which is capable of suppressing increase in the dispatch rule set in a dispatcher incident to increase in the processing rule of event.
An event processing system comprises a plurality of external dispatchers (140) each transferring an event (201) to a local system (100), and a plurality of local systems (100) each transmitting the results (205) of event processing to an application server (160). Upon receiving a processing rule (202) including the event conditions indicating the conditions of an event (201) to be processed from the application server (160), the local system (100) generates an external dispatch rule (204) where the aggregate event conditions aggregating a plurality of event conditions are the external event conditions, and sets the external dispatch rule (204) in the external dispatcher (140). The external dispatcher (140) transfers the event (201) to the local system (100) with reference to the external dispatch rule (204).
Description
本発明は、イベント処理システム、イベント処理方法、ルール分配装置、及びプログラム記憶媒体に関し、特にRFID(Radio Frequency Identification)、センサのようなデバイス等から大量に発生するイベントの処理を行うイベント処理システム、イベント処理方法、ルール分配装置、及びプログラム記憶媒体に関する。
The present invention relates to an event processing system, an event processing method, a rule distribution apparatus, and a program storage medium, and in particular, an event processing system that processes a large amount of events from devices such as RFID (Radio Frequency Identification) and sensors, The present invention relates to an event processing method, a rule distribution device, and a program storage medium.
デバイスなどから大量に発生するイベントを処理するシステムの一例が特許第4161998号公報に記載されている。図17に特許第4161998号公報の負荷分散振り分けシステムを示す。図17を参照すると、負荷分散振り分けシステムは、イベント処理分散器501、コンテキスト非依存振り分け器502、複数のコンテキスト依存振り分け器(ディスパッチャ)503a、503b(以下、503と略称)、及び複数のイベント処理サーバ504a、504b(以下、504と略称)により構成される。イベント処理を求めるアプリケーション506a、506b(以下、506と略称)は、イベントの処理ルールをイベント処理分散器501に送信する(矢印511)。処理ルールを受信したイベント処理分散器501は、イベント処理サーバ504の負荷が均等になるように、かつ同じイベントに関するイベント処理は同じサーバで行われるように、処理ルールをイベント処理サーバ504に設定する(矢印512)。
例えば、RFIDシステムにおいて、アプリケーション506が、ある製品を製造するために必要な全ての部材のRFIDタグを全て検出したい場合、アプリケーション506は、「ある製品の全ての部材のRFIDタグを全て検出したらアプリケーションに通知する」という処理ルールを生成し、イベント処理分散器501に送信する。イベント処理分散器501は、この処理ルールを、例えば、イベント処理サーバ504aに設定する。
イベント処理分散器501は、処理されるイベントがそのイベントに関する処理ルールを設定された処理サーバに転送されるように、全てのコンテキスト依存振り分け器503にイベント振り分けルール(ディスパッチルール)を設定する(矢印513a、513b)。
上記に示した例の場合、イベント処理分散器501は、「その製品に関する部材のRFIDタグの検出イベントは、イベント処理サーバ504aに転送する」というイベント振り分けルールをコンテキスト依存振り分け器503(ディスパッチャ)に設定する。
これにより、デバイス等のイベント発生源505a、505b(以下、505と略称)から発生したイベントは、コンテキスト依存イベント振り分け器503(ディスパッチャ)により、そのイベントに関する処理ルールが設定されたイベント処理サーバ504に転送される(矢印514a、514b、515a、515b、516a、516b、516c、516d)。イベント処理サーバ504は、処理ルールに基づきイベントを処理し、処理結果をアプリケーション506に通知する(矢印517a、517b)。 An example of a system that processes a large number of events generated from a device or the like is described in Japanese Patent No. 4161998. FIG. 17 shows a load distribution distribution system disclosed in Japanese Patent No. 41611998. Referring to FIG. 17, the load distribution distribution system includes an eventprocessing distribution unit 501, a context-independent distribution unit 502, a plurality of context-dependent distribution units (dispatchers) 503a and 503b (hereinafter abbreviated as 503), and a plurality of event processes. The servers 504a and 504b (hereinafter abbreviated as 504) are configured. The applications 506a and 506b (hereinafter abbreviated as 506) that request event processing transmit event processing rules to the event processing distributor 501 (arrow 511). The event processing distributor 501 that has received the processing rule sets the processing rule in the event processing server 504 so that the load on the event processing server 504 is equalized, and event processing related to the same event is performed by the same server. (Arrow 512).
For example, in the RFID system, when the application 506 wants to detect all the RFID tags of all the members necessary for manufacturing a certain product, the application 506 reads “If all the RFID tags of all the members of a certain product are detected, the application Process rule "is sent to theevent processing distributor 501. The event processing distributor 501 sets this processing rule, for example, in the event processing server 504a.
Theevent processing distributor 501 sets an event distribution rule (dispatch rule) in all the context-dependent distribution units 503 so that the event to be processed is transferred to the processing server for which the processing rule related to the event is set (arrow) 513a, 513b).
In the case of the example shown above, theevent processing distributor 501 sets the event distribution rule that “the detection event of the RFID tag of the member related to the product is transferred to the event processing server 504a” to the context-dependent distributor 503 (dispatcher). Set.
As a result, an event generated from an event generation source 505a, 505b (hereinafter abbreviated as 505) such as a device is sent to the event processing server 504 in which a processing rule regarding the event is set by the context-dependent event distributor 503 (dispatcher). (Arrows 514a, 514b, 515a, 515b, 516a, 516b, 516c, 516d). The event processing server 504 processes the event based on the processing rule, and notifies the processing result to the application 506 ( arrows 517a and 517b).
例えば、RFIDシステムにおいて、アプリケーション506が、ある製品を製造するために必要な全ての部材のRFIDタグを全て検出したい場合、アプリケーション506は、「ある製品の全ての部材のRFIDタグを全て検出したらアプリケーションに通知する」という処理ルールを生成し、イベント処理分散器501に送信する。イベント処理分散器501は、この処理ルールを、例えば、イベント処理サーバ504aに設定する。
イベント処理分散器501は、処理されるイベントがそのイベントに関する処理ルールを設定された処理サーバに転送されるように、全てのコンテキスト依存振り分け器503にイベント振り分けルール(ディスパッチルール)を設定する(矢印513a、513b)。
上記に示した例の場合、イベント処理分散器501は、「その製品に関する部材のRFIDタグの検出イベントは、イベント処理サーバ504aに転送する」というイベント振り分けルールをコンテキスト依存振り分け器503(ディスパッチャ)に設定する。
これにより、デバイス等のイベント発生源505a、505b(以下、505と略称)から発生したイベントは、コンテキスト依存イベント振り分け器503(ディスパッチャ)により、そのイベントに関する処理ルールが設定されたイベント処理サーバ504に転送される(矢印514a、514b、515a、515b、516a、516b、516c、516d)。イベント処理サーバ504は、処理ルールに基づきイベントを処理し、処理結果をアプリケーション506に通知する(矢印517a、517b)。 An example of a system that processes a large number of events generated from a device or the like is described in Japanese Patent No. 4161998. FIG. 17 shows a load distribution distribution system disclosed in Japanese Patent No. 41611998. Referring to FIG. 17, the load distribution distribution system includes an event
For example, in the RFID system, when the application 506 wants to detect all the RFID tags of all the members necessary for manufacturing a certain product, the application 506 reads “If all the RFID tags of all the members of a certain product are detected, the application Process rule "is sent to the
The
In the case of the example shown above, the
As a result, an event generated from an
特許第4161998号公報の負荷分散振り分けシステムのように、ディスパッチャを複数分散配置したシステムでは、イベント振り分けルールに合致するイベントがどのディスパッチャで受信できるか予測できない。従って、イベント処理分散器は、どのディスパッチャでイベントを受信した場合でも、そのイベントに関する処理ルールを設定されたイベント処理サーバに該イベントが転送できるように、生成したディスパッチルールを、全てのディスパッチャに設定する。
そのため、アプリケーションの数が増え、イベントの処理ルールが増えると、処理ルールは複数の処理サーバに分散配置されるが、ディスパッチャに設定されるディスパッチルールは増大し、ディスパッチルールの検索に伴う処理の負荷が大きくなるという課題があった。
本発明の目的は、上述した課題を解決し、アプリケーションの数が増え、イベントの処理ルールが増えても、ディスパッチャに設定されるディスパッチルールの増大を抑制することができるイベント処理システム、イベント処理方法、ルール分配装置、及びプログラム記憶媒体を提供することにある。 In a system in which a plurality of dispatchers are distributed like the load distribution distribution system of Japanese Patent No. 4161998, it is impossible to predict which dispatcher can receive an event that matches the event distribution rule. Therefore, the event processing distributor sets the generated dispatch rule to all dispatchers so that the event can be transferred to the event processing server for which the processing rule related to the event is set regardless of which dispatcher receives the event. To do.
Therefore, as the number of applications increases and the event processing rules increase, the processing rules are distributed and distributed to multiple processing servers, but the dispatch rules set in the dispatcher increase, and the processing load associated with dispatch rule search There was a problem of increasing.
An object of the present invention is to solve the above-described problems, an event processing system and an event processing method capable of suppressing an increase in dispatch rules set in a dispatcher even when the number of applications increases and an event processing rule increases. It is to provide a rule distribution device and a program storage medium.
そのため、アプリケーションの数が増え、イベントの処理ルールが増えると、処理ルールは複数の処理サーバに分散配置されるが、ディスパッチャに設定されるディスパッチルールは増大し、ディスパッチルールの検索に伴う処理の負荷が大きくなるという課題があった。
本発明の目的は、上述した課題を解決し、アプリケーションの数が増え、イベントの処理ルールが増えても、ディスパッチャに設定されるディスパッチルールの増大を抑制することができるイベント処理システム、イベント処理方法、ルール分配装置、及びプログラム記憶媒体を提供することにある。 In a system in which a plurality of dispatchers are distributed like the load distribution distribution system of Japanese Patent No. 4161998, it is impossible to predict which dispatcher can receive an event that matches the event distribution rule. Therefore, the event processing distributor sets the generated dispatch rule to all dispatchers so that the event can be transferred to the event processing server for which the processing rule related to the event is set regardless of which dispatcher receives the event. To do.
Therefore, as the number of applications increases and the event processing rules increase, the processing rules are distributed and distributed to multiple processing servers, but the dispatch rules set in the dispatcher increase, and the processing load associated with dispatch rule search There was a problem of increasing.
An object of the present invention is to solve the above-described problems, an event processing system and an event processing method capable of suppressing an increase in dispatch rules set in a dispatcher even when the number of applications increases and an event processing rule increases. It is to provide a rule distribution device and a program storage medium.
本発明のイベント処理システムは、イベント発生源からイベントを受信する複数の外部ディスパッチャとアプリケーションサーバへイベントの処理結果を送信する複数のローカルシステムとを備え、前記複数のローカルシステムのそれぞれは、前記アプリケーションサーバから処理するイベントの条件を示すイベント条件を含む処理ルールを受信した場合、複数の前記イベント条件を集約した集約イベント条件を生成し、当該集約イベント条件を外部イベント条件とし、自ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした外部ディスパッチルールを生成し、当該外部ディスパッチルールを前記外部ディスパッチャに設定し、前記イベントを前記外部ディスパッチャから受信した場合、前記処理ルールに従って当該イベントを処理し、当該イベントの処理結果を、当該処理ルールの送信元の前記アプリケーションサーバに通知し、
前記複数の外部ディスパッチャのそれぞれは、前記イベントを前記イベント発生源から受信した場合、前記外部ディスパッチルールを参照し、当該イベントに合致する前記外部イベント条件に対応した転送先のローカルシステムに当該イベントを転送することを特徴とする。
本発明のルール分配装置は、少なくとも1つの処理サーバと少なくとも1つのローカルディスパッチャとを有するローカルシステム内に設けられ、アプリケーションサーバから受信した処理ルールを前記ローカルシステムのいずれか1つの前記処理サーバに設定する処理ルール設定部と、当該処理サーバを当該処理ルールに含まれるイベント条件に合致するイベントの転送先としたローカルディスパッチルールを生成し、当該ローカルディスパッチルールを前記ローカルシステムの前記ローカルディスパッチャに設定し、複数の前記イベント条件を集約した集約イベント条件を生成し、当該集約イベント条件を外部イベント条件とし、前記ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした外部ディスパッチルールを生成し、当該外部ディスパッチルールを外部ディスパッチャに設定するディスパッチルール設定部とを備えたことを特徴とする。
本発明のイベント処理方法は、ローカルシステムが、アプリケーションサーバから処理するイベントの条件を示すイベント条件を含む処理ルールを受信した場合、前記ローカルシステムは、複数の前記イベント条件を集約した集約イベント条件を生成し、当該集約イベント条件を外部イベント条件とし、自ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした外部ディスパッチルールを生成し、当該外部ディスパッチルールを外部ディスパッチャに設定し、前記外部ディスパッチャが、前記イベントをイベント発生源から受信した場合、前記外部ディスパッチャは、前記外部ディスパッチルールを参照し、当該イベントに合致する前記外部イベント条件に対応した転送先のローカルシステムに当該イベントを転送し、前記ローカルシステムが、前記イベントを前記外部ディスパッチャから受信した場合、前記ローカルシステムは、前記処理ルールに従って当該イベントを処理し、当該イベントの処理結果を、当該処理ルールの送信元の前記アプリケーションサーバに通知することを特徴とする。
本発明のプログラム記録媒体は、コンピュータに、アプリケーションサーバから受信した処理ルールを少なくとも1つの処理サーバと少なくとも1つのローカルディスパッチャとを有するローカルシステムのいずれか1つの前記処理サーバに設定し、当該処理サーバを当該処理ルールに含まれるイベント条件に合致するイベントの転送先としたローカルディスパッチルールを生成し、当該ローカルディスパッチルールを前記ローカルシステムの前記ローカルディスパッチャに設定し、複数の前記イベント条件を集約した集約イベント条件を生成し、当該集約イベント条件を外部イベント条件とし、前記ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした外部ディスパッチルールを生成し、当該外部ディスパッチルールを外部ディスパッチャに設定する処理を実行させる。 The event processing system of the present invention includes a plurality of external dispatchers that receive events from an event generation source and a plurality of local systems that transmit event processing results to an application server, and each of the plurality of local systems includes the application When a processing rule including an event condition indicating an event condition to be processed is received from a server, an aggregate event condition is generated by aggregating a plurality of the event conditions, the aggregate event condition is set as an external event condition, and the local system is When an external dispatch rule that is a transfer destination of the event that matches an external event condition is generated, the external dispatch rule is set in the external dispatcher, and the event is received from the external dispatcher, the processing rule is Processing the event, the processing result of the event, and notifies the application server of the transmission source of the processing rule,
When each of the plurality of external dispatchers receives the event from the event generation source, each of the plurality of external dispatchers refers to the external dispatch rule, and sends the event to the local system of the transfer destination corresponding to the external event condition that matches the event. It is characterized by transferring.
The rule distribution device of the present invention is provided in a local system having at least one processing server and at least one local dispatcher, and sets processing rules received from an application server to any one of the processing servers of the local system. And a local dispatch rule that uses the processing server as a transfer destination of an event that matches the event condition included in the processing rule, and sets the local dispatch rule in the local dispatcher of the local system. Generating an aggregated event condition that aggregates a plurality of the event conditions, setting the aggregated event condition as an external event condition, and using the local system as a transfer destination of the event that matches the external event condition Generates Le, characterized in that a dispatch rule setting unit which sets the external dispatch rule to external dispatcher.
In the event processing method of the present invention, when the local system receives a processing rule including an event condition indicating an event condition to be processed from the application server, the local system sets an aggregate event condition obtained by aggregating a plurality of the event conditions. Generate the aggregate event condition as an external event condition, generate an external dispatch rule with the local system as a transfer destination of the event that matches the external event condition, set the external dispatch rule in the external dispatcher, and When the external dispatcher receives the event from the event generation source, the external dispatcher refers to the external dispatch rule and transfers the event to the local system of the transfer destination corresponding to the external event condition that matches the event. When the local system receives the event from the external dispatcher, the local system processes the event according to the processing rule and sends the processing result of the event to the application server that is the transmission source of the processing rule. It is characterized by notifying.
The program recording medium of the present invention sets a processing rule received from an application server to any one of the processing servers of a local system having at least one processing server and at least one local dispatcher. A local dispatch rule is generated as a transfer destination of an event that matches an event condition included in the processing rule, the local dispatch rule is set in the local dispatcher of the local system, and a plurality of event conditions are aggregated Generate an event condition, set the aggregated event condition as an external event condition, generate an external dispatch rule with the local system as the transfer destination of the event that matches the external event condition, and generate the external dispatch To execute a process of setting Lumpur external dispatcher.
前記複数の外部ディスパッチャのそれぞれは、前記イベントを前記イベント発生源から受信した場合、前記外部ディスパッチルールを参照し、当該イベントに合致する前記外部イベント条件に対応した転送先のローカルシステムに当該イベントを転送することを特徴とする。
本発明のルール分配装置は、少なくとも1つの処理サーバと少なくとも1つのローカルディスパッチャとを有するローカルシステム内に設けられ、アプリケーションサーバから受信した処理ルールを前記ローカルシステムのいずれか1つの前記処理サーバに設定する処理ルール設定部と、当該処理サーバを当該処理ルールに含まれるイベント条件に合致するイベントの転送先としたローカルディスパッチルールを生成し、当該ローカルディスパッチルールを前記ローカルシステムの前記ローカルディスパッチャに設定し、複数の前記イベント条件を集約した集約イベント条件を生成し、当該集約イベント条件を外部イベント条件とし、前記ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした外部ディスパッチルールを生成し、当該外部ディスパッチルールを外部ディスパッチャに設定するディスパッチルール設定部とを備えたことを特徴とする。
本発明のイベント処理方法は、ローカルシステムが、アプリケーションサーバから処理するイベントの条件を示すイベント条件を含む処理ルールを受信した場合、前記ローカルシステムは、複数の前記イベント条件を集約した集約イベント条件を生成し、当該集約イベント条件を外部イベント条件とし、自ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした外部ディスパッチルールを生成し、当該外部ディスパッチルールを外部ディスパッチャに設定し、前記外部ディスパッチャが、前記イベントをイベント発生源から受信した場合、前記外部ディスパッチャは、前記外部ディスパッチルールを参照し、当該イベントに合致する前記外部イベント条件に対応した転送先のローカルシステムに当該イベントを転送し、前記ローカルシステムが、前記イベントを前記外部ディスパッチャから受信した場合、前記ローカルシステムは、前記処理ルールに従って当該イベントを処理し、当該イベントの処理結果を、当該処理ルールの送信元の前記アプリケーションサーバに通知することを特徴とする。
本発明のプログラム記録媒体は、コンピュータに、アプリケーションサーバから受信した処理ルールを少なくとも1つの処理サーバと少なくとも1つのローカルディスパッチャとを有するローカルシステムのいずれか1つの前記処理サーバに設定し、当該処理サーバを当該処理ルールに含まれるイベント条件に合致するイベントの転送先としたローカルディスパッチルールを生成し、当該ローカルディスパッチルールを前記ローカルシステムの前記ローカルディスパッチャに設定し、複数の前記イベント条件を集約した集約イベント条件を生成し、当該集約イベント条件を外部イベント条件とし、前記ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした外部ディスパッチルールを生成し、当該外部ディスパッチルールを外部ディスパッチャに設定する処理を実行させる。 The event processing system of the present invention includes a plurality of external dispatchers that receive events from an event generation source and a plurality of local systems that transmit event processing results to an application server, and each of the plurality of local systems includes the application When a processing rule including an event condition indicating an event condition to be processed is received from a server, an aggregate event condition is generated by aggregating a plurality of the event conditions, the aggregate event condition is set as an external event condition, and the local system is When an external dispatch rule that is a transfer destination of the event that matches an external event condition is generated, the external dispatch rule is set in the external dispatcher, and the event is received from the external dispatcher, the processing rule is Processing the event, the processing result of the event, and notifies the application server of the transmission source of the processing rule,
When each of the plurality of external dispatchers receives the event from the event generation source, each of the plurality of external dispatchers refers to the external dispatch rule, and sends the event to the local system of the transfer destination corresponding to the external event condition that matches the event. It is characterized by transferring.
The rule distribution device of the present invention is provided in a local system having at least one processing server and at least one local dispatcher, and sets processing rules received from an application server to any one of the processing servers of the local system. And a local dispatch rule that uses the processing server as a transfer destination of an event that matches the event condition included in the processing rule, and sets the local dispatch rule in the local dispatcher of the local system. Generating an aggregated event condition that aggregates a plurality of the event conditions, setting the aggregated event condition as an external event condition, and using the local system as a transfer destination of the event that matches the external event condition Generates Le, characterized in that a dispatch rule setting unit which sets the external dispatch rule to external dispatcher.
In the event processing method of the present invention, when the local system receives a processing rule including an event condition indicating an event condition to be processed from the application server, the local system sets an aggregate event condition obtained by aggregating a plurality of the event conditions. Generate the aggregate event condition as an external event condition, generate an external dispatch rule with the local system as a transfer destination of the event that matches the external event condition, set the external dispatch rule in the external dispatcher, and When the external dispatcher receives the event from the event generation source, the external dispatcher refers to the external dispatch rule and transfers the event to the local system of the transfer destination corresponding to the external event condition that matches the event. When the local system receives the event from the external dispatcher, the local system processes the event according to the processing rule and sends the processing result of the event to the application server that is the transmission source of the processing rule. It is characterized by notifying.
The program recording medium of the present invention sets a processing rule received from an application server to any one of the processing servers of a local system having at least one processing server and at least one local dispatcher. A local dispatch rule is generated as a transfer destination of an event that matches an event condition included in the processing rule, the local dispatch rule is set in the local dispatcher of the local system, and a plurality of event conditions are aggregated Generate an event condition, set the aggregated event condition as an external event condition, generate an external dispatch rule with the local system as the transfer destination of the event that matches the external event condition, and generate the external dispatch To execute a process of setting Lumpur external dispatcher.
本発明の効果は、イベント処理システムにおいて、処理ルールの増加に伴うディスパッチルールの増大を抑制することができることである。
An effect of the present invention is that an increase in dispatch rules accompanying an increase in processing rules can be suppressed in an event processing system.
100 ローカルシステム
110 ルール分配部
111 処理ルール設定部
112 処理ルール分配アルゴリズム記憶部
113 処理ルール設定情報記憶部
114 ディスパッチルール設定部
115 イベント廃棄カウンタ
120 処理サーバ
130 ローカルディスパッチャ
140 外部ディスパッチャ
150 イベント発生源
160 アプリケーションサーバ
201 イベント
202 処理ルール
203 ローカルディスパッチルール
204 外部ディスパッチルール
205 イベント処理結果
211 処理ルール設定情報 DESCRIPTION OFSYMBOLS 100 Local system 110 Rule distribution part 111 Processing rule setting part 112 Processing rule distribution algorithm memory | storage part 113 Processing rule setting information storage part 114 Dispatch rule setting part 115 Event discard counter 120 Processing server 130 Local dispatcher 140 External dispatcher 150 Event generation source 160 Application Server 201 Event 202 Processing rule 203 Local dispatch rule 204 External dispatch rule 205 Event processing result 211 Processing rule setting information
110 ルール分配部
111 処理ルール設定部
112 処理ルール分配アルゴリズム記憶部
113 処理ルール設定情報記憶部
114 ディスパッチルール設定部
115 イベント廃棄カウンタ
120 処理サーバ
130 ローカルディスパッチャ
140 外部ディスパッチャ
150 イベント発生源
160 アプリケーションサーバ
201 イベント
202 処理ルール
203 ローカルディスパッチルール
204 外部ディスパッチルール
205 イベント処理結果
211 処理ルール設定情報 DESCRIPTION OF
(第一の実施の形態)
次に、本発明の第一の実施の形態について図面を参照して詳細に説明する。
図1は、本発明の第一の実施の形態におけるイベント処理システム全体の構成図である。図1を参照すると、本発明のイベント処理システムの第一の実施の形態は、ネットワーク(図示せず)上に設置される複数のローカルシステム100、複数の外部ディスパッチャ140、イベント発生源150、及びアプリケーションサーバ160を備える。
ここで、ローカルシステム100は、それぞれ識別子LS1、LS2の2つのローカルシステムを有する。また、複数の外部ディスパッチャ140は、それぞれ識別子GD1~GD4の4つのディスパッチャを有する。イベント発生源150は、それぞれ識別子G1~G8の8つのイベント発生源を有する。また、アプリケーションサーバ160は、それぞれ識別子AS11、AS12、AS13、AS21、AS22、AS23の6つのアプリケーションサーバを有する。
なお、各図面および以下の説明において、引用番号に続く()内の符号は、識別子を示すものとする。たとえば、ローカルシステム100(LS1)は、識別子LS1のローカルシステムを示し、アプリケーションサーバ160(AS11)は、識別子AS11のアプリケーションサーバを示す。このような表記は、処理ルールにおいても同様とする。
イベント発生源150は、検出した情報をイベント201としてローカルシステム100に送信する。イベント発生源150は、情報を検出してローカルシステム100に送信できるものであれば、どのようなものでもよい。
イベント発生源150としては、例えば、RFIDリーダや磁気カードリーダ等、非接触あるいは接触型の情報読み取り装置や、温度、気圧、加速度等を検出する各種センサ等がある。
イベント発生源150が送信するイベント201には、「ある時刻でイベント発生源150が検出した情報(例えば、ある時刻において検出されたRFIDタグの識別子や、温度、気圧、加速度等)」に加え、「当該イベント発生源が検出する情報の種別(イベント発生源種別)」、「当該イベント発生源の識別子(イベント発生源識別子)」、「検出された情報の検出時刻等の関連情報」等が属性情報(イベント属性情報)として含まれる。
外部ディスパッチャ140は、イベント201をイベント発生源150から受信した場合、外部ディスパッチルール204を参照し、当該イベント201をローカルシステム100へ転送する。
アプリケーションサーバ160は、イベント発生源150において検出されたイベント201に対して各種情報処理を行うアプリケーションが動作するサーバである。アプリケーションサーバ160は、イベント発生源150により検出されたイベント201に対してローカルシステム100において行われた処理の結果に対して各種情報処理を行う。また、アプリケーションサーバ160は、ローカルシステム100が処理するイベント201の条件を指定したイベント条件と、当該イベント条件に合致したイベント201に対してローカルシステム100が行う処理内容を含む処理ルール202とをローカルシステム100に送信する。
ローカルシステム100は、アプリケーションサーバ160から受信した処理ルール202をもとに外部ディスパッチルール204を生成し、当該外部ディスパッチルール204を外部ディスパッチャ140に設定する。また、ローカルシステム100は、外部ディスパッチャ140からイベント201を受信した場合、処理ルール202に従ってイベント201を処理し、当該イベント201の処理結果(イベント処理結果205)をアプリケーションサーバ160に送信する。
ローカルシステム100は、更に、ルール分配部110、少なくとも1つの処理サーバ120、及び少なくとも1つのローカルディスパッチャ130より構成される。図1は、ローカルシステム100が、複数の処理サーバ120と1つのローカルディスパッチャ130とを有する場合を示している。ここで、処理サーバ102は、それぞれ識別子PS11、PS12、PS13、PS21、PS22、PS23の6つの処理サーバを有する。処理サーバ202(PS11、PS12、PS13)は、ローカルシステム100(LS1)に配置され、処理サーバ202(PS21、PS22、PS23)は、ローカルシステム100(LS2)に配置されている。
ローカルシステム100のルール分配部110は、処理ルール202の処理サーバ120への設定、ローカルディスパッチルール203の生成、及び外部ディスパッチルール204の生成を行う。処理サーバ120は、処理ルール202に従って、イベント201を処理する。ローカルディスパッチャ130は、イベント201を外部ディスパッチャ140から受信した場合、ローカルディスパッチルール203を参照し、当該イベント201を自ローカルシステム100の処理サーバ120へ転送する。
図2に本発明の第一の実施の形態におけるローカルシステム100の構成を示す。ローカルシステム100のルール分配部110は、更に、処理ルール設定部111、処理ルール分配アルゴリズム記憶部112、処理ルール設定情報記憶部113、及びディスパッチルール設定部114により構成される。
処理ルール設定部111は、アプリケーションサーバ160から処理ルール202を受信した場合、当該処理ルール202を処理する処理サーバ120を決定し、当該処理ルール202を設定する。また、処理ルール分配アルゴリズム記憶部112は、処理ルール202を処理する処理サーバ120を決定するための処理ルール分配アルゴリズム(図示せず)を記憶管理する。処理ルール設定情報記憶部113は、処理ルール202の設定結果を処理ルール設定情報211として記憶管理する。ディスパッチルール設定部114は、ローカルディスパッチルール203を生成し、ローカルディスパッチャ130に設定する。また、ディスパッチルール設定部114は、外部ディスパッチルール204を生成し、外部ディスパッチャ140に設定する。
なお、ルール分配部110、処理サーバ120、ローカルディスパッチャ130、外部ディスパッチャ140、イベント発生源150、及びアプリケーションサーバ160は、それぞれプログラム制御によって動作する情報処理装置であってもよい。また、これらのうちのいくつかを一つの装置として構成してもよい。
次に、本発明の第一の実施の形態の動作について図面を参照して説明する。
はじめに、本発明の第一の実施の形態におけるディスパッチルールの設定動作について説明する。図3は、本発明の第一の実施の形態におけるディスパッチルールの設定動作を示すシーケンス図である。
はじめに、各アプリケーションサーバ160がイベント201の処理を要求するローカルシステム100は予め決められており、各アプリケーションサーバ160に設定されているものとする。同様に、各イベント発生源150がイベント201を送信する外部ディスパッチャ140も予め決められており、各イベント発生源150に設定されているものとする。アプリケーションサーバ160におけるローカルシステム100に関する上記の設定は、管理者が直接ローカルシステム100を指定することにより設定してもよいし、各アプリケーションサーバ160が、ネットワーク上の距離に基づいて、近くのローカルシステム100を検出して設定してもよい。同様に、イベント発生源150における外部ディスパッチャ140に関する上記の設定は、管理者が直接外部ディスパッチャ140を指定することにより設定してもよいし、各イベント発生源150が、ネットワーク上の距離に基づいて、近くの外部ディスパッチャ140を検出して設定してもよい。
イベント201の処理を要求するアプリケーションサーバ160は、処理ルール202をローカルシステム100に送信する(ステップS101)。
ここで、処理ルール202は、図5に示すように、処理ルール識別子R11、R12、R21、R22と、各ルール識別子と関連付けた、ローカルシステム100が処理するイベント201の条件を指定したイベント条件、及び当該イベント条件に合致したイベント201に対してローカルシステム100が行う処理内容とを含む。
図5は、ローカルシステム100(LS1)が処理ルール202(R11、R12)、ローカルシステム100(LS2)が処理ルール202(R21、R22)を受信した場合の例を示している。図5の例では、ローカルシステム100(LS1)の処理ルール202(PR11)に、イベント条件としてイベント発生源種別(ここではRFID)と検出情報(RFIDタグのTagID=1~3)とが指定されている。また、このイベント条件に対する処理サーバ120の処理内容として、″アプリケーションサーバAS11へ通知″が指定されている。
ローカルシステム100が処理ルール202を受信すると、ルール分配部110の処理ルール設定部111は、処理ルール分配アルゴリズム記憶部112に記憶された処理ルール分配アルゴリズムと処理ルール設定情報記憶部113に記憶された処理ルール設定情報211とを参照し、当該処理ルール202を処理する処理サーバ120を決定する(ステップS102)。ローカルシステム100は決定した処理サーバ120に処理ルール202を設定する(ステップS103)。処理ルール設定部111は、処理ルール設定情報211を更新し、更新された処理ルール設定情報211を処理ルール設定情報記憶部113に保存する(ステップS104)。
ここで、処理ルール分配アルゴリズムとしては、例えば、処理内容に応じて処理サーバ120の負荷が均等となるように処理ルール202を振り分ける方法や、特許第4161998号公報に記載されているように、イベント条件が同一の処理ルール202を同一の処理サーバ120に振り分ける方法がある。
また、処理ルール設定情報211は、図6に示すように、処理サーバ識別子と設定された処理ルール202の識別子とを含む。
図6は、ローカルシステム100(LS1)の処理サーバ(PS11、PS12)、及びローカルシステム100(LS2)の処理サーバ(PS21、PS22)に設定された処理ルール202の例を示している。図6の例では、ローカルシステム100(LS1)の処理サーバ120(PS11)に処理ルール202(PR11)が設定されている。この設定により、処理サーバ120(PS11)は、処理ルール202(R11)を処理することになる。
ディスパッチルール設定部114は、処理ルール202を設定した処理サーバ120を当該処理ルール202のイベント条件に合致するイベント201の転送先としたローカルディスパッチルール203を生成する(ステップS105)。
ローカルディスパッチルール203は、図7に示すように、ローカルディスパッチルール識別子DRL11、DRL12、DRL21、DRL22と、各ルール識別子と関連付けた、イベント条件、及び転送先の処理サーバ120の識別子とを含む。
図7は、ローカルシステム100(LS1)が生成するローカルディスパッチルール203(DRL11、DRL12)、及びローカルシステム100(LS2)が生成するローカルディスパッチルール203(DRL21、DRL22)の例を示している。図7の例では、ローカルシステム100(LS1)のローカルディスパッチルール203(DRL11)として、イベント条件に処理ルール202(PR11)のイベント条件(イベント発生源種別:RFID、検出情報:TagID=1~3)、転送先に処理ルール202(PR11)を処理する処理サーバ120の識別子(PS11)が設定されている。
ディスパッチルール設定部114は、生成したローカルディスパッチルール203をローカルディスパッチャ130に設定する(ステップS106)。
ディスパッチルール設定部114は、複数の処理ルール202のイベント条件を集約した集約イベント条件を生成し、外部イベント条件を当該集約イベント条件とし、自ローカルシステム100を当該外部イベント条件に合致するイベント201の転送先とした外部ディスパッチルール204(集約あり)を生成する(ステップS107)。
ここで、イベント条件の集約方法としては、例えば、イベント条件が、検出情報の値で指定されている場合、複数のイベント条件を含むような値の範囲を、集約イベント条件としてもよい。
例えば、ローカルシステム100(LS1)に、図5のような処理ルール202(PR11、PR12)が設定されている場合、PR11のイベント条件(RFID、TagID=1~3)、PR12のイベント条件(RFID、TagID=5~7)を集約し、集約イベント条件(RFID、TagID=1~7)を生成することができる。
また、イベント条件が1.1、1.3、2.1、2.5のように階層化された値で指定されている場合、複数のイベント条件に共通な階層の値を集約イベント条件としてもよい。この場合、イベント条件1.1、1.3、2.1、2.5に対して、集約イベント条件1・*、2.*(*は任意の数)を生成することができる。
外部ディスパッチルール204は、図8に示すように、外部ディスパッチルール識別子DRG11、DRG12、DRG21、DRG22と、各ルール識別子と関連付けた、外部イベント条件、及びイベント201の転送先となるローカルシステム100の識別子とを含む。
図8は、ローカルシステム100(LS1)が生成する外部ディスパッチルール204(DRG11、DRG12)、及びローカルシステム100(LS2)が生成するディスパッチルール204(DRG21、DRG22)の例を示している。図8の例では、ローカルシステム100(LS1)が生成する外部ディスパッチルール204(DRG11)の外部イベント条件には、図5の処理ルール202(PR11、PR12)のイベント条件を集約した集約イベント条件(RFID、TagID=1~7)が設定され、転送先には、ローカルシステム100(LS1)の識別子が設定されている。また、ローカルシステム100(LS2)が生成する外部ディスパッチルール204(DRG21)の外部イベント条件には、図5の処理ルール202(PR21、PR22)のイベント条件を集約した集約イベント条件(RFID、TagID=5~11)が設定され、転送先には、ローカルシステム100(LS2)の識別子が設定されている。
ディスパッチルール設定部114は、生成した外部ディスパッチルール204(集約あり)を外部ディスパッチャ140に設定する(ステップS108)。
例えば、ローカルシステム100(LS1、LS2)が、外部ディスパッチルール204(DRG11、DRG21)を外部ディスパッチャ140にそれぞれ設定した場合、各外部ディスパッチャ140には、図9のような外部ディスパッチルール204が設定される。
次に、本発明の第一の実施の形態におけるイベント処理の動作について説明する。図4は、本発明の第一の実施の形態におけるイベント処理の動作を示すシーケンス図である。
イベント発生源150が検出対象の情報を検出すると、イベント発生源150は検出した情報をイベント201として外部ディスパッチャ140に送信する(ステップS201)。
イベント201は、図10に示すように、イベント識別子131、イベント発生源種別、イベント発生源識別子、検出時刻、検出情報等のイベント属性情報を含むことができる。図10の例では、イベント201(I31)のイベント属性情報として、イベント発生源種別:RFID、イベント発生源識別子:G3、検出情報:TagID=6が設定されている。
外部ディスパッチャ140は、イベント201を受信すると、イベント201に含まれるイベント属性情報が外部ディスパッチルール204の外部イベント条件のいずれかに合致するかどうかを検索する(ステップS202)。合致する外部イベント条件がある場合、外部ディスパッチャ140は、外部ディスパッチルール204を参照し、当該外部イベント条件に対応するローカルシステム100にイベント201を転送する(ステップS203、S204)。
例えば、外部ディスパッチャ140(GD2)がイベント201(I31)を受信した場合、イベント201(I31)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=6)は、外部ディスパッチルール204(DRG11、DRG21)の外部イベント条件に合致するため、外部ディスパッチャ140(GD2)は、イベント201(I31)をローカルシステム100(LS1)とローカルシステム100(LS2)とに転送する。
また、外部ディスパッチャ140(GD2)がイベント201(I41)を受信した場合、イベント201(I41)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=4)は、外部ディスパッチルール204(DRG11)の外部イベント条件に合致するため、外部ディスパッチャ140(GD2)は、イベント201(I41)をローカルシステム100(LS1)に転送する。
ローカルシステム100がイベント201を受信すると、ローカルディスパッチャ130は、イベント201に含まれるイベント属性情報がローカルディスパッチルール203のイベント条件のいずれかに合致するかどうかを検索する(ステップS211、S221)。合致するイベント条件がある場合、ローカルディスパッチャ130は、ローカルディスパッチルール203を参照し、当該イベント条件に対応する処理サーバ120にイベント201を転送する(ステップS212、S222)。ここで、合致するイベント条件がない場合は、イベント201を廃棄する。
例えば、ローカルシステム100(LS1)がイベント201(I31)を受信した場合、イベント201(I31)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=6)は、ローカルディスパッチルール203(DRL12)のイベント条件に合致するため、ローカルシステム100(LS1)のローカルディスパッチャ130は、イベント201(I31)を処理サーバ120(PS12)に転送する。同様に、ローカルシステム100(LS2)がイベント201(I31)を受信した場合、イベント201(I31)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=6)は、ローカルディスパッチルール203(DRL21)のイベント条件に合致するため、ローカルシステム100(LS2)のローカルディスパッチャ130は、イベント201(I31)を処理サーバ120(PS21)に転送する。
また、ローカルシステム100(LS1)がイベント201(I41)を受信した場合、イベント201(I41)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=4)は、ローカルディスパッチルール203のイベント条件に合致しないため、ローカルシステム100(LS1)のローカルディスパッチャ130は、イベント201(I41)を廃棄する。
ローカルシステム100の処理サーバ120がイベント201を受信すると、処理サーバ120は、処理ルール202に従ってイベント201を処理し(ステップS213、S223)、アプリケーションサーバ160へイベント処理結果205を送信する(ステップS214、S224)。
例えば、ローカルシステム100(LS1)の処理サーバ120(PS12)は、イベント処理結果205として、イベント201(I31)をアプリケーションサーバ160(AS12)に送信する。また、ローカルシステム100(LS2)の処理サーバ120(PS21)は、イベント処理結果205として、イベント201(I31)をアプリケーションサーバ160(AS21)に送信する。
以上、図1に示したように、ローカルシステム100配下のイベント発生源150から送信されたイベント201(I31)(TagID=6)は、ローカルシステム100(LS1、LS2)に転送され、イベント処理結果205がアプリケーションサーバ160(AS12、21)へ送信される。
以上により、本発明の第一の実施の形態の動作が完了する。
次に、図11に第一の実施の形態の特徴的な構成を示す。
イベント処理システムは、イベント発生源150からイベント201を受信する複数の外部ディスパッチャ140と、アプリケーションサーバ160へイベント処理結果205を送信する複数のローカルシステム100とを備える。
ここで、ローカルシステム100は、アプリケーションサーバ160から処理するイベント201の条件を示すイベント条件を含む処理ルール202を受信し、複数のイベント条件を集約した集約イベント条件を生成する。ローカルシステム100は、当該集約イベント条件を外部イベント条件とし、自ローカルシステムを当該外部イベント条件に合致するイベント201の転送先とした外部ディスパッチルール204を生成し、当該外部ディスパッチルール204を外部ディスパッチャ140に設定する。そして、ローカルシステム100は、イベント201を外部ディスパッチャ140から受信した場合、処理ルール202に従って当該イベント201を処理し、イベント処理結果205を、当該処理ルール202の送信元のアプリケーションサーバ160に通知する。
また、外部ディスパッチャ140は、イベント201をイベント発生源150から受信した場合、外部ディスパッチルール204を参照し、当該イベント201に合致する外部イベント条件に対応した転送先のローカルシステム100に当該イベント201を転送する。
本発明の第一の実施の形態によれば、イベント処理システムにおいて、処理ルールの増加に伴うディスパッチルールの増大を抑制することができる。その理由は、ローカルシステム100が、複数のイベント条件を集約した集約イベント条件を外部イベント条件とし、自ローカルシステムを当該外部イベント条件に合致するイベント201の転送先とした外部ディスパッチルール204を外部ディスパッチャ140に設定するためである。
(第二の実施の形態)
次に、本発明の第二の実施の形態について図面を参照して詳細に説明する。
本発明の第二の実施の形態では、ローカルディスパッチャ130において廃棄されるイベント201の数が多い場合は、イベント条件の集約を中止し、外部ディスパッチャ140がローカルシステム100において廃棄されるイベント201を当該ローカルシステム100に転送することを抑止する。
本発明の第二の実施の形態においては、ローカルシステム100のローカルディスパッチャ130が、廃棄されるイベント数をカウントし、当該廃棄されるイベント数が所定の値を超えると、外部ディスパッチルール204を再設定する点において、本発明の第一の実施の形態と異なる。
なお、本発明の第二の実施の形態において、第一の実施の形態と同一の符号を有する構成要素については、特に説明の無い限り、第一の実施の形態と同一であるものとする。
図12に本発明の第二の実施の形態におけるイベント処理システム全体の構成図を、図13に本発明の第二の実施の形態におけるローカルシステム100の構成を示す。図13を参照すると、ローカルシステム100のローカルディスパッチャ130は、イベント201の廃棄数をカウントするイベント廃棄カウンタ115を更に備える。
ローカルディスパッチャ130は、ローカルディスパッチルール203に合致せず廃棄したイベント201の数をイベント廃棄カウンタ115にてカウントする。また、イベント廃棄カウンタ115の内容を定期的にディスパッチ統計情報206としてディスパッチルール設定部114に送信する。
ディスパッチルール設定部114は、ローカルディスパッチャ130から受信したイベント廃棄カウンタ115の値を参照し、イベント201の廃棄数が所定の閾値を超えていた場合、イベント条件の集約を中止し、外部ディスパッチルール204を再設定する。
次に、本発明の第二の実施の形態の動作について説明する。
本発明の第二の実施の形態におけるディスパッチルールの設定動作については、本発明の第一の実施の形態(図3)と同様となる。ここでは、各外部ディスパッチャ140には、本発明の第一の実施の形態と同様に、図5の処理ルール202に基づいて、図9のような外部ディスパッチルール204が設定されているものとする。
次に、本発明の第二の実施の形態におけるイベント処理の動作について説明する。図14は、本発明の第二の実施の形態におけるイベント処理の動作を示すシーケンス図である。
イベント発生源150がイベント201を送信してから、ローカルディスパッチャ130がローカルディスパッチルール203のイベント条件を検索するまでの処理(ステップS301からS311)は、第一の実施の形態(ステップS201からS211)と同様となる。
ステップS311において、ローカルディスパッチルール203のイベント条件にイベント201のイベント属性情報と合致するイベント条件がない場合、ローカルディスパッチャ130は、イベント201を廃棄する。この場合、ローカルディスパッチャ130は、イベント廃棄カウンタ115に1を加算する(ステップS312)。
例えば、ローカルシステム100(LS1)がイベント201(I41)を受信した場合、イベント201(I41)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=4)は、ローカルディスパッチルール203のイベント条件に合致しないため、ローカルディスパッチャ130は、イベント201(I41)を廃棄し、イベント廃棄カウンタ115に1を加算する。
なお、イベント廃棄カウンタ115の値は、所定の周期で0にリセットされるものとする。
ローカルディスパッチャ130は、所定の周期でイベント廃棄カウンタ115の値をディスパッチ統計情報206として、ルール分配部110のディスパッチルール設定部114に送信する(ステップS313)。
ディスパッチルール設定部114は、ローカルディスパッチャ130から受信したイベント廃棄カウンタ115の値を参照し、所定の廃棄数閾値と比較する(ステップS314)。
ここで、イベント廃棄カウンタ115の値が廃棄数閾値を超えていた場合、ディスパッチルール設定部114は、各処理ルール202のイベント条件(集約していないイベント条件)を外部イベント条件とし、自ローカルシステム100を当該外部イベント条件に合致するイベント201の転送先とした外部ディスパッチルール204(集約なし)を生成する(ステップS315)。
例えば、ローカルシステム100(LS1)は、図5の処理ルール202(PR11、PR12)のイベント条件を外部イベント条件に設定し、転送先にローカルシステム100(LS1)の識別子を設定した、図15の外部ディスパッチルール204(DRG12、DRG13)を再生成する。
ディスパッチルール設定部114は、生成した外部ディスパッチルール204(集約なし)を外部ディスパッチャ140に設定する(ステップS316)。これにより、ローカルディスパッチャ130にて廃棄されていたイベント201と同じイベント属性情報を有するイベント201は、外部ディスパッチルール204の外部イベント条件に合致しないため、外部ディスパッチャ140にて廃棄される(ステップS317、S318)。
例えば、ローカルシステム100(LS1)が、外部ディスパッチルール204(DRG12、DRG13)を外部ディスパッチャ140に設定した場合、各外部ディスパッチャ140には、図16のような外部ディスパッチルール204が設定される。これにより、例えば、外部ディスパッチャ140(GD2)がイベント201(I41)と同じイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=4)のイベント201を受信した場合、当該イベント201のイベント属性情報は、外部ディスパッチルール204の外部イベント条件に合致せず、外部ディスパッチャ140(GD2)は、当該イベント201を廃棄する。
ディスパッチルール設定部114は、外部ディスパッチルール204(集約なし)を設定した後の経過時間をカウントし(ステップS319)、所定の時間経過すると、再度、複数の処理ルール202のイベント条件を集約した集約イベント条件を生成し、集約イベント条件を外部イベント条件とした外部ディスパッチルール204(集約あり)を生成する(ステップS320)。ディスパッチルール設定部114は、生成した外部ディスパッチルール204(集約あり)を外部ディスパッチャ140に設定する(ステップS321)。
以上により、本発明の第二の実施の形態の動作が完了する。
本発明の第二の実施の形態によれば、外部ディスパッチャがイベント条件を集約した外部ディスパッチルールに基づきローカルシステムにイベントを転送するイベント処理システムにおいて、外部ディスパッチャによる無駄なイベント転送を減らすことができる。その理由は、ローカルシステム100が、イベント条件のいずれにも合致しないイベント201の数が所定の閾値を超えた場合、イベント条件の集約を中止し、イベント条件のそれぞれを外部イベント条件とした外部ディスパッチルール204を外部ディスパッチャ140に再設定するためである。
また、本発明の第二の実施の形態によれば、外部ディスパッチャがイベント条件を集約した外部ディスパッチルールに基づきローカルシステムにイベントを転送するイベント処理システムにおいて、外部ディスパッチャによる無駄なイベント転送が多発する期間を除いて、ディスパッチルールの数を小さくするように、ディスパッチルールの数を調整できる。その理由は、ローカルシステム100が、イベント条件の集約をしない外部ディスパッチルール204を外部ディスパッチャ140に再設定した後、所定の時間経過した場合、集約イベント条件を外部イベント条件とした外部ディスパッチルール204を外部ディスパッチャ140に再設定するためである。
本発明の効果は、イベント処理システムにおいて、処理ルールの増加に伴うディスパッチルールの増大を抑制することができることである。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2009年3月17日に出願された日本出願特願2009−063720を基礎とする優先権を主張し、その開示の全てをここに取り込む。 (First embodiment)
Next, a first embodiment of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a configuration diagram of the entire event processing system according to the first embodiment of the present invention. Referring to FIG. 1, the first embodiment of the event processing system of the present invention includes a plurality oflocal systems 100 installed on a network (not shown), a plurality of external dispatchers 140, an event source 150, and An application server 160 is provided.
Here, thelocal system 100 has two local systems with identifiers LS1 and LS2, respectively. The plurality of external dispatchers 140 have four dispatchers with identifiers GD1 to GD4, respectively. The event generation source 150 has eight event generation sources with identifiers G1 to G8, respectively. The application server 160 has six application servers with identifiers AS11, AS12, AS13, AS21, AS22, and AS23, respectively.
In each drawing and the following description, the symbol in parentheses following the reference number indicates an identifier. For example, the local system 100 (LS1) indicates the local system with the identifier LS1, and the application server 160 (AS11) indicates the application server with the identifier AS11. This is the same for the processing rules.
Theevent generation source 150 transmits the detected information to the local system 100 as an event 201. The event generation source 150 may be anything as long as it can detect information and transmit it to the local system 100.
Examples of theevent generation source 150 include a non-contact or contact-type information reading device such as an RFID reader and a magnetic card reader, and various sensors for detecting temperature, atmospheric pressure, acceleration, and the like.
In addition to “information detected by theevent generation source 150 at a certain time (for example, an identifier of an RFID tag detected at a certain time, temperature, atmospheric pressure, acceleration, etc.)” in the event 201 transmitted by the event generation source 150, Attributes such as “type of information detected by the event source (event source type)”, “identifier of the event source (event source identifier)”, “related information such as detection time of detected information”, etc. It is included as information (event attribute information).
When receiving theevent 201 from the event generation source 150, the external dispatcher 140 refers to the external dispatch rule 204 and transfers the event 201 to the local system 100.
Theapplication server 160 is a server on which an application that performs various types of information processing on the event 201 detected in the event generation source 150 operates. The application server 160 performs various types of information processing on the results of processing performed in the local system 100 for the event 201 detected by the event generation source 150. In addition, the application server 160 localizes an event condition specifying the condition of the event 201 to be processed by the local system 100 and a processing rule 202 including the processing content performed by the local system 100 for the event 201 that matches the event condition. To system 100.
Thelocal system 100 generates an external dispatch rule 204 based on the processing rule 202 received from the application server 160 and sets the external dispatch rule 204 in the external dispatcher 140. When the local system 100 receives the event 201 from the external dispatcher 140, the local system 100 processes the event 201 according to the processing rule 202, and transmits the processing result (event processing result 205) of the event 201 to the application server 160.
Thelocal system 100 further includes a rule distribution unit 110, at least one processing server 120, and at least one local dispatcher 130. FIG. 1 shows a case where the local system 100 includes a plurality of processing servers 120 and one local dispatcher 130. Here, the processing server 102 has six processing servers with identifiers PS11, PS12, PS13, PS21, PS22, and PS23, respectively. The processing server 202 (PS11, PS12, PS13) is arranged in the local system 100 (LS1), and the processing server 202 (PS21, PS22, PS23) is arranged in the local system 100 (LS2).
Therule distribution unit 110 of the local system 100 performs setting of the processing rule 202 to the processing server 120, generation of the local dispatch rule 203, and generation of the external dispatch rule 204. The processing server 120 processes the event 201 according to the processing rule 202. When the local dispatcher 130 receives the event 201 from the external dispatcher 140, the local dispatcher 130 refers to the local dispatch rule 203 and transfers the event 201 to the processing server 120 of the local system 100.
FIG. 2 shows the configuration of thelocal system 100 in the first embodiment of the present invention. The rule distribution unit 110 of the local system 100 further includes a processing rule setting unit 111, a processing rule distribution algorithm storage unit 112, a processing rule setting information storage unit 113, and a dispatch rule setting unit 114.
When the processingrule setting unit 111 receives the processing rule 202 from the application server 160, the processing rule setting unit 111 determines the processing server 120 that processes the processing rule 202 and sets the processing rule 202. The processing rule distribution algorithm storage unit 112 stores and manages a processing rule distribution algorithm (not shown) for determining the processing server 120 that processes the processing rule 202. The processing rule setting information storage unit 113 stores and manages the setting result of the processing rule 202 as processing rule setting information 211. The dispatch rule setting unit 114 generates a local dispatch rule 203 and sets it in the local dispatcher 130. In addition, the dispatch rule setting unit 114 generates an external dispatch rule 204 and sets it in the external dispatcher 140.
Note that therule distribution unit 110, the processing server 120, the local dispatcher 130, the external dispatcher 140, the event generation source 150, and the application server 160 may be information processing devices that operate under program control. Some of these may be configured as one device.
Next, the operation of the first embodiment of the present invention will be described with reference to the drawings.
First, the dispatch rule setting operation in the first embodiment of the present invention will be described. FIG. 3 is a sequence diagram showing a dispatch rule setting operation in the first embodiment of the present invention.
First, it is assumed that thelocal system 100 from which each application server 160 requests the processing of the event 201 is determined in advance and set in each application server 160. Similarly, it is assumed that the external dispatcher 140 from which each event generation source 150 transmits the event 201 is also determined in advance and set to each event generation source 150. The above-described setting for the local system 100 in the application server 160 may be set by an administrator directly specifying the local system 100, or each application server 160 may be set to a nearby local system based on the distance on the network. 100 may be detected and set. Similarly, the above setting regarding the external dispatcher 140 at the event source 150 may be set by the administrator directly specifying the external dispatcher 140, or each event source 150 may be set based on the distance on the network. Alternatively, a nearby external dispatcher 140 may be detected and set.
Theapplication server 160 that requests processing of the event 201 transmits the processing rule 202 to the local system 100 (step S101).
Here, as shown in FIG. 5, theprocessing rule 202 includes processing rule identifiers R11, R12, R21, and R22, event conditions that specify the conditions of the event 201 that the local system 100 processes, associated with each rule identifier, And processing performed by the local system 100 for the event 201 that matches the event condition.
FIG. 5 shows an example in which the local system 100 (LS1) receives the processing rule 202 (R11, R12) and the local system 100 (LS2) receives the processing rule 202 (R21, R22). In the example of FIG. 5, the event generation source type (RFID here) and detection information (RFID tag Tag ID = 1 to 3) are specified as event conditions in the processing rule 202 (PR11) of the local system 100 (LS1). ing. Further, “notify to application server AS11” is designated as the processing contents of theprocessing server 120 for this event condition.
When thelocal system 100 receives the processing rule 202, the processing rule setting unit 111 of the rule distribution unit 110 stores the processing rule distribution algorithm stored in the processing rule distribution algorithm storage unit 112 and the processing rule setting information storage unit 113. With reference to the processing rule setting information 211, the processing server 120 that processes the processing rule 202 is determined (step S102). The local system 100 sets the processing rule 202 in the determined processing server 120 (step S103). The processing rule setting unit 111 updates the processing rule setting information 211, and stores the updated processing rule setting information 211 in the processing rule setting information storage unit 113 (step S104).
Here, as the processing rule distribution algorithm, for example, a method of distributing the processing rules 202 so that the load of theprocessing server 120 is equalized according to the processing content, or an event as described in Japanese Patent No. 4161998 is disclosed. There is a method of distributing processing rules 202 having the same conditions to the same processing server 120.
Further, as shown in FIG. 6, the processing rule setting information 211 includes a processing server identifier and an identifier of theset processing rule 202.
FIG. 6 shows an example of the processing rules 202 set in the processing servers (PS11, PS12) of the local system 100 (LS1) and the processing servers (PS21, PS22) of the local system 100 (LS2). In the example of FIG. 6, the processing rule 202 (PR11) is set in the processing server 120 (PS11) of the local system 100 (LS1). With this setting, the processing server 120 (PS11) processes the processing rule 202 (R11).
The dispatchrule setting unit 114 generates a local dispatch rule 203 with the processing server 120 set with the processing rule 202 as a transfer destination of the event 201 that matches the event condition of the processing rule 202 (step S105).
As shown in FIG. 7, thelocal dispatch rule 203 includes local dispatch rule identifiers DRL11, DRL12, DRL21, and DRL22, an event condition associated with each rule identifier, and an identifier of the processing server 120 that is a transfer destination.
FIG. 7 shows an example of the local dispatch rule 203 (DRL11, DRL12) generated by the local system 100 (LS1) and the local dispatch rule 203 (DRL21, DRL22) generated by the local system 100 (LS2). In the example of FIG. 7, as the local dispatch rule 203 (DRL11) of the local system 100 (LS1), the event condition (event generation source type: RFID, detection information: TagID = 1-3) ), The identifier (PS11) of theprocessing server 120 that processes the processing rule 202 (PR11) is set as the transfer destination.
The dispatchrule setting unit 114 sets the generated local dispatch rule 203 in the local dispatcher 130 (step S106).
The dispatchrule setting unit 114 generates an aggregate event condition obtained by aggregating the event conditions of the plurality of processing rules 202, sets the external event condition as the aggregate event condition, and sets the local local system 100 for the event 201 that matches the external event condition. An external dispatch rule 204 (with aggregation) as a transfer destination is generated (step S107).
Here, as an event condition aggregation method, for example, when an event condition is specified by a value of detection information, a range of values including a plurality of event conditions may be set as the aggregation event condition.
For example, when the processing rule 202 (PR11, PR12) as shown in FIG. 5 is set in the local system 100 (LS1), the PR11 event condition (RFID, TagID = 1 to 3), the PR12 event condition (RFID , TagID = 5 to 7) can be aggregated to generate an aggregate event condition (RFID, TagID = 1 to 7).
In addition, when the event condition is specified by a hierarchical value such as 1.1, 1.3, 2.1, 2.5, the value of the hierarchy common to a plurality of event conditions is used as the aggregate event condition Also good. In this case, for the event conditions 1.1, 1.3, 2.1, 2.5, the aggregated event conditions 1 *, 2. * (* Is an arbitrary number) can be generated.
As shown in FIG. 8, theexternal dispatch rule 204 includes the external dispatch rule identifiers DRG11, DRG12, DRG21, and DRG22, the external event condition associated with each rule identifier, and the identifier of the local system 100 that is the transfer destination of the event 201. Including.
FIG. 8 shows an example of the external dispatch rule 204 (DRG11, DRG12) generated by the local system 100 (LS1) and the dispatch rule 204 (DRG21, DRG22) generated by the local system 100 (LS2). In the example of FIG. 8, the external event condition of the external dispatch rule 204 (DRG11) generated by the local system 100 (LS1) is an aggregated event condition that aggregates the event conditions of the processing rule 202 (PR11, PR12) of FIG. RFID, TagID = 1 to 7) is set, and the identifier of the local system 100 (LS1) is set as the transfer destination. Further, the external event condition of the external dispatch rule 204 (DRG 21) generated by the local system 100 (LS2) includes an aggregate event condition (RFID, TagID =) that aggregates the event conditions of the processing rule 202 (PR21, PR22) of FIG. 5 to 11) are set, and the identifier of the local system 100 (LS2) is set as the transfer destination.
The dispatchrule setting unit 114 sets the generated external dispatch rule 204 (with aggregation) in the external dispatcher 140 (step S108).
For example, when the local system 100 (LS1, LS2) sets the external dispatch rule 204 (DRG11, DRG21) in theexternal dispatcher 140, the external dispatch rule 204 as shown in FIG. 9 is set in each external dispatcher 140. The
Next, the event processing operation in the first embodiment of the present invention will be described. FIG. 4 is a sequence diagram showing an event processing operation in the first embodiment of the present invention.
When theevent generation source 150 detects information to be detected, the event generation source 150 transmits the detected information to the external dispatcher 140 as an event 201 (step S201).
As shown in FIG. 10, theevent 201 can include event attribute information such as an event identifier 131, an event generation source type, an event generation source identifier, a detection time, and detection information. In the example of FIG. 10, event generation source type: RFID, event generation source identifier: G3, and detection information: TagID = 6 are set as event attribute information of event 201 (I31).
When receiving theevent 201, the external dispatcher 140 searches whether or not the event attribute information included in the event 201 matches any of the external event conditions of the external dispatch rule 204 (step S202). If there is a matching external event condition, the external dispatcher 140 refers to the external dispatch rule 204 and transfers the event 201 to the local system 100 corresponding to the external event condition (steps S203 and S204).
For example, when the external dispatcher 140 (GD2) receives the event 201 (I31), the event attribute information (event source type: RFID, detection information: TagID = 6) of the event 201 (I31) is stored in the external dispatch rule 204 ( The external dispatcher 140 (GD2) transfers the event 201 (I31) to the local system 100 (LS1) and the local system 100 (LS2) in order to meet the external event conditions of the DRG11 and DRG21).
When the external dispatcher 140 (GD2) receives the event 201 (I41), the event attribute information (event source type: RFID, detection information: TagID = 4) of the event 201 (I41) is stored in the external dispatch rule 204 ( In order to meet the external event condition of the DRG 11), the external dispatcher 140 (GD2) transfers the event 201 (I41) to the local system 100 (LS1).
When thelocal system 100 receives the event 201, the local dispatcher 130 searches whether the event attribute information included in the event 201 matches any of the event conditions of the local dispatch rule 203 (steps S211 and S221). If there is a matching event condition, the local dispatcher 130 refers to the local dispatch rule 203 and transfers the event 201 to the processing server 120 corresponding to the event condition (steps S212 and S222). If there is no matching event condition, the event 201 is discarded.
For example, when the local system 100 (LS1) receives the event 201 (I31), the event attribute information (event source type: RFID, detection information: TagID = 6) of the event 201 (I31) is the local dispatch rule 203 ( In order to meet the event condition of the DRL 12), thelocal dispatcher 130 of the local system 100 (LS1) transfers the event 201 (I31) to the processing server 120 (PS12). Similarly, when the local system 100 (LS2) receives the event 201 (I31), the event attribute information (event source type: RFID, detection information: TagID = 6) of the event 201 (I31) is the local dispatch rule 203. Since the event condition of (DRL21) is met, the local dispatcher 130 of the local system 100 (LS2) transfers the event 201 (I31) to the processing server 120 (PS21).
When the local system 100 (LS1) receives the event 201 (I41), the event attribute information (event source type: RFID, detection information: TagID = 4) of the event 201 (I41) Since the event condition is not met, thelocal dispatcher 130 of the local system 100 (LS1) discards the event 201 (I41).
When theprocessing server 120 of the local system 100 receives the event 201, the processing server 120 processes the event 201 according to the processing rule 202 (steps S213 and S223), and transmits the event processing result 205 to the application server 160 (step S214, S224).
For example, the processing server 120 (PS12) of the local system 100 (LS1) transmits the event 201 (I31) to the application server 160 (AS12) as theevent processing result 205. Further, the processing server 120 (PS21) of the local system 100 (LS2) transmits the event 201 (I31) to the application server 160 (AS21) as the event processing result 205.
As described above, the event 201 (I31) (TagID = 6) transmitted from theevent generation source 150 under the local system 100 is transferred to the local system 100 (LS1, LS2) as shown in FIG. 205 is transmitted to the application server 160 (AS12, 21).
Thus, the operation of the first embodiment of the present invention is completed.
Next, FIG. 11 shows a characteristic configuration of the first embodiment.
The event processing system includes a plurality ofexternal dispatchers 140 that receive the event 201 from the event generation source 150 and a plurality of local systems 100 that transmit the event processing result 205 to the application server 160.
Here, thelocal system 100 receives the processing rule 202 including the event condition indicating the condition of the event 201 to be processed from the application server 160, and generates an aggregate event condition in which a plurality of event conditions are aggregated. The local system 100 uses the aggregate event condition as an external event condition, generates an external dispatch rule 204 with the local system as a transfer destination of the event 201 that matches the external event condition, and uses the external dispatch rule 204 as the external dispatcher 140. Set to. When the local system 100 receives the event 201 from the external dispatcher 140, the local system 100 processes the event 201 according to the processing rule 202, and notifies the event processing result 205 to the application server 160 that is the transmission source of the processing rule 202.
When theexternal dispatcher 140 receives the event 201 from the event generation source 150, the external dispatcher 140 refers to the external dispatch rule 204 and sends the event 201 to the local system 100 that is a transfer destination corresponding to the external event condition that matches the event 201. Forward.
According to the first embodiment of this invention, in the event processing system, it is possible to suppress an increase in dispatch rules accompanying an increase in processing rules. The reason for this is that thelocal system 100 sets an external event rule that is a consolidated event condition obtained by aggregating a plurality of event conditions as an external event condition, and sets an external dispatch rule 204 as a transfer destination of an event 201 that matches the external event condition. This is because it is set to 140.
(Second embodiment)
Next, a second embodiment of the present invention will be described in detail with reference to the drawings.
In the second embodiment of the present invention, when the number ofevents 201 discarded in the local dispatcher 130 is large, the aggregation of event conditions is stopped, and the event 201 discarded by the external dispatcher 140 in the local system 100 is Transfer to the local system 100 is suppressed.
In the second embodiment of the present invention, thelocal dispatcher 130 of the local system 100 counts the number of events to be discarded, and when the number of events to be discarded exceeds a predetermined value, the external dispatch rule 204 is restarted. In the point to set, it differs from 1st embodiment of this invention.
In the second embodiment of the present invention, components having the same reference numerals as those in the first embodiment are the same as those in the first embodiment unless otherwise specified.
FIG. 12 shows the configuration of the entire event processing system according to the second embodiment of the present invention, and FIG. 13 shows the configuration of thelocal system 100 according to the second embodiment of the present invention. Referring to FIG. 13, the local dispatcher 130 of the local system 100 further includes an event discard counter 115 that counts the number of events 201 discarded.
Thelocal dispatcher 130 counts the number of events 201 that do not match the local dispatch rule 203 and are discarded by the event discard counter 115. Further, the contents of the event discard counter 115 are periodically transmitted to the dispatch rule setting unit 114 as dispatch statistical information 206.
The dispatchrule setting unit 114 refers to the value of the event discard counter 115 received from the local dispatcher 130. When the discard number of the event 201 exceeds a predetermined threshold, the event rule aggregation is stopped, and the external dispatch rule 204 To reset.
Next, the operation of the second embodiment of the present invention will be described.
The dispatch rule setting operation in the second embodiment of the present invention is the same as that in the first embodiment (FIG. 3) of the present invention. Here, as in the first embodiment of the present invention, it is assumed that theexternal dispatch rule 204 as shown in FIG. 9 is set in each external dispatcher 140 based on the processing rule 202 of FIG. .
Next, the event processing operation in the second embodiment of the present invention will be described. FIG. 14 is a sequence diagram showing an event processing operation according to the second embodiment of the present invention.
Processing from when theevent generation source 150 transmits the event 201 to when the local dispatcher 130 searches for the event condition of the local dispatch rule 203 (steps S301 to S311) is the first embodiment (steps S201 to S211). It will be the same.
In step S <b> 311, if there is no event condition that matches the event attribute information of theevent 201 in the event condition of the local dispatch rule 203, the local dispatcher 130 discards the event 201. In this case, the local dispatcher 130 adds 1 to the event discard counter 115 (step S312).
For example, when the local system 100 (LS1) receives the event 201 (I41), the event attribute information (event source type: RFID, detection information: TagID = 4) of the event 201 (I41) Since the event condition is not met, thelocal dispatcher 130 discards the event 201 (I 41) and adds 1 to the event discard counter 115.
Note that the value of the event discardcounter 115 is reset to 0 at a predetermined cycle.
Thelocal dispatcher 130 transmits the value of the event discard counter 115 as dispatch statistical information 206 to the dispatch rule setting unit 114 of the rule distribution unit 110 at a predetermined cycle (step S313).
The dispatchrule setting unit 114 refers to the value of the event discard counter 115 received from the local dispatcher 130, and compares it with a predetermined discard number threshold value (step S314).
Here, when the value of the event discardcounter 115 exceeds the discard number threshold value, the dispatch rule setting unit 114 sets the event condition (non-aggregated event condition) of each processing rule 202 as an external event condition, and the own local system An external dispatch rule 204 (no aggregation) having 100 as the transfer destination of the event 201 that matches the external event condition is generated (step S315).
For example, the local system 100 (LS1) sets the event condition of the processing rule 202 (PR11, PR12) in FIG. 5 as an external event condition, and sets the identifier of the local system 100 (LS1) as the transfer destination in FIG. The external dispatch rule 204 (DRG12, DRG13) is regenerated.
The dispatchrule setting unit 114 sets the generated external dispatch rule 204 (no aggregation) in the external dispatcher 140 (step S316). As a result, the event 201 having the same event attribute information as the event 201 discarded by the local dispatcher 130 does not match the external event condition of the external dispatch rule 204, and is therefore discarded by the external dispatcher 140 (Step S317, S318).
For example, when the local system 100 (LS1) sets the external dispatch rule 204 (DRG12, DRG13) to theexternal dispatcher 140, the external dispatch rule 204 as shown in FIG. Thereby, for example, when the external dispatcher 140 (GD2) receives the event 201 of the same event attribute information (event generation type: RFID, detection information: TagID = 4) as the event 201 (I41), the event of the event 201 The attribute information does not match the external event condition of the external dispatch rule 204, and the external dispatcher 140 (GD2) discards the event 201.
The dispatchrule setting unit 114 counts the elapsed time after setting the external dispatch rule 204 (no aggregation) (step S319), and aggregates event conditions of a plurality of processing rules 202 again when a predetermined time elapses. An event condition is generated, and an external dispatch rule 204 (with aggregation) using the aggregate event condition as an external event condition is generated (step S320). The dispatch rule setting unit 114 sets the generated external dispatch rule 204 (with aggregation) in the external dispatcher 140 (step S321).
Thus, the operation of the second embodiment of the present invention is completed.
According to the second embodiment of the present invention, in an event processing system in which an external dispatcher transfers events to a local system based on an external dispatch rule in which event conditions are aggregated, useless event transfer by the external dispatcher can be reduced. . The reason for this is that when the number ofevents 201 that do not match any of the event conditions exceeds a predetermined threshold, the local system 100 stops the aggregation of the event conditions, and external dispatch using each event condition as an external event condition. This is because the rule 204 is reset in the external dispatcher 140.
According to the second embodiment of the present invention, in the event processing system in which an external dispatcher transfers events to a local system based on an external dispatch rule in which event conditions are aggregated, unnecessary event transfer by the external dispatcher occurs frequently. Except for the period, the number of dispatch rules can be adjusted to reduce the number of dispatch rules. The reason is that when thelocal system 100 resets the external dispatch rule 204 that does not aggregate event conditions in the external dispatcher 140 and then a predetermined time has elapsed, the external dispatch rule 204 with the aggregate event condition as the external event condition is set. This is for resetting to the external dispatcher 140.
The effect of the present invention is that an increase in dispatch rules accompanying an increase in processing rules can be suppressed in an event processing system.
While the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2009-063720 for which it applied on March 17, 2009, and takes in those the indications of all here.
次に、本発明の第一の実施の形態について図面を参照して詳細に説明する。
図1は、本発明の第一の実施の形態におけるイベント処理システム全体の構成図である。図1を参照すると、本発明のイベント処理システムの第一の実施の形態は、ネットワーク(図示せず)上に設置される複数のローカルシステム100、複数の外部ディスパッチャ140、イベント発生源150、及びアプリケーションサーバ160を備える。
ここで、ローカルシステム100は、それぞれ識別子LS1、LS2の2つのローカルシステムを有する。また、複数の外部ディスパッチャ140は、それぞれ識別子GD1~GD4の4つのディスパッチャを有する。イベント発生源150は、それぞれ識別子G1~G8の8つのイベント発生源を有する。また、アプリケーションサーバ160は、それぞれ識別子AS11、AS12、AS13、AS21、AS22、AS23の6つのアプリケーションサーバを有する。
なお、各図面および以下の説明において、引用番号に続く()内の符号は、識別子を示すものとする。たとえば、ローカルシステム100(LS1)は、識別子LS1のローカルシステムを示し、アプリケーションサーバ160(AS11)は、識別子AS11のアプリケーションサーバを示す。このような表記は、処理ルールにおいても同様とする。
イベント発生源150は、検出した情報をイベント201としてローカルシステム100に送信する。イベント発生源150は、情報を検出してローカルシステム100に送信できるものであれば、どのようなものでもよい。
イベント発生源150としては、例えば、RFIDリーダや磁気カードリーダ等、非接触あるいは接触型の情報読み取り装置や、温度、気圧、加速度等を検出する各種センサ等がある。
イベント発生源150が送信するイベント201には、「ある時刻でイベント発生源150が検出した情報(例えば、ある時刻において検出されたRFIDタグの識別子や、温度、気圧、加速度等)」に加え、「当該イベント発生源が検出する情報の種別(イベント発生源種別)」、「当該イベント発生源の識別子(イベント発生源識別子)」、「検出された情報の検出時刻等の関連情報」等が属性情報(イベント属性情報)として含まれる。
外部ディスパッチャ140は、イベント201をイベント発生源150から受信した場合、外部ディスパッチルール204を参照し、当該イベント201をローカルシステム100へ転送する。
アプリケーションサーバ160は、イベント発生源150において検出されたイベント201に対して各種情報処理を行うアプリケーションが動作するサーバである。アプリケーションサーバ160は、イベント発生源150により検出されたイベント201に対してローカルシステム100において行われた処理の結果に対して各種情報処理を行う。また、アプリケーションサーバ160は、ローカルシステム100が処理するイベント201の条件を指定したイベント条件と、当該イベント条件に合致したイベント201に対してローカルシステム100が行う処理内容を含む処理ルール202とをローカルシステム100に送信する。
ローカルシステム100は、アプリケーションサーバ160から受信した処理ルール202をもとに外部ディスパッチルール204を生成し、当該外部ディスパッチルール204を外部ディスパッチャ140に設定する。また、ローカルシステム100は、外部ディスパッチャ140からイベント201を受信した場合、処理ルール202に従ってイベント201を処理し、当該イベント201の処理結果(イベント処理結果205)をアプリケーションサーバ160に送信する。
ローカルシステム100は、更に、ルール分配部110、少なくとも1つの処理サーバ120、及び少なくとも1つのローカルディスパッチャ130より構成される。図1は、ローカルシステム100が、複数の処理サーバ120と1つのローカルディスパッチャ130とを有する場合を示している。ここで、処理サーバ102は、それぞれ識別子PS11、PS12、PS13、PS21、PS22、PS23の6つの処理サーバを有する。処理サーバ202(PS11、PS12、PS13)は、ローカルシステム100(LS1)に配置され、処理サーバ202(PS21、PS22、PS23)は、ローカルシステム100(LS2)に配置されている。
ローカルシステム100のルール分配部110は、処理ルール202の処理サーバ120への設定、ローカルディスパッチルール203の生成、及び外部ディスパッチルール204の生成を行う。処理サーバ120は、処理ルール202に従って、イベント201を処理する。ローカルディスパッチャ130は、イベント201を外部ディスパッチャ140から受信した場合、ローカルディスパッチルール203を参照し、当該イベント201を自ローカルシステム100の処理サーバ120へ転送する。
図2に本発明の第一の実施の形態におけるローカルシステム100の構成を示す。ローカルシステム100のルール分配部110は、更に、処理ルール設定部111、処理ルール分配アルゴリズム記憶部112、処理ルール設定情報記憶部113、及びディスパッチルール設定部114により構成される。
処理ルール設定部111は、アプリケーションサーバ160から処理ルール202を受信した場合、当該処理ルール202を処理する処理サーバ120を決定し、当該処理ルール202を設定する。また、処理ルール分配アルゴリズム記憶部112は、処理ルール202を処理する処理サーバ120を決定するための処理ルール分配アルゴリズム(図示せず)を記憶管理する。処理ルール設定情報記憶部113は、処理ルール202の設定結果を処理ルール設定情報211として記憶管理する。ディスパッチルール設定部114は、ローカルディスパッチルール203を生成し、ローカルディスパッチャ130に設定する。また、ディスパッチルール設定部114は、外部ディスパッチルール204を生成し、外部ディスパッチャ140に設定する。
なお、ルール分配部110、処理サーバ120、ローカルディスパッチャ130、外部ディスパッチャ140、イベント発生源150、及びアプリケーションサーバ160は、それぞれプログラム制御によって動作する情報処理装置であってもよい。また、これらのうちのいくつかを一つの装置として構成してもよい。
次に、本発明の第一の実施の形態の動作について図面を参照して説明する。
はじめに、本発明の第一の実施の形態におけるディスパッチルールの設定動作について説明する。図3は、本発明の第一の実施の形態におけるディスパッチルールの設定動作を示すシーケンス図である。
はじめに、各アプリケーションサーバ160がイベント201の処理を要求するローカルシステム100は予め決められており、各アプリケーションサーバ160に設定されているものとする。同様に、各イベント発生源150がイベント201を送信する外部ディスパッチャ140も予め決められており、各イベント発生源150に設定されているものとする。アプリケーションサーバ160におけるローカルシステム100に関する上記の設定は、管理者が直接ローカルシステム100を指定することにより設定してもよいし、各アプリケーションサーバ160が、ネットワーク上の距離に基づいて、近くのローカルシステム100を検出して設定してもよい。同様に、イベント発生源150における外部ディスパッチャ140に関する上記の設定は、管理者が直接外部ディスパッチャ140を指定することにより設定してもよいし、各イベント発生源150が、ネットワーク上の距離に基づいて、近くの外部ディスパッチャ140を検出して設定してもよい。
イベント201の処理を要求するアプリケーションサーバ160は、処理ルール202をローカルシステム100に送信する(ステップS101)。
ここで、処理ルール202は、図5に示すように、処理ルール識別子R11、R12、R21、R22と、各ルール識別子と関連付けた、ローカルシステム100が処理するイベント201の条件を指定したイベント条件、及び当該イベント条件に合致したイベント201に対してローカルシステム100が行う処理内容とを含む。
図5は、ローカルシステム100(LS1)が処理ルール202(R11、R12)、ローカルシステム100(LS2)が処理ルール202(R21、R22)を受信した場合の例を示している。図5の例では、ローカルシステム100(LS1)の処理ルール202(PR11)に、イベント条件としてイベント発生源種別(ここではRFID)と検出情報(RFIDタグのTagID=1~3)とが指定されている。また、このイベント条件に対する処理サーバ120の処理内容として、″アプリケーションサーバAS11へ通知″が指定されている。
ローカルシステム100が処理ルール202を受信すると、ルール分配部110の処理ルール設定部111は、処理ルール分配アルゴリズム記憶部112に記憶された処理ルール分配アルゴリズムと処理ルール設定情報記憶部113に記憶された処理ルール設定情報211とを参照し、当該処理ルール202を処理する処理サーバ120を決定する(ステップS102)。ローカルシステム100は決定した処理サーバ120に処理ルール202を設定する(ステップS103)。処理ルール設定部111は、処理ルール設定情報211を更新し、更新された処理ルール設定情報211を処理ルール設定情報記憶部113に保存する(ステップS104)。
ここで、処理ルール分配アルゴリズムとしては、例えば、処理内容に応じて処理サーバ120の負荷が均等となるように処理ルール202を振り分ける方法や、特許第4161998号公報に記載されているように、イベント条件が同一の処理ルール202を同一の処理サーバ120に振り分ける方法がある。
また、処理ルール設定情報211は、図6に示すように、処理サーバ識別子と設定された処理ルール202の識別子とを含む。
図6は、ローカルシステム100(LS1)の処理サーバ(PS11、PS12)、及びローカルシステム100(LS2)の処理サーバ(PS21、PS22)に設定された処理ルール202の例を示している。図6の例では、ローカルシステム100(LS1)の処理サーバ120(PS11)に処理ルール202(PR11)が設定されている。この設定により、処理サーバ120(PS11)は、処理ルール202(R11)を処理することになる。
ディスパッチルール設定部114は、処理ルール202を設定した処理サーバ120を当該処理ルール202のイベント条件に合致するイベント201の転送先としたローカルディスパッチルール203を生成する(ステップS105)。
ローカルディスパッチルール203は、図7に示すように、ローカルディスパッチルール識別子DRL11、DRL12、DRL21、DRL22と、各ルール識別子と関連付けた、イベント条件、及び転送先の処理サーバ120の識別子とを含む。
図7は、ローカルシステム100(LS1)が生成するローカルディスパッチルール203(DRL11、DRL12)、及びローカルシステム100(LS2)が生成するローカルディスパッチルール203(DRL21、DRL22)の例を示している。図7の例では、ローカルシステム100(LS1)のローカルディスパッチルール203(DRL11)として、イベント条件に処理ルール202(PR11)のイベント条件(イベント発生源種別:RFID、検出情報:TagID=1~3)、転送先に処理ルール202(PR11)を処理する処理サーバ120の識別子(PS11)が設定されている。
ディスパッチルール設定部114は、生成したローカルディスパッチルール203をローカルディスパッチャ130に設定する(ステップS106)。
ディスパッチルール設定部114は、複数の処理ルール202のイベント条件を集約した集約イベント条件を生成し、外部イベント条件を当該集約イベント条件とし、自ローカルシステム100を当該外部イベント条件に合致するイベント201の転送先とした外部ディスパッチルール204(集約あり)を生成する(ステップS107)。
ここで、イベント条件の集約方法としては、例えば、イベント条件が、検出情報の値で指定されている場合、複数のイベント条件を含むような値の範囲を、集約イベント条件としてもよい。
例えば、ローカルシステム100(LS1)に、図5のような処理ルール202(PR11、PR12)が設定されている場合、PR11のイベント条件(RFID、TagID=1~3)、PR12のイベント条件(RFID、TagID=5~7)を集約し、集約イベント条件(RFID、TagID=1~7)を生成することができる。
また、イベント条件が1.1、1.3、2.1、2.5のように階層化された値で指定されている場合、複数のイベント条件に共通な階層の値を集約イベント条件としてもよい。この場合、イベント条件1.1、1.3、2.1、2.5に対して、集約イベント条件1・*、2.*(*は任意の数)を生成することができる。
外部ディスパッチルール204は、図8に示すように、外部ディスパッチルール識別子DRG11、DRG12、DRG21、DRG22と、各ルール識別子と関連付けた、外部イベント条件、及びイベント201の転送先となるローカルシステム100の識別子とを含む。
図8は、ローカルシステム100(LS1)が生成する外部ディスパッチルール204(DRG11、DRG12)、及びローカルシステム100(LS2)が生成するディスパッチルール204(DRG21、DRG22)の例を示している。図8の例では、ローカルシステム100(LS1)が生成する外部ディスパッチルール204(DRG11)の外部イベント条件には、図5の処理ルール202(PR11、PR12)のイベント条件を集約した集約イベント条件(RFID、TagID=1~7)が設定され、転送先には、ローカルシステム100(LS1)の識別子が設定されている。また、ローカルシステム100(LS2)が生成する外部ディスパッチルール204(DRG21)の外部イベント条件には、図5の処理ルール202(PR21、PR22)のイベント条件を集約した集約イベント条件(RFID、TagID=5~11)が設定され、転送先には、ローカルシステム100(LS2)の識別子が設定されている。
ディスパッチルール設定部114は、生成した外部ディスパッチルール204(集約あり)を外部ディスパッチャ140に設定する(ステップS108)。
例えば、ローカルシステム100(LS1、LS2)が、外部ディスパッチルール204(DRG11、DRG21)を外部ディスパッチャ140にそれぞれ設定した場合、各外部ディスパッチャ140には、図9のような外部ディスパッチルール204が設定される。
次に、本発明の第一の実施の形態におけるイベント処理の動作について説明する。図4は、本発明の第一の実施の形態におけるイベント処理の動作を示すシーケンス図である。
イベント発生源150が検出対象の情報を検出すると、イベント発生源150は検出した情報をイベント201として外部ディスパッチャ140に送信する(ステップS201)。
イベント201は、図10に示すように、イベント識別子131、イベント発生源種別、イベント発生源識別子、検出時刻、検出情報等のイベント属性情報を含むことができる。図10の例では、イベント201(I31)のイベント属性情報として、イベント発生源種別:RFID、イベント発生源識別子:G3、検出情報:TagID=6が設定されている。
外部ディスパッチャ140は、イベント201を受信すると、イベント201に含まれるイベント属性情報が外部ディスパッチルール204の外部イベント条件のいずれかに合致するかどうかを検索する(ステップS202)。合致する外部イベント条件がある場合、外部ディスパッチャ140は、外部ディスパッチルール204を参照し、当該外部イベント条件に対応するローカルシステム100にイベント201を転送する(ステップS203、S204)。
例えば、外部ディスパッチャ140(GD2)がイベント201(I31)を受信した場合、イベント201(I31)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=6)は、外部ディスパッチルール204(DRG11、DRG21)の外部イベント条件に合致するため、外部ディスパッチャ140(GD2)は、イベント201(I31)をローカルシステム100(LS1)とローカルシステム100(LS2)とに転送する。
また、外部ディスパッチャ140(GD2)がイベント201(I41)を受信した場合、イベント201(I41)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=4)は、外部ディスパッチルール204(DRG11)の外部イベント条件に合致するため、外部ディスパッチャ140(GD2)は、イベント201(I41)をローカルシステム100(LS1)に転送する。
ローカルシステム100がイベント201を受信すると、ローカルディスパッチャ130は、イベント201に含まれるイベント属性情報がローカルディスパッチルール203のイベント条件のいずれかに合致するかどうかを検索する(ステップS211、S221)。合致するイベント条件がある場合、ローカルディスパッチャ130は、ローカルディスパッチルール203を参照し、当該イベント条件に対応する処理サーバ120にイベント201を転送する(ステップS212、S222)。ここで、合致するイベント条件がない場合は、イベント201を廃棄する。
例えば、ローカルシステム100(LS1)がイベント201(I31)を受信した場合、イベント201(I31)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=6)は、ローカルディスパッチルール203(DRL12)のイベント条件に合致するため、ローカルシステム100(LS1)のローカルディスパッチャ130は、イベント201(I31)を処理サーバ120(PS12)に転送する。同様に、ローカルシステム100(LS2)がイベント201(I31)を受信した場合、イベント201(I31)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=6)は、ローカルディスパッチルール203(DRL21)のイベント条件に合致するため、ローカルシステム100(LS2)のローカルディスパッチャ130は、イベント201(I31)を処理サーバ120(PS21)に転送する。
また、ローカルシステム100(LS1)がイベント201(I41)を受信した場合、イベント201(I41)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=4)は、ローカルディスパッチルール203のイベント条件に合致しないため、ローカルシステム100(LS1)のローカルディスパッチャ130は、イベント201(I41)を廃棄する。
ローカルシステム100の処理サーバ120がイベント201を受信すると、処理サーバ120は、処理ルール202に従ってイベント201を処理し(ステップS213、S223)、アプリケーションサーバ160へイベント処理結果205を送信する(ステップS214、S224)。
例えば、ローカルシステム100(LS1)の処理サーバ120(PS12)は、イベント処理結果205として、イベント201(I31)をアプリケーションサーバ160(AS12)に送信する。また、ローカルシステム100(LS2)の処理サーバ120(PS21)は、イベント処理結果205として、イベント201(I31)をアプリケーションサーバ160(AS21)に送信する。
以上、図1に示したように、ローカルシステム100配下のイベント発生源150から送信されたイベント201(I31)(TagID=6)は、ローカルシステム100(LS1、LS2)に転送され、イベント処理結果205がアプリケーションサーバ160(AS12、21)へ送信される。
以上により、本発明の第一の実施の形態の動作が完了する。
次に、図11に第一の実施の形態の特徴的な構成を示す。
イベント処理システムは、イベント発生源150からイベント201を受信する複数の外部ディスパッチャ140と、アプリケーションサーバ160へイベント処理結果205を送信する複数のローカルシステム100とを備える。
ここで、ローカルシステム100は、アプリケーションサーバ160から処理するイベント201の条件を示すイベント条件を含む処理ルール202を受信し、複数のイベント条件を集約した集約イベント条件を生成する。ローカルシステム100は、当該集約イベント条件を外部イベント条件とし、自ローカルシステムを当該外部イベント条件に合致するイベント201の転送先とした外部ディスパッチルール204を生成し、当該外部ディスパッチルール204を外部ディスパッチャ140に設定する。そして、ローカルシステム100は、イベント201を外部ディスパッチャ140から受信した場合、処理ルール202に従って当該イベント201を処理し、イベント処理結果205を、当該処理ルール202の送信元のアプリケーションサーバ160に通知する。
また、外部ディスパッチャ140は、イベント201をイベント発生源150から受信した場合、外部ディスパッチルール204を参照し、当該イベント201に合致する外部イベント条件に対応した転送先のローカルシステム100に当該イベント201を転送する。
本発明の第一の実施の形態によれば、イベント処理システムにおいて、処理ルールの増加に伴うディスパッチルールの増大を抑制することができる。その理由は、ローカルシステム100が、複数のイベント条件を集約した集約イベント条件を外部イベント条件とし、自ローカルシステムを当該外部イベント条件に合致するイベント201の転送先とした外部ディスパッチルール204を外部ディスパッチャ140に設定するためである。
(第二の実施の形態)
次に、本発明の第二の実施の形態について図面を参照して詳細に説明する。
本発明の第二の実施の形態では、ローカルディスパッチャ130において廃棄されるイベント201の数が多い場合は、イベント条件の集約を中止し、外部ディスパッチャ140がローカルシステム100において廃棄されるイベント201を当該ローカルシステム100に転送することを抑止する。
本発明の第二の実施の形態においては、ローカルシステム100のローカルディスパッチャ130が、廃棄されるイベント数をカウントし、当該廃棄されるイベント数が所定の値を超えると、外部ディスパッチルール204を再設定する点において、本発明の第一の実施の形態と異なる。
なお、本発明の第二の実施の形態において、第一の実施の形態と同一の符号を有する構成要素については、特に説明の無い限り、第一の実施の形態と同一であるものとする。
図12に本発明の第二の実施の形態におけるイベント処理システム全体の構成図を、図13に本発明の第二の実施の形態におけるローカルシステム100の構成を示す。図13を参照すると、ローカルシステム100のローカルディスパッチャ130は、イベント201の廃棄数をカウントするイベント廃棄カウンタ115を更に備える。
ローカルディスパッチャ130は、ローカルディスパッチルール203に合致せず廃棄したイベント201の数をイベント廃棄カウンタ115にてカウントする。また、イベント廃棄カウンタ115の内容を定期的にディスパッチ統計情報206としてディスパッチルール設定部114に送信する。
ディスパッチルール設定部114は、ローカルディスパッチャ130から受信したイベント廃棄カウンタ115の値を参照し、イベント201の廃棄数が所定の閾値を超えていた場合、イベント条件の集約を中止し、外部ディスパッチルール204を再設定する。
次に、本発明の第二の実施の形態の動作について説明する。
本発明の第二の実施の形態におけるディスパッチルールの設定動作については、本発明の第一の実施の形態(図3)と同様となる。ここでは、各外部ディスパッチャ140には、本発明の第一の実施の形態と同様に、図5の処理ルール202に基づいて、図9のような外部ディスパッチルール204が設定されているものとする。
次に、本発明の第二の実施の形態におけるイベント処理の動作について説明する。図14は、本発明の第二の実施の形態におけるイベント処理の動作を示すシーケンス図である。
イベント発生源150がイベント201を送信してから、ローカルディスパッチャ130がローカルディスパッチルール203のイベント条件を検索するまでの処理(ステップS301からS311)は、第一の実施の形態(ステップS201からS211)と同様となる。
ステップS311において、ローカルディスパッチルール203のイベント条件にイベント201のイベント属性情報と合致するイベント条件がない場合、ローカルディスパッチャ130は、イベント201を廃棄する。この場合、ローカルディスパッチャ130は、イベント廃棄カウンタ115に1を加算する(ステップS312)。
例えば、ローカルシステム100(LS1)がイベント201(I41)を受信した場合、イベント201(I41)のイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=4)は、ローカルディスパッチルール203のイベント条件に合致しないため、ローカルディスパッチャ130は、イベント201(I41)を廃棄し、イベント廃棄カウンタ115に1を加算する。
なお、イベント廃棄カウンタ115の値は、所定の周期で0にリセットされるものとする。
ローカルディスパッチャ130は、所定の周期でイベント廃棄カウンタ115の値をディスパッチ統計情報206として、ルール分配部110のディスパッチルール設定部114に送信する(ステップS313)。
ディスパッチルール設定部114は、ローカルディスパッチャ130から受信したイベント廃棄カウンタ115の値を参照し、所定の廃棄数閾値と比較する(ステップS314)。
ここで、イベント廃棄カウンタ115の値が廃棄数閾値を超えていた場合、ディスパッチルール設定部114は、各処理ルール202のイベント条件(集約していないイベント条件)を外部イベント条件とし、自ローカルシステム100を当該外部イベント条件に合致するイベント201の転送先とした外部ディスパッチルール204(集約なし)を生成する(ステップS315)。
例えば、ローカルシステム100(LS1)は、図5の処理ルール202(PR11、PR12)のイベント条件を外部イベント条件に設定し、転送先にローカルシステム100(LS1)の識別子を設定した、図15の外部ディスパッチルール204(DRG12、DRG13)を再生成する。
ディスパッチルール設定部114は、生成した外部ディスパッチルール204(集約なし)を外部ディスパッチャ140に設定する(ステップS316)。これにより、ローカルディスパッチャ130にて廃棄されていたイベント201と同じイベント属性情報を有するイベント201は、外部ディスパッチルール204の外部イベント条件に合致しないため、外部ディスパッチャ140にて廃棄される(ステップS317、S318)。
例えば、ローカルシステム100(LS1)が、外部ディスパッチルール204(DRG12、DRG13)を外部ディスパッチャ140に設定した場合、各外部ディスパッチャ140には、図16のような外部ディスパッチルール204が設定される。これにより、例えば、外部ディスパッチャ140(GD2)がイベント201(I41)と同じイベント属性情報(イベント発生源種別:RFID、検出情報:TagID=4)のイベント201を受信した場合、当該イベント201のイベント属性情報は、外部ディスパッチルール204の外部イベント条件に合致せず、外部ディスパッチャ140(GD2)は、当該イベント201を廃棄する。
ディスパッチルール設定部114は、外部ディスパッチルール204(集約なし)を設定した後の経過時間をカウントし(ステップS319)、所定の時間経過すると、再度、複数の処理ルール202のイベント条件を集約した集約イベント条件を生成し、集約イベント条件を外部イベント条件とした外部ディスパッチルール204(集約あり)を生成する(ステップS320)。ディスパッチルール設定部114は、生成した外部ディスパッチルール204(集約あり)を外部ディスパッチャ140に設定する(ステップS321)。
以上により、本発明の第二の実施の形態の動作が完了する。
本発明の第二の実施の形態によれば、外部ディスパッチャがイベント条件を集約した外部ディスパッチルールに基づきローカルシステムにイベントを転送するイベント処理システムにおいて、外部ディスパッチャによる無駄なイベント転送を減らすことができる。その理由は、ローカルシステム100が、イベント条件のいずれにも合致しないイベント201の数が所定の閾値を超えた場合、イベント条件の集約を中止し、イベント条件のそれぞれを外部イベント条件とした外部ディスパッチルール204を外部ディスパッチャ140に再設定するためである。
また、本発明の第二の実施の形態によれば、外部ディスパッチャがイベント条件を集約した外部ディスパッチルールに基づきローカルシステムにイベントを転送するイベント処理システムにおいて、外部ディスパッチャによる無駄なイベント転送が多発する期間を除いて、ディスパッチルールの数を小さくするように、ディスパッチルールの数を調整できる。その理由は、ローカルシステム100が、イベント条件の集約をしない外部ディスパッチルール204を外部ディスパッチャ140に再設定した後、所定の時間経過した場合、集約イベント条件を外部イベント条件とした外部ディスパッチルール204を外部ディスパッチャ140に再設定するためである。
本発明の効果は、イベント処理システムにおいて、処理ルールの増加に伴うディスパッチルールの増大を抑制することができることである。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
この出願は、2009年3月17日に出願された日本出願特願2009−063720を基礎とする優先権を主張し、その開示の全てをここに取り込む。 (First embodiment)
Next, a first embodiment of the present invention will be described in detail with reference to the drawings.
FIG. 1 is a configuration diagram of the entire event processing system according to the first embodiment of the present invention. Referring to FIG. 1, the first embodiment of the event processing system of the present invention includes a plurality of
Here, the
In each drawing and the following description, the symbol in parentheses following the reference number indicates an identifier. For example, the local system 100 (LS1) indicates the local system with the identifier LS1, and the application server 160 (AS11) indicates the application server with the identifier AS11. This is the same for the processing rules.
The
Examples of the
In addition to “information detected by the
When receiving the
The
The
The
The
FIG. 2 shows the configuration of the
When the processing
Note that the
Next, the operation of the first embodiment of the present invention will be described with reference to the drawings.
First, the dispatch rule setting operation in the first embodiment of the present invention will be described. FIG. 3 is a sequence diagram showing a dispatch rule setting operation in the first embodiment of the present invention.
First, it is assumed that the
The
Here, as shown in FIG. 5, the
FIG. 5 shows an example in which the local system 100 (LS1) receives the processing rule 202 (R11, R12) and the local system 100 (LS2) receives the processing rule 202 (R21, R22). In the example of FIG. 5, the event generation source type (RFID here) and detection information (RFID tag Tag ID = 1 to 3) are specified as event conditions in the processing rule 202 (PR11) of the local system 100 (LS1). ing. Further, “notify to application server AS11” is designated as the processing contents of the
When the
Here, as the processing rule distribution algorithm, for example, a method of distributing the processing rules 202 so that the load of the
Further, as shown in FIG. 6, the processing rule setting information 211 includes a processing server identifier and an identifier of the
FIG. 6 shows an example of the processing rules 202 set in the processing servers (PS11, PS12) of the local system 100 (LS1) and the processing servers (PS21, PS22) of the local system 100 (LS2). In the example of FIG. 6, the processing rule 202 (PR11) is set in the processing server 120 (PS11) of the local system 100 (LS1). With this setting, the processing server 120 (PS11) processes the processing rule 202 (R11).
The dispatch
As shown in FIG. 7, the
FIG. 7 shows an example of the local dispatch rule 203 (DRL11, DRL12) generated by the local system 100 (LS1) and the local dispatch rule 203 (DRL21, DRL22) generated by the local system 100 (LS2). In the example of FIG. 7, as the local dispatch rule 203 (DRL11) of the local system 100 (LS1), the event condition (event generation source type: RFID, detection information: TagID = 1-3) ), The identifier (PS11) of the
The dispatch
The dispatch
Here, as an event condition aggregation method, for example, when an event condition is specified by a value of detection information, a range of values including a plurality of event conditions may be set as the aggregation event condition.
For example, when the processing rule 202 (PR11, PR12) as shown in FIG. 5 is set in the local system 100 (LS1), the PR11 event condition (RFID, TagID = 1 to 3), the PR12 event condition (RFID , TagID = 5 to 7) can be aggregated to generate an aggregate event condition (RFID, TagID = 1 to 7).
In addition, when the event condition is specified by a hierarchical value such as 1.1, 1.3, 2.1, 2.5, the value of the hierarchy common to a plurality of event conditions is used as the aggregate event condition Also good. In this case, for the event conditions 1.1, 1.3, 2.1, 2.5, the aggregated event conditions 1 *, 2. * (* Is an arbitrary number) can be generated.
As shown in FIG. 8, the
FIG. 8 shows an example of the external dispatch rule 204 (DRG11, DRG12) generated by the local system 100 (LS1) and the dispatch rule 204 (DRG21, DRG22) generated by the local system 100 (LS2). In the example of FIG. 8, the external event condition of the external dispatch rule 204 (DRG11) generated by the local system 100 (LS1) is an aggregated event condition that aggregates the event conditions of the processing rule 202 (PR11, PR12) of FIG. RFID, TagID = 1 to 7) is set, and the identifier of the local system 100 (LS1) is set as the transfer destination. Further, the external event condition of the external dispatch rule 204 (DRG 21) generated by the local system 100 (LS2) includes an aggregate event condition (RFID, TagID =) that aggregates the event conditions of the processing rule 202 (PR21, PR22) of FIG. 5 to 11) are set, and the identifier of the local system 100 (LS2) is set as the transfer destination.
The dispatch
For example, when the local system 100 (LS1, LS2) sets the external dispatch rule 204 (DRG11, DRG21) in the
Next, the event processing operation in the first embodiment of the present invention will be described. FIG. 4 is a sequence diagram showing an event processing operation in the first embodiment of the present invention.
When the
As shown in FIG. 10, the
When receiving the
For example, when the external dispatcher 140 (GD2) receives the event 201 (I31), the event attribute information (event source type: RFID, detection information: TagID = 6) of the event 201 (I31) is stored in the external dispatch rule 204 ( The external dispatcher 140 (GD2) transfers the event 201 (I31) to the local system 100 (LS1) and the local system 100 (LS2) in order to meet the external event conditions of the DRG11 and DRG21).
When the external dispatcher 140 (GD2) receives the event 201 (I41), the event attribute information (event source type: RFID, detection information: TagID = 4) of the event 201 (I41) is stored in the external dispatch rule 204 ( In order to meet the external event condition of the DRG 11), the external dispatcher 140 (GD2) transfers the event 201 (I41) to the local system 100 (LS1).
When the
For example, when the local system 100 (LS1) receives the event 201 (I31), the event attribute information (event source type: RFID, detection information: TagID = 6) of the event 201 (I31) is the local dispatch rule 203 ( In order to meet the event condition of the DRL 12), the
When the local system 100 (LS1) receives the event 201 (I41), the event attribute information (event source type: RFID, detection information: TagID = 4) of the event 201 (I41) Since the event condition is not met, the
When the
For example, the processing server 120 (PS12) of the local system 100 (LS1) transmits the event 201 (I31) to the application server 160 (AS12) as the
As described above, the event 201 (I31) (TagID = 6) transmitted from the
Thus, the operation of the first embodiment of the present invention is completed.
Next, FIG. 11 shows a characteristic configuration of the first embodiment.
The event processing system includes a plurality of
Here, the
When the
According to the first embodiment of this invention, in the event processing system, it is possible to suppress an increase in dispatch rules accompanying an increase in processing rules. The reason for this is that the
(Second embodiment)
Next, a second embodiment of the present invention will be described in detail with reference to the drawings.
In the second embodiment of the present invention, when the number of
In the second embodiment of the present invention, the
In the second embodiment of the present invention, components having the same reference numerals as those in the first embodiment are the same as those in the first embodiment unless otherwise specified.
FIG. 12 shows the configuration of the entire event processing system according to the second embodiment of the present invention, and FIG. 13 shows the configuration of the
The
The dispatch
Next, the operation of the second embodiment of the present invention will be described.
The dispatch rule setting operation in the second embodiment of the present invention is the same as that in the first embodiment (FIG. 3) of the present invention. Here, as in the first embodiment of the present invention, it is assumed that the
Next, the event processing operation in the second embodiment of the present invention will be described. FIG. 14 is a sequence diagram showing an event processing operation according to the second embodiment of the present invention.
Processing from when the
In step S <b> 311, if there is no event condition that matches the event attribute information of the
For example, when the local system 100 (LS1) receives the event 201 (I41), the event attribute information (event source type: RFID, detection information: TagID = 4) of the event 201 (I41) Since the event condition is not met, the
Note that the value of the event discard
The
The dispatch
Here, when the value of the event discard
For example, the local system 100 (LS1) sets the event condition of the processing rule 202 (PR11, PR12) in FIG. 5 as an external event condition, and sets the identifier of the local system 100 (LS1) as the transfer destination in FIG. The external dispatch rule 204 (DRG12, DRG13) is regenerated.
The dispatch
For example, when the local system 100 (LS1) sets the external dispatch rule 204 (DRG12, DRG13) to the
The dispatch
Thus, the operation of the second embodiment of the present invention is completed.
According to the second embodiment of the present invention, in an event processing system in which an external dispatcher transfers events to a local system based on an external dispatch rule in which event conditions are aggregated, useless event transfer by the external dispatcher can be reduced. . The reason for this is that when the number of
According to the second embodiment of the present invention, in the event processing system in which an external dispatcher transfers events to a local system based on an external dispatch rule in which event conditions are aggregated, unnecessary event transfer by the external dispatcher occurs frequently. Except for the period, the number of dispatch rules can be adjusted to reduce the number of dispatch rules. The reason is that when the
The effect of the present invention is that an increase in dispatch rules accompanying an increase in processing rules can be suppressed in an event processing system.
While the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
This application claims the priority on the basis of Japanese application Japanese Patent Application No. 2009-063720 for which it applied on March 17, 2009, and takes in those the indications of all here.
本発明は、RFID、センサのようなデバイス等から大量に発生するイベントの処理を行うイベント処理システムに適用できる。例えば、本発明は、RFIDやセンサからのイベントを利用した物流トレーサビリティシステム、SCEM(Supply Chain Event Management)システム、天候や災害等の環境管理システムに適用できる。
The present invention can be applied to an event processing system that processes events that occur in large quantities from devices such as RFIDs and sensors. For example, the present invention can be applied to a physical distribution traceability system using an event from an RFID or a sensor, an SCEM (Supply Chain Event Management) system, and an environmental management system such as weather or disaster.
Claims (12)
- イベント発生源からイベントを受信する複数の外部ディスパッチャとアプリケーションサーバへイベントの処理結果を送信する複数のローカルシステムとを備え、
前記複数のローカルシステムのそれぞれは、
前記アプリケーションサーバから処理するイベントの条件を示すイベント条件を含む処理ルールを受信した場合、複数の前記イベント条件を集約した集約イベント条件を生成し、当該集約イベント条件を外部イベント条件とし、自ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした外部ディスパッチルールを生成し、当該外部ディスパッチルールを前記外部ディスパッチャに設定し、
前記イベントを前記外部ディスパッチャから受信した場合、前記処理ルールに従って当該イベントを処理し、当該イベントの処理結果を、当該処理ルールの送信元の前記アプリケーションサーバに通知し、
前記複数の外部ディスパッチャのそれぞれは、
前記イベントを前記イベント発生源から受信した場合、前記外部ディスパッチルールを参照し、当該イベントに合致する前記外部イベント条件に対応した転送先のローカルシステムに当該イベントを転送することを特徴とするイベント処理システム。 A plurality of external dispatchers for receiving events from an event source and a plurality of local systems for transmitting event processing results to an application server;
Each of the plurality of local systems is
When a processing rule including an event condition indicating an event condition to be processed is received from the application server, an aggregate event condition obtained by aggregating a plurality of the event conditions is generated, and the aggregate event condition is set as an external event condition. Generate an external dispatch rule with the event transfer destination that matches the external event condition, and set the external dispatch rule in the external dispatcher,
When the event is received from the external dispatcher, the event is processed according to the processing rule, the processing result of the event is notified to the application server that is the transmission source of the processing rule,
Each of the plurality of external dispatchers is
Event processing characterized in that, when the event is received from the event generation source, the event is transferred to a local system of a transfer destination corresponding to the external event condition that matches the event with reference to the external dispatch rule. system. - 前記ローカルシステムのそれぞれは、前記イベント条件のいずれにも合致しない前記イベントの数が所定の閾値を超えた場合、前記イベント条件のそれぞれを前記外部イベント条件とし、自ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした前記外部ディスパッチルールを生成し、当該外部ディスパッチルールを前記外部ディスパッチャに設定することを特徴とする請求項1記載のイベント処理システム。 Each of the local systems, when the number of events that do not match any of the event conditions exceeds a predetermined threshold, sets each of the event conditions as the external event condition, and sets the local system as the external event condition. The event processing system according to claim 1, wherein the external dispatch rule that is a transfer destination of the matching event is generated, and the external dispatch rule is set in the external dispatcher.
- 前記ローカルシステムのそれぞれは、前記イベント条件のそれぞれを前記外部イベント条件とした前記外部ディスパッチルールを前記外部ディスパッチャに設定後、所定の時間経過した場合、前記集約イベント条件を前記外部イベント条件とした前記外部ディスパッチルールを生成し、当該外部ディスパッチルールを前記外部ディスパッチャに設定することを特徴とする請求項2記載のイベント処理システム。 Each of the local systems has the aggregate event condition as the external event condition when a predetermined time has elapsed after setting the external dispatch rule with the external event condition as the external event condition in the external dispatcher. The event processing system according to claim 2, wherein an external dispatch rule is generated and the external dispatch rule is set in the external dispatcher.
- 前記ローカルシステムは、前記イベント条件が数値で指定される場合、複数の前記イベント条件を含む数値の範囲を前記集約イベント条件として生成することを特徴とする請求項1乃至3のいずれかに記載のイベント処理システム。 The said local system produces | generates the range of the numerical value containing the said several event conditions as said aggregate event conditions, when the said event conditions are designated by the numerical value, The Claim 1 thru | or 3 characterized by the above-mentioned. Event processing system.
- 前記複数のローカルシステムのそれぞれは、
前記アプリケーションサーバから受信した前記処理ルールを自ローカルシステムのいずれか1つの処理サーバに設定する処理ルール設定部と、
当該処理サーバを当該処理ルールに含まれる前記イベント条件に合致する前記イベントの転送先としたローカルディスパッチルールを生成し、当該ローカルディスパッチルールを自ローカルシステムのローカルディスパッチャに設定し、前記外部ディスパッチルールを生成し、当該外部ディスパッチルールを前記外部ディスパッチャに設定するディスパッチルール設定部と
を有するルール分配部と、
前記イベントを前記外部ディスパッチャから受信した場合、前記ローカルディスパッチルールを参照し、当該イベントに合致する前記イベント条件に対応した転送先の処理サーバに当該イベントを転送する少なくとも1つの前記ローカルディスパッチャと
前記処理ルールに従って、当該処理ルールに含まれる前記イベント条件に合致する前記イベントを処理する少なくとも1つの前記処理サーバと
を備えたことを特徴とする請求項1乃至4のいずれかに記載のイベント処理システム。 Each of the plurality of local systems is
A processing rule setting unit that sets the processing rule received from the application server in any one processing server of the local system;
Generate a local dispatch rule having the processing server as a transfer destination of the event that matches the event condition included in the processing rule, set the local dispatch rule in a local dispatcher of the local system, and set the external dispatch rule to A rule distribution unit having a dispatch rule setting unit for generating and setting the external dispatch rule in the external dispatcher;
When the event is received from the external dispatcher, at least one local dispatcher that refers to the local dispatch rule and transfers the event to a transfer destination processing server corresponding to the event condition that matches the event, and the processing The event processing system according to claim 1, further comprising: at least one processing server that processes the event that matches the event condition included in the processing rule according to a rule. - 少なくとも1つの処理サーバと少なくとも1つのローカルディスパッチャとを有するローカルシステム内に設けられ、
アプリケーションサーバから受信した処理ルールを前記ローカルシステムのいずれか1つの前記処理サーバに設定する処理ルール設定部と、
当該処理サーバを当該処理ルールに含まれるイベント条件に合致するイベントの転送先としたローカルディスパッチルールを生成し、当該ローカルディスパッチルールを前記ローカルシステムの前記ローカルディスパッチャに設定し、複数の前記イベント条件を集約した集約イベント条件を生成し、当該集約イベント条件を外部イベント条件とし、前記ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした外部ディスパッチルールを生成し、当該外部ディスパッチルールを外部ディスパッチャに設定するディスパッチルール設定部と
を備えたことを特徴とするルール分配装置。 Provided in a local system having at least one processing server and at least one local dispatcher;
A processing rule setting unit that sets a processing rule received from an application server in any one of the processing servers of the local system;
A local dispatch rule having the processing server as a transfer destination of an event that matches an event condition included in the processing rule is generated, the local dispatch rule is set in the local dispatcher of the local system, and a plurality of the event conditions are set. An aggregated event condition is generated, the aggregated event condition is set as an external event condition, an external dispatch rule is generated with the local system as a transfer destination of the event that matches the external event condition, and the external dispatch rule is externally generated. A rule distribution device comprising: a dispatch rule setting unit set in a dispatcher. - ローカルシステムが、アプリケーションサーバから処理するイベントの条件を示すイベント条件を含む処理ルールを受信した場合、前記ローカルシステムは、複数の前記イベント条件を集約した集約イベント条件を生成し、当該集約イベント条件を外部イベント条件とし、自ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした外部ディスパッチルールを生成し、当該外部ディスパッチルールを外部ディスパッチャに設定し、
前記外部ディスパッチャが、前記イベントをイベント発生源から受信した場合、前記外部ディスパッチャは、前記外部ディスパッチルールを参照し、当該イベントに合致する前記外部イベント条件に対応した転送先のローカルシステムに当該イベントを転送し、
前記ローカルシステムが、前記イベントを前記外部ディスパッチャから受信した場合、前記ローカルシステムは、前記処理ルールに従って当該イベントを処理し、当該イベントの処理結果を、当該処理ルールの送信元の前記アプリケーションサーバに通知することを特徴とするイベント処理方法。 When the local system receives a processing rule including an event condition indicating an event condition to be processed from the application server, the local system generates an aggregate event condition in which a plurality of the event conditions are aggregated, and the aggregated event condition is As an external event condition, generate an external dispatch rule with the local system as the transfer destination of the event that matches the external event condition, and set the external dispatch rule in the external dispatcher.
When the external dispatcher receives the event from the event generation source, the external dispatcher refers to the external dispatch rule and sends the event to the local system of the transfer destination corresponding to the external event condition that matches the event. Forward,
When the local system receives the event from the external dispatcher, the local system processes the event according to the processing rule, and notifies the processing result of the event to the application server that is the transmission source of the processing rule. An event processing method characterized by: - 前記ローカルシステムは、更に、前記イベント条件のいずれにも合致しない前記イベントの数が所定の閾値を超えた場合、前記イベント条件のそれぞれを前記外部イベント条件とし、自ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした前記外部ディスパッチルールを生成し、当該外部ディスパッチルールを前記外部ディスパッチャに設定することを特徴とする請求項7記載のイベント処理方法。 The local system further sets each of the event conditions as the external event condition when the number of events that do not match any of the event conditions exceeds a predetermined threshold, and sets the local system as the external event condition. 8. The event processing method according to claim 7, wherein the external dispatch rule as a transfer destination of the matching event is generated, and the external dispatch rule is set in the external dispatcher.
- 前記ローカルシステムは、更に、前記イベント条件のそれぞれを前記外部イベント条件とした前記外部ディスパッチルールを前記外部ディスパッチャに設定後、所定の時間経過した場合、前記集約イベント条件を前記外部イベント条件とした前記外部ディスパッチルールを生成し、当該外部ディスパッチルールを前記外部ディスパッチャに設定することを特徴とする請求項8記載のイベント処理方法。 The local system further sets the external event rule as the external event condition when a predetermined time has elapsed after setting the external dispatch rule in the external dispatcher with each of the event conditions as the external event condition. 9. The event processing method according to claim 8, wherein an external dispatch rule is generated and the external dispatch rule is set in the external dispatcher.
- 前記ローカルシステムは、前記イベント条件が数値で指定される場合、複数の前記イベント条件を含む数値の範囲を前記集約イベント条件として生成することを特徴とする請求項7乃至9のいずれかに記載のイベント処理方法。 The said local system produces | generates the range of the numerical value containing several said event conditions as said aggregate event conditions, when the said event conditions are designated by the numerical value. Event processing method.
- 前記外部ディスパッチルールの設定において、
前記ローカルシステムのルール分配部が、前記アプリケーションサーバから受信した前記処理ルールを自ローカルシステムのいずれか1つの処理サーバに設定し、当該処理サーバを当該処理ルールに含まれる前記イベント条件に合致する前記イベントの転送先としたローカルディスパッチルールを生成し、当該ローカルディスパッチルールを自ローカルシステムのローカルディスパッチャに設定し、前記外部ディスパッチルールを生成し、当該外部ディスパッチルールを前記外部ディスパッチャに設定し、
前記イベント処理において、
前記ローカルディスパッチャが、前記ローカルディスパッチルールを参照し、当該イベントに合致する前記イベント条件に対応した転送先の処理サーバに当該イベントを転送し、
前記処理サーバが、前記処理ルールに従って、当該処理ルールに含まれる前記イベント条件に合致する前記イベントを処理することを特徴とする請求項7乃至10のいずれかに記載のイベント処理方法。 In setting the external dispatch rule,
The rule distribution unit of the local system sets the processing rule received from the application server to any one processing server of the local system, and the processing server matches the event condition included in the processing rule. Generate a local dispatch rule as an event transfer destination, set the local dispatch rule in the local dispatcher of the local system, generate the external dispatch rule, set the external dispatch rule in the external dispatcher,
In the event processing,
The local dispatcher refers to the local dispatch rule, transfers the event to a processing server of a transfer destination corresponding to the event condition that matches the event,
The event processing method according to claim 7, wherein the processing server processes the event that matches the event condition included in the processing rule according to the processing rule. - コンピュータに、
アプリケーションサーバから受信した処理ルールを少なくとも1つの処理サーバと少なくとも1つのローカルディスパッチャとを有するローカルシステムのいずれか1つの前記処理サーバに設定し、
当該処理サーバを当該処理ルールに含まれるイベント条件に合致するイベントの転送先としたローカルディスパッチルールを生成し、当該ローカルディスパッチルールを前記ローカルシステムの前記ローカルディスパッチャに設定し、複数の前記イベント条件を集約した集約イベント条件を生成し、当該集約イベント条件を外部イベント条件とし、前記ローカルシステムを当該外部イベント条件に合致する前記イベントの転送先とした外部ディスパッチルールを生成し、当該外部ディスパッチルールを外部ディスパッチャに設定する
処理を実行させるルール分配プログラムを記録したプログラム記録媒体。 On the computer,
Setting the processing rules received from the application server in any one of the local systems having at least one processing server and at least one local dispatcher;
A local dispatch rule having the processing server as a transfer destination of an event that matches an event condition included in the processing rule is generated, the local dispatch rule is set in the local dispatcher of the local system, and a plurality of the event conditions are set. An aggregated event condition is generated, the aggregated event condition is set as an external event condition, an external dispatch rule is generated with the local system as a transfer destination of the event that matches the external event condition, and the external dispatch rule is externally generated. A program recording medium in which a rule distribution program for executing processing to be set in a dispatcher is recorded.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011504891A JP5327315B2 (en) | 2009-03-17 | 2010-03-15 | Event processing system, event processing method, rule distribution device, and program storage medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009063720 | 2009-03-17 | ||
JP2009-063720 | 2009-03-17 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2010107107A1 true WO2010107107A1 (en) | 2010-09-23 |
Family
ID=42739763
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2010/054759 WO2010107107A1 (en) | 2009-03-17 | 2010-03-15 | Event processing system, event processing method, rule distributor, and program storage medium |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5327315B2 (en) |
WO (1) | WO2010107107A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012212227A (en) * | 2011-03-30 | 2012-11-01 | Nec Corp | Event processing system, and event processing method and event processing program used for the same |
WO2014065115A1 (en) | 2012-10-23 | 2014-05-01 | 日本電気株式会社 | Rule distribution server, as well as event processing system, method, and program |
US9571613B2 (en) | 2014-07-02 | 2017-02-14 | Fujitsu Limited | Portable terminal device that selects lowest amount of power consumed by a sensor and sensor's driver |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06504152A (en) * | 1990-12-28 | 1994-05-12 | ロイターズ・リミテッド | Apparatus and method for creating user-definable video display documents showing changes in real-time data |
JP2001100999A (en) * | 1999-09-30 | 2001-04-13 | Mitsubishi Electric Corp | Rule-based system |
JP2007142767A (en) * | 2005-11-17 | 2007-06-07 | Univ Of Tsukuba | PATTERN MATCHING APPARATUS, METHOD FOR FORMING THE SAME, METHOD FOR OPERATING NETWORK Illegal Intrusion Detection Device USING SAME |
-
2010
- 2010-03-15 WO PCT/JP2010/054759 patent/WO2010107107A1/en active Application Filing
- 2010-03-15 JP JP2011504891A patent/JP5327315B2/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06504152A (en) * | 1990-12-28 | 1994-05-12 | ロイターズ・リミテッド | Apparatus and method for creating user-definable video display documents showing changes in real-time data |
JP2001100999A (en) * | 1999-09-30 | 2001-04-13 | Mitsubishi Electric Corp | Rule-based system |
JP2007142767A (en) * | 2005-11-17 | 2007-06-07 | Univ Of Tsukuba | PATTERN MATCHING APPARATUS, METHOD FOR FORMING THE SAME, METHOD FOR OPERATING NETWORK Illegal Intrusion Detection Device USING SAME |
Non-Patent Citations (2)
Title |
---|
"''Multimedia, Distributed, Cooperative, and Mobile (DICOM02008) Symposium Ronbunshu'', [CD-ROM], 09 July 2008 (09.07.2008)", vol. 2008, article TADASHI SATO ET AL.: "Context Aware Service no Tameno Bunsan Fukugo Event Shori", pages: 975 - 981 * |
TADASHI SATO ET AL.: "Information Processing Society of Japan Kenkyu Hokoku", PROPOSAL OF SCALABLE CONTEXT PLATFORM, vol. 2005, no. 107, 1 November 2005 (2005-11-01), pages 5 - 9 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012212227A (en) * | 2011-03-30 | 2012-11-01 | Nec Corp | Event processing system, and event processing method and event processing program used for the same |
WO2014065115A1 (en) | 2012-10-23 | 2014-05-01 | 日本電気株式会社 | Rule distribution server, as well as event processing system, method, and program |
CN104756079A (en) * | 2012-10-23 | 2015-07-01 | 日本电气株式会社 | Rule distribution server, as well as event processing system, method, and program |
JPWO2014065115A1 (en) * | 2012-10-23 | 2016-09-08 | 日本電気株式会社 | Rule distribution server, event processing system, method and program |
US9736226B2 (en) | 2012-10-23 | 2017-08-15 | Nec Corporation | Rule distribution server, event processing system and method, and program |
US9571613B2 (en) | 2014-07-02 | 2017-02-14 | Fujitsu Limited | Portable terminal device that selects lowest amount of power consumed by a sensor and sensor's driver |
Also Published As
Publication number | Publication date |
---|---|
JPWO2010107107A1 (en) | 2012-09-20 |
JP5327315B2 (en) | 2013-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5299437B2 (en) | Event processing system, event processing method, rule distribution device, and rule distribution program | |
US8881173B2 (en) | Event processing system, distribution controller, event processing method, distribution control method, and program storage medium | |
US9360855B2 (en) | Anomaly detection system for detecting anomaly in multiple control systems | |
CN106817295A (en) | A kind of message processing apparatus and method | |
US11294736B2 (en) | Distributed processing system, distributed processing method, and recording medium | |
US20180262407A1 (en) | Telemetry Architecture for Integrated Circuits and Cloud Infrastructure | |
US20160205210A1 (en) | Control method and apparatus for publish/subscribe systems | |
JP5327315B2 (en) | Event processing system, event processing method, rule distribution device, and program storage medium | |
US20170279654A1 (en) | Data Processing System and Data Processing Method | |
CN110740164A (en) | Server determination method, regulation and control method, device, equipment and storage medium | |
US11470155B2 (en) | Subscription server, subscription terminal, information subscription method and system | |
JP5327314B2 (en) | Event processing system, event processing method, local system, dispatcher, and program storage medium | |
US9325629B2 (en) | Data processing apparatus and program | |
CN117909332A (en) | Data processing system, method and computer storage medium | |
CN112765212A (en) | Data processing method and device for transfer equipment | |
EP4295297A1 (en) | Distributed virtual data tank for cross service quota management | |
US12099868B2 (en) | Output management apparatus, output management method, and program | |
CN116932316A (en) | System parameter information determining method, data processing method, device and equipment | |
CN104407960A (en) | Method and device for monitoring data | |
CN111291127A (en) | Data synchronization method, device, server and storage medium | |
JP2011107744A (en) | Event processing system, event processing method, dispatch device and program for the dispatch device | |
US11927928B2 (en) | Output management apparatus, output management method, and program | |
WO2013105176A1 (en) | Event processing system, event processing control device, event processing method and program | |
US12248480B2 (en) | Providing data streams to a client | |
CN111104168B (en) | Calculation result submitting method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 10753598 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2011504891 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 10753598 Country of ref document: EP Kind code of ref document: A1 |