JP2009009304A - Processing method for stream data, and stream data processing system - Google Patents

Processing method for stream data, and stream data processing system Download PDF

Info

Publication number
JP2009009304A
JP2009009304A JP2007169256A JP2007169256A JP2009009304A JP 2009009304 A JP2009009304 A JP 2009009304A JP 2007169256 A JP2007169256 A JP 2007169256A JP 2007169256 A JP2007169256 A JP 2007169256A JP 2009009304 A JP2009009304 A JP 2009009304A
Authority
JP
Japan
Prior art keywords
data
time
cluster
analysis target
stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007169256A
Other languages
Japanese (ja)
Other versions
JP4990696B2 (en
Inventor
Tsuneyuki Imaki
常之 今木
Shinji Fujiwara
真二 藤原
Itaru Nishizawa
格 西澤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2007169256A priority Critical patent/JP4990696B2/en
Publication of JP2009009304A publication Critical patent/JP2009009304A/en
Application granted granted Critical
Publication of JP4990696B2 publication Critical patent/JP4990696B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Abstract

<P>PROBLEM TO BE SOLVED: To materialize processing for cutting and dividing a tuple on a stream into a partial tuple string of a phenomenon unit without taking trouble and cost in a stream data processing. <P>SOLUTION: In this stream data processing system 110, a tuple string on the stream is divided into the partial tuple strings based on a proximity relation system of time of a time-stamp imparted to each stream tuple on the stream, and a tuple set belonging to the latest partial tuple string in each the time is extracted as an analysis target in the time and is processed in a data analysis part 130 of the stream data processing system 110. Thereby, in the stream data processing, a set of observation data corresponding to each phenomenon can be extracted in just proportion. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、高レートで継続的に生成される時系列データをリアルタイムに処理する技術に関し、特に、ストリームデータ処理における、ある現象の発生を監視して生成され続ける観測データの系列から、個別の現象に対応したデータ集合を時間軸上の近接関係に基づいて抽出する処理に有効な技術に関する。   The present invention relates to a technique for processing time-series data continuously generated at a high rate in real time, and in particular, from a series of observation data continuously generated by monitoring the occurrence of a certain phenomenon in stream data processing. The present invention relates to a technique effective in processing for extracting a data set corresponding to a phenomenon based on proximity relations on a time axis.

ユビキタス情報社会の到来に伴い、RFID(Radio Frequency IDentification)読み取り情報、センサネットによる観測データ、ネットワークモニタリング、システムモニタリング、株価監視、交通情報といった、高レートで継続的に生成される時系列データが増加しており、これら時系列データを瞬時に解析し、ユーザにフィードバックするような、新たなサービスが望まれている。   With the advent of the ubiquitous information society, time-series data that is continuously generated at a high rate, such as RFID (Radio Frequency IDentification) reading information, sensor network observation data, network monitoring, system monitoring, stock price monitoring, and traffic information, will increase. Therefore, a new service is desired that analyzes these time series data instantaneously and feeds back to the user.

このようなサービスを構築するためのデータ処理方式として、ストリームデータ処理という技術が、データベース関連の学会で提案されている。ストリームデータ処理を利用すれば、従来のリレーショナルデータベースで利用されている、関係代数に基づいたデータ処理モデルを、時系列データの解析にも適用し、ユーザによるデータ処理の定義を、SQL(Structured Query Language)に類似した宣言型の検索言語で記述可能である。これにより、前記のようなサービスの開発作業を、大幅に効率化する。また、ストリームデータ処理の原理、実現方式は非特許文献1に開示されている(非特許文献1参照)。   As a data processing method for constructing such a service, a technique called stream data processing has been proposed by a database-related academic society. If stream data processing is used, the data processing model based on the relational algebra used in the conventional relational database is also applied to the analysis of time series data, and the definition of data processing by the user is defined by SQL (Structured Query). (Language) can be described in a declarative search language. This greatly improves the efficiency of the service development work as described above. The principle and implementation method of stream data processing are disclosed in Non-Patent Document 1 (see Non-Patent Document 1).

以降では、時系列データを表す用語として、無限に継続するデータ系列をストリームと呼び、ストリーム上の各データを、ストリームタプル、あるいは単にタプルと呼ぶ。ストリームタプルには、必ずタイムスタンプが付与されており、ストリームタプルは、ストリーム上において、タイムスタンプの昇順に整列される。   In the following, as a term representing time series data, a data series that continues infinitely is called a stream, and each data on the stream is called a stream tuple or simply a tuple. The stream tuple is always given a time stamp, and the stream tuple is arranged in ascending order of the time stamp on the stream.

ストリームデータ処理を利用すれば、結合演算、和・差・積集合演算、集計演算、グループ分け処理、重複排除といった、関係代数で定義されているデータ集合上の各種演算をストリームに対して実施することが可能である。   If stream data processing is used, various operations on a data set defined by relational algebra such as join operation, sum / difference / product set operation, aggregation operation, grouping processing, and deduplication are performed on the stream. It is possible.

但し、これらの演算は、有限要素数のデータ集合を対象とするため、絶え間なくタプルが到来し続ける(即ち、無限に集合の要素が増え続ける)ストリームに対してこれらの演算を適用するには、処理を実施する各時点で、解析対象となるタプルの集合を常に限定しつつ実行する必要がある。   However, since these operations target a data set with a finite number of elements, in order to apply these operations to streams where tuples continue to arrive (that is, the elements of the set continue to increase infinitely). Therefore, it is necessary to always limit the set of tuples to be analyzed at each time when the processing is performed.

ストリーム上から、解析対象となるタプル集合を限定する方法の一つとして、タプルの時間軸上での順序関係に基づき、ある時点で解析対象となるタプル集合を、常時切り出す、スライディングウィンドウ方式が提案されている。   As a method of limiting the tuple set to be analyzed from the stream, a sliding window method is proposed that always cuts out the tuple set to be analyzed at a certain point of time based on the order relation of tuples on the time axis. Has been.

該方式は、非特許文献1に開示されている。既存のスライディングウィンドウは、時間指定ウィンドウと個数指定ウィンドウの二種類に分類される。   This method is disclosed in Non-Patent Document 1. Existing sliding windows are classified into two types: time specification windows and number specification windows.

時間指定ウィンドウは、各タプルが解析対象となる期間を、該タプルのタイムスタンプを起点、該タイムスタンプよりある定数時間経過した時刻を終点とする期間に限定する。該定数時間は、ユーザにより任意の時間に指定可能である。個数指定ウィンドウは、同時に解析対象となるタプルを、最新の定数個に限定する。該個数は、ユーザにより任意の個数に指定可能である。   The time designation window limits the period during which each tuple is analyzed to a period starting from the time stamp of the tuple and ending at a time after a certain fixed time from the time stamp. The constant time can be specified at any time by the user. The number designation window simultaneously limits the tuples to be analyzed to the latest constant number. The number can be specified as an arbitrary number by the user.

ストリーム上から、解析対象のタプル集合を限定するもう一つの方法として、該集合の終了を示す、区切り信号をストーム中に挿入する方式が提案されている。この方式は、非特許文献2に開示されている(非特許文献2参照)。   As another method for limiting the set of tuples to be analyzed from the stream, a method of inserting a delimiter signal in the storm to indicate the end of the set has been proposed. This method is disclosed in Non-Patent Document 2 (see Non-Patent Document 2).

以上のように、ストリームデータ処理では、時系列データの中から解析対象となる集合を限定する機能を備えることで、データの変化量、移動平均値の算出、データの発生順序の検知、など、時系列データの解析における重要処理を、柔軟に定義することが可能である。
B.Babcock、S.Babu、M.Datar、R.Motwani and J.Widom、“Models and issues in data stream systems”、In Proc. of PODS 2002、 pp.1−16.(2002) T.Johonson、S.Muthukrishnan、V.Shkapenyuk and O.Spatscheck、“A Heartbeat Mechanism and its Application in Gigascope”、In Proc. of VLDB 2005、 pp.1079−1088.(2005)
As described above, in stream data processing, by providing a function to limit the set to be analyzed from time-series data, the amount of data change, calculation of moving average value, detection of data generation order, etc. It is possible to flexibly define important processes in the analysis of time series data.
B. Babcock, S.M. Babu, M.M. Data, R.A. Motwani and J.M. Widom, “Models and issues in data stream systems”, In Proc. of PODS 2002, pp. 1-16. (2002) T.A. Johnson, S.M. Muthukrishnan, V.M. Shkapenyuk and O.K. Spatcheck, "A Heartbeat Mechanism and its Application in Gigascope", In Proc. of VLDB 2005, pp. 1079-1088. (2005)

今後、ユビキタス情報機器の技術が発達することで、RFIDの輻輳読み取りによる検品業務の効率化、センサネットによる環境モニタリング、車載センサの高機能化によるテレマティクスの高度化、といったサービスが実現可能となる。   In the future, with the development of technology for ubiquitous information devices, services such as efficient inspection work by reading RFID congestion, environmental monitoring by sensor networks, and advancement of telematics by increasing the functionality of in-vehicle sensors can be realized.

これらのサービスを実現するためには、各種機器が生成する観測データから、リアルワールドで発生する現象を解析するデータ処理技術が必須になる。ストリームデータ処理は、このようなサービスの実現に適した技術と考えられている。   In order to realize these services, data processing technology that analyzes phenomena occurring in the real world from observation data generated by various devices is essential. Stream data processing is considered a technique suitable for realizing such services.

機器が生成する観測データから、現象解析を実現するためには、時系列な観測データの並びから、各現象に対応する部分データ列を抽出する処理が必須となる。   In order to realize the phenomenon analysis from the observation data generated by the device, it is essential to extract a partial data string corresponding to each phenomenon from the time series of observation data.

この処理の必要性を、図4のRFIDの輻輳読み取りを利用した入荷検品の例を用いて示す。この場合、ダンボール1303、1304が読み取りゲート1302を通過することで、該ダンボール中に梱包された各製品に関する情報を表す、表1310のようなデータが生成される。   The necessity of this processing will be described using an example of an incoming inspection using RFID congestion reading in FIG. In this case, when the corrugated cardboards 1303 and 1304 pass through the reading gate 1302, data as shown in Table 1310 representing information on each product packed in the corrugated cardboard is generated.

各行1311〜1317が、各製品に関するデータであり、製品IDを示すidカラム、製品重量を示すweightカラム、および製造日を示すdateカラムから成る。ダンボール1303を読み取ることでデータ1311〜1313が、ダンボール1304を読み取ることでデータ1314〜1317が生成される。ストリームデータ処理システム110は、該データを受け取り、各ダンボールについて、梱包製品数、総重量、製造期間を算出し、検査員などに通知する。   Each row 1311 to 1317 is data relating to each product, and includes an id column indicating a product ID, a weight column indicating a product weight, and a date column indicating a manufacturing date. Data 1311 to 1313 are generated by reading the cardboard 1303, and data 1314-1317 are generated by reading the cardboard 1304. The stream data processing system 110 receives the data, calculates the number of packed products, the total weight, and the production period for each cardboard, and notifies an inspector or the like.

また、検査員による作業のタイミングおよび読み取りデータが生成されるタイミングは、表1310の下方のタイミングウィンドウ1320に示される。検査員が、9:15’02にダンボール1となるダンボール1303を読み取りゲート1302を通過させることで、該ダンボールに梱包された各製品のデータ1321が9:15’02〜9:15’04の間に生成される。   The timing of work by the inspector and the timing at which the read data is generated are shown in a timing window 1320 below the table 1310. When the inspector reads the cardboard 1303 that becomes the cardboard 1 at 9: 15′02 and passes it through the gate 1302, the data 1321 of each product packed in the cardboard is 9: 15′02 to 9: 15′04. Generated in between.

該データをストリームデータ処理システム110で集計した結果を検査員が9:15’06に確認する。ダンボール2(1304)についても同様である。この処理において、ストリームデータ処理システムは、各ダンボール別に集計結果を生成する必要がある。   The inspector confirms the result of totaling the data by the stream data processing system 110 at 9: 15'06. The same applies to cardboard 2 (1304). In this process, the stream data processing system needs to generate a total result for each cardboard.

ここで、個々のダンボールの読み取りを一つの現象と捉えると、ストリームデータ処理は、時系列の製品データから、各ダンボール(即ち一つの現象)に対応する部分データ列を抽出する必要がある。   Here, when the reading of each cardboard is regarded as one phenomenon, the stream data processing needs to extract a partial data string corresponding to each cardboard (that is, one phenomenon) from the time series product data.

別の例として、図7のセンサネットによる環境監視の例を示す。空間に散らばって配置されたセンサ1401(IDがS01〜S23)により、音声、光量、温度、湿度、気圧、風圧、風速、振動、といった物理量を計測し、該計測データに基づいて、地震、火災、爆発、事故といった現象を解析する。   As another example, an example of environmental monitoring by the sensor network of FIG. 7 is shown. Physical quantities such as voice, light quantity, temperature, humidity, atmospheric pressure, wind pressure, wind speed, and vibration are measured by sensors 1401 (IDs S01 to S23) arranged in a space, and an earthquake, a fire is detected based on the measurement data. Analyzes phenomena such as explosions and accidents.

観測する物理量、現象の種類、および両者の組合せを問わず、このような現象解析に、センサネットが適用可能である。ここで、10:25、10:28、および10:32の各時刻に、現象1402、1403、および1404が発生し、それぞれの現象によって起因する物理量を、1405、1406、および1407の各線に囲まれたセンサ群が検知し、計測する。   Regardless of the physical quantity to be observed, the type of phenomenon, and the combination of both, a sensor network can be applied to such a phenomenon analysis. Here, phenomena 1402, 1403, and 1404 occur at times of 10:25, 10:28, and 10:32, and physical quantities resulting from these phenomena are surrounded by lines 1405, 1406, and 1407, respectively. The detected sensor group detects and measures.

表1410は、該計測データを示す。各行1411〜1422が、各計測データであり、計測したセンサのIDを示すidカラム、および計測値を示すvalueカラムから成る。現象1402により、データ1411〜1414が、現象1403により、データ1415〜1417が、現象1404により、データ1418〜1422が、それぞれ生成される。なお、センサが現象の発生場所に近い程、計測値は大きくなる。   Table 1410 shows the measurement data. Each row 1411 to 1422 is each measurement data, and includes an id column indicating the ID of the measured sensor and a value column indicating the measurement value. Data 1411 to 1414 is generated by the phenomenon 1402, data 1415 to 1417 is generated by the phenomenon 1403, and data 1418 to 1422 is generated by the phenomenon 1404. The closer the sensor is to the place where the phenomenon occurs, the larger the measured value.

ウィンドウ1430は、現象の発生タイミング、およびセンサによる計測データが生成されるタイミングを示した図である。このようなデータ系列から、個々の現象ごとの解析を実現するために、ストリームデータ処理は、時系列の計測データから、各現象に対応する部分データ列を抽出する必要がある。   Window 1430 is a diagram showing the occurrence timing of the phenomenon and the timing at which measurement data is generated by the sensor. In order to realize analysis for each phenomenon from such a data series, the stream data processing needs to extract a partial data string corresponding to each phenomenon from time-series measurement data.

以上のように、ストリームデータ処理を、ユビキタス機器が生成する観測データに基づく現象解析に適用するためには、ストリーム上のタプルを現象単位で切り分ける処理が必須となる。   As described above, in order to apply the stream data processing to the phenomenon analysis based on the observation data generated by the ubiquitous device, it is essential to process the tuples on the stream in units of phenomena.

これに対し、非特許文献1に開示されている、既存のスライディングウィンドウ方式である、時間指定ウィンドウ、および個数指定ウィンドウでは、このような処理が実現不可能であることを、図4の例で示す。   On the other hand, in the example of FIG. 4, it is impossible to realize such processing in the time designation window and the number designation window, which are the existing sliding window methods disclosed in Non-Patent Document 1. Show.

時間指定ウィンドウ1330は、タイミングウィンドウ1320に示したストリームに、時間指定ウィンドウを適用する場合を示す。ウィンドウ1331は、各製品データ1321が、解析対象となる期間を、黒丸から右方向(時間軸における未来方向)に伸びる線分で表している。   The time designation window 1330 indicates a case where the time designation window is applied to the stream indicated in the timing window 1320. The window 1331 represents a period in which each product data 1321 is an analysis target by a line segment extending from the black circle to the right direction (future direction on the time axis).

全ての線分の長さは、ユーザにより指定された解析対象期間1333と同一の長さとなる。ウィンドウ1332は、ウィンドウ1331に示した解析対象期間を持つストリームタプルから、製品合計数を算出した結果を示す。9:15’06において、検査員が該結果を確認する際には、ダンボール1303の製品数3が正しく確認される。   All line segments have the same length as the analysis target period 1333 specified by the user. Window 1332 shows the result of calculating the total number of products from the stream tuple having the analysis target period shown in window 1331. At 9: 15'06, when the inspector confirms the result, the product number 3 of the cardboard 1303 is correctly confirmed.

一方、9:15’18に検査員が該結果を確認する際には、まだダンボール1303の読み取りデータが解析対象期間として残っているため、ダンボール1304の製品数4とは異なる間違った値7が確認されることになる。   On the other hand, when the inspector confirms the result at 9: 15'18, since the reading data of the cardboard 1303 still remains as the analysis target period, an incorrect value 7 different from the product number 4 of the cardboard 1304 is obtained. Will be confirmed.

ウィンドウ1340は、解析対象期間を短くして、タイミングウィンドウ1320に示したストリームに、時間指定ウィンドウを適用する場合を示す。1343は、解析対象期間の長さを示す。ウィンドウ1341は、各データが解析対象となる期間を、またウィンドウ1342は、製品合計数を算出した結果を示す。   A window 1340 shows a case where a time designation window is applied to the stream shown in the timing window 1320 by shortening the analysis target period. 1343 indicates the length of the analysis target period. A window 1341 shows a period in which each data is an analysis target, and a window 1342 shows a result of calculating the total number of products.

データの解析対象期間が短い場合、そこから算出した結果の継続期間も短くなるため、9:15’06、9:15’18どちらの時刻においても、検査員は間違った値を確認することになる。   When the data analysis target period is short, the duration of the result calculated therefrom is also short, so that the inspector confirms the wrong value at either 9: 15'06 or 9: 15'18. Become.

検査員の作業スピードは一定ではないので、解析対象期間を長くとっても、短くとっても、以上のような不具合を完全に回避することは不可能である。   Since the work speed of the inspector is not constant, it is impossible to completely avoid the above-described problems even if the analysis target period is long or short.

個数指定ウィンドウ1350は、タイミングウィンドウ1320に示したストリームに、個数指定ウィンドウとして同時解析対象個数3個を適用する場合を示す。ウィンドウ1351は、各データが解析対象となる期間を、またウィンドウ1352は、製品合計数を算出した結果を示す。個数指定ウィンドウでは、常に最新の3個のデータのみが解析対象として残るため、製品合計数は、ダンボールに含まれる製品数に関わらず3となり、正しい結果が得られない。   The number designation window 1350 shows a case where three simultaneous analysis target numbers are applied to the stream shown in the timing window 1320 as the number designation window. A window 1351 shows a period in which each data is an analysis target, and a window 1352 shows a result of calculating the total number of products. In the number designation window, since only the latest three pieces of data always remain as analysis targets, the total number of products is 3, regardless of the number of products included in the cardboard, and a correct result cannot be obtained.

同様に、図7のセンサネットの例においても、現象の発生間隔、および各現象に対応する計測データ数は不定であるため、時間指定ウィンドウと個数指定ウィンドウでは、現象単位に計測データを切り分けることは不可能である。   Similarly, in the example of the sensor network of FIG. 7, the occurrence interval of phenomena and the number of measurement data corresponding to each phenomenon are indefinite. Therefore, the measurement data is divided into phenomenon units in the time designation window and the number designation window. Is impossible.

また、非特許文献2に開示されている、ストリーム中に区切り信号を挿入する方式においても、時系列データを現象単位に切り分ける処理において課題があることを、図4、図7の例を用いて示す。   In addition, the method disclosed in Non-Patent Document 2 for inserting a delimiter signal into a stream has a problem in the process of dividing time-series data into phenomenon units using the examples of FIGS. 4 and 7. Show.

図4の例に、区切り信号を挿入する方式を適用する場合、ダンボール間に仕切り棒を配置し、該仕切り棒の読み取りデータ時に、区切り信号をストリームに挿入することで、RFID読み取りデータをダンボール単位で切り分けることが可能である。   In the example of FIG. 4, when a method for inserting a delimiter signal is applied, a partition bar is arranged between cardboards, and when the partition bar read data is inserted, a delimiter signal is inserted into the stream so that RFID read data is in cardboard units. It is possible to carve out with.

または、読み取りゲート1302に赤外線センサを増設することで、ダンボールの区切りを検知することも可能である。または、検査員が、一つのダンボールを、読み取りゲート1302を通過させるごとに、読み取り終了ボタンを押すなどの操作によって、ダンボールの区切りを明示することも可能である。   Alternatively, a cardboard break can be detected by adding an infrared sensor to the reading gate 1302. Alternatively, each time an inspector passes one cardboard through the reading gate 1302, it is possible to clearly indicate the separation of the cardboard by an operation such as pressing a reading end button.

但し、これらの方法のいずれにおいても、仕切り棒の配置、赤外線センサの増設、読み取り終了ボタンの操作、などの余計な手間とコストが必要となる。   However, in any of these methods, extra labor and cost such as arrangement of partition bars, addition of an infrared sensor, and operation of a reading end button are required.

また、図7の例において、一現象に対応する計測データ列の終了を示す区切り信号を、ストリームに挿入するためには、一つの現象が発生した際に、該現象を検知したセンサの全てが、計測データを生成し終えたことを、判定する処理が必要である。   In addition, in the example of FIG. 7, in order to insert a delimiter signal indicating the end of the measurement data string corresponding to one phenomenon into the stream, when one phenomenon occurs, all the sensors that detect the phenomenon A process for determining that the measurement data has been generated is necessary.

しかし、センサネットでは、分散して配置された各センサが、独立に計測データを生成するため、このような判定処理の実現が困難である。   However, in the sensor network, since each sensor arranged in a distributed manner generates measurement data independently, it is difficult to realize such a determination process.

以上のように、ストリームデータ処理を、ユビキタス機器が生成する観測データに基づく現象解析に適用するためには、ストリーム上のタプルを現象単位で切り分ける処理が必須となるが、従来技術である、時間指定ウィンドウ、個数指定ウィンドウでは、このような処理は実現不可能であり、区切り信号挿入方式においても、実現のためにはユーザに余計な手間がかかる、コストがかかる、あるいは実現自体が困難な場合がある、といった問題があった。   As described above, in order to apply stream data processing to phenomenon analysis based on observation data generated by a ubiquitous device, processing for separating tuples on a stream by phenomenon unit is indispensable. Such a process cannot be realized in the specified window or number specified window, and even when the delimiter signal insertion method is used, it takes extra time for the user to implement, it is costly, or the implementation itself is difficult There was a problem that there was.

本発明の目的は、ストリームデータ処理において、ストリーム上のタプルを、現象単位の部分タプル列に切り分ける処理を、ユーザの手間とコストを必要とせずに、実現することのできる技術を提供することにある。   An object of the present invention is to provide a technique capable of realizing, in stream data processing, processing for dividing tuples on a stream into partial tuple sequences in units of phenomena without requiring user effort and cost. is there.

本発明の前記ならびにそのほかの目的と新規な特徴については、本明細書の記述および添付図面から明らかになるであろう。   The above and other objects and novel features of the present invention will be apparent from the description of this specification and the accompanying drawings.

本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。   Of the inventions disclosed in the present application, the outline of typical ones will be briefly described as follows.

以下、本願発明の概要を簡単に示す。   The outline of the present invention will be briefly described below.

本発明は、ストリーム上の各ストリームタプルに付与されたタイムスタンプの、時刻の近接関係系に基づいて、ストリーム上のタプル列を部分タプル列に分割し、各時刻において最新の部分タプル列に属するタプル集合を、該時刻における解析対象として、ストリームデータ処理システムのデータ解析部に渡す。   The present invention divides a tuple sequence on a stream into partial tuple sequences based on a time proximity relation system of time stamps assigned to each stream tuple on the stream, and belongs to the latest partial tuple sequence at each time. The tuple set is passed to the data analysis unit of the stream data processing system as an analysis target at the time.

以下では、該部分タプル列をデータクラスタと呼び、データクラスタを構成する際に参照する、タプルのタイムスタンプに関する条件を、クラスタ構成条件と呼ぶ。   Hereinafter, the partial tuple sequence is referred to as a data cluster, and a condition related to the time stamp of the tuple referred to when configuring the data cluster is referred to as a cluster configuration condition.

より具体的には、以下の処理より構成する、解析対象データ切り出し部を、システムのデータ入力口に備える、ストリームデータ処理システムを提供する。
(a)ユーザによるデータ処理定義から、クラスタ構成条件を抽出する処理。
(b)該システムに新規タプルが入力された場合は、該クラスタ構成条件に基づいて、該新規タプルのタイムスタンプをチェックし、該新規タプルが、その時点で解析対象となっているデータクラスタに、追加されるか否かを判定する処理。
(c)該新規タプルが、該解析対象となっているデータクラスタに追加されない場合には、該データクラスタに属する全てのタプルを、解析対象から外すように、データ解析部に通知し、新たなデータクラスタを解析対象として定義し、該新規タプルをデータクラスタに追加する処理。
(d)該新規タプルを解析対象としてデータ解析部に渡す処理。
More specifically, a stream data processing system is provided that includes an analysis target data cutout unit configured by the following processing at a data input port of the system.
(A) Processing for extracting a cluster configuration condition from a data processing definition by a user.
(B) When a new tuple is input to the system, the time stamp of the new tuple is checked based on the cluster configuration condition, and the new tuple is added to the data cluster currently being analyzed. The process of determining whether or not to be added.
(C) If the new tuple is not added to the data cluster that is the analysis target, the data analysis unit is notified so that all tuples belonging to the data cluster are excluded from the analysis target. A process of defining a data cluster as an analysis target and adding the new tuple to the data cluster.
(D) Processing for passing the new tuple as an analysis target to the data analysis unit.

クラスタ構成条件に基づく判定は、具体的に次の2タイプの何れかとする。   The determination based on the cluster configuration condition is specifically one of the following two types.

(1)新規タプルが到着した際に、該新規タプルのタイムスタンプと、その時点で解析 対象となっているデータクラスタに属するタプルのうち、最古のタプルのタイムスタンプとを比較し、両タイムスタンプの差がユーザによって指定された時間しきい値以内である場合には、該新規タプルを、該データクラスタに追加し、そうでない場合には、前記(c)の処理を実施する。   (1) When a new tuple arrives, the time stamp of the new tuple is compared with the time stamp of the oldest tuple among the tuples belonging to the data cluster being analyzed at that time. If the stamp difference is within the time threshold specified by the user, the new tuple is added to the data cluster; otherwise, the process of (c) is performed.

(2)新規タプルが到着した際に、該新規タプルのタイムスタンプと、その時点で解析対象となっているデータクラスタに属するタプルのうち、最新のタプルのタイムスタンプとを比較し、両タイムスタンプの差がユーザによって指定された時間しきい値以内である場合には、該新規タプルを、該データクラスタに追加し、そうでない場合には、前記(c)の処理を実施する。   (2) When a new tuple arrives, the time stamp of the new tuple is compared with the time stamp of the latest tuple among the tuples belonging to the data cluster being analyzed at that time. If the difference is within the time threshold specified by the user, the new tuple is added to the data cluster; otherwise, the process of (c) is performed.

以上により、時系列データにおいて、発生時間が近接している一固まりのデータ集合を、ストリームデータ処理の解析対象として切り出す。   As described above, in the time-series data, a group of data sets whose generation times are close to each other is cut out as an analysis target of stream data processing.

本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。   Among the inventions disclosed in the present application, effects obtained by typical ones will be briefly described as follows.

(1)ストリームデータ処理において、各現象に対応する観測データの集合を過不足なく抽出することが可能となる。   (1) In stream data processing, a set of observation data corresponding to each phenomenon can be extracted without excess or deficiency.

(2)また、データの発生時刻のみに基づいて、該抽出処理が可能となるため、データの区切り信号を生成するための手間やコストなどを不要にすることができる。   (2) Further, since the extraction process can be performed based only on the data generation time, it is possible to eliminate the labor and cost for generating the data delimiter signal.

(3)さらに、データの生成源が複数に分散されているので、データの区切り信号を生成することが困難な場合であっても抽出処理を実現することができる。   (3) Furthermore, since the data generation sources are distributed in plural, the extraction process can be realized even when it is difficult to generate a data delimiter signal.

以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that components having the same function are denoted by the same reference symbols throughout the drawings for describing the embodiment, and the repetitive description thereof will be omitted.

図1は、本発明の一実施の形態によるストリームデータ処理システムの構成例を示すブロック図、図2は、図1のストリームデータ処理システムによるデータクラスタ切り出し処理例を示すフローチャート、図3は、図1のストリームデータ処理システムによるストリームデータ処理の説明図、図4は、図1のストリームデータ処理システムを用いたRFIDの輻輳読み取りによる入荷検品作業処理の一例を示す説明図、図5は、図1のストリームデータ処理システムによるデータクラスタ切り出し処理の他の例を示すフローチャート、図6は、図1のストリームデータ処理システムによるストリームデータ処理の他の例を示す説明図、図7は、本発明の一実施の形態によるセンサネットによるデータ処理の一例を示す説明図、図8は、一実施の形態によるデータ切り出し処理を実現するストリームデータ処理システムの構成例を示すブロック図、図9は、図8のストリームデータ処理システムによるデータクラスタ切り出し処理の一例を示すフローチャート、図10は、図8のストリームデータ処理システムを用いたセンサネットによるストリームデータ処理の説明図、図11は、本発明の一実施の形態によるネットワークモニタリングの一例を示す説明図、図12は、図11のネットワークモニタリングを用いたデータ切り出し処理の説明図、図13は、図12のネットワークモニタリングによるデータ切り出し処理の一例を示すフローチャート、図14は、本発明の一実施の形態によるストリームデータ分割システムの構成例を示すブロック図、図15は、図12のネットワークモニタリングによるストリームデータ処理例を示す説明図である。   FIG. 1 is a block diagram showing a configuration example of a stream data processing system according to an embodiment of the present invention, FIG. 2 is a flowchart showing an example of data cluster cutout processing by the stream data processing system of FIG. 1, and FIG. 4 is an explanatory diagram of stream data processing by the stream data processing system of FIG. 1, FIG. 4 is an explanatory diagram showing an example of an incoming inspection work process by RFID congestion reading using the stream data processing system of FIG. 1, and FIG. FIG. 6 is an explanatory diagram showing another example of stream data processing by the stream data processing system of FIG. 1, and FIG. 7 is a diagram illustrating one example of the present invention. FIG. 8 is an explanatory diagram showing an example of data processing by the sensor network according to the embodiment. FIG. 9 is a block diagram showing a configuration example of a stream data processing system that implements data cutout processing according to the form of FIG. 8, FIG. 9 is a flowchart showing an example of data cluster cutout processing by the stream data processing system of FIG. 8, and FIG. FIG. 11 is an explanatory diagram illustrating an example of network monitoring according to an embodiment of the present invention, and FIG. 12 is a diagram illustrating the network monitoring of FIG. 11 using the sensor network using the stream data processing system. FIG. 13 is a flowchart showing an example of the data cutout process by the network monitoring in FIG. 12, FIG. 14 is a block diagram showing an example of the configuration of the stream data dividing system according to the embodiment of the present invention, FIG. 15 shows the network of FIG. Is an explanatory diagram showing a stream data processing example by click monitoring.

本実施の形態において、ストリームデータ処理システム110は、図1に示すように、ユーザが定義するデータ処理定義101を受け付けるデータ処理定義登録ユーザインタフェース111、解析対象データ切り出し部120、およびデータ解析部130から構成される。   In this embodiment, as shown in FIG. 1, the stream data processing system 110 includes a data processing definition registration user interface 111 that accepts a data processing definition 101 defined by a user, an analysis target data cutout unit 120, and a data analysis unit 130. Consists of

解析対象データ切り出し部120は、定義101に含まれるクラスタ構成条件に従って、入力ストリーム141から、解析対象データクラスタを抽出する処理を、実行する。データ解析部130は、定義101に従って、該データクラスタに対する解析処理を実行し、その結果ストリーム143,144をクライアントなどに出力する。   The analysis target data cutout unit 120 executes processing for extracting the analysis target data cluster from the input stream 141 according to the cluster configuration condition included in the definition 101. The data analysis unit 130 executes analysis processing on the data cluster in accordance with the definition 101, and outputs the result streams 143 and 144 to a client or the like.

データ処理定義登録ユーザインタフェース111は、受け取った定義101を解釈し、定義101の中からクラスタ構成条件の定義を抽出し、解析対象データ切り出し部120に対して通知する。また、定義101の内容に従い、データ解析処理実行木131を構成し、解析部130上に配置する。   The data processing definition registration user interface 111 interprets the received definition 101, extracts the definition of the cluster configuration condition from the definition 101, and notifies the analysis target data cutout unit 120 of it. Further, the data analysis processing execution tree 131 is configured according to the contents of the definition 101 and arranged on the analysis unit 130.

本実施の形態では、定義101中の記述“[CLUSTER WITHIN 3 seconds]”が、クラスタ構成条件の定義である。“WITHIN”は、前記クラスタ構成条件(1)のタイプであることを意味する。   In the present embodiment, the description “[CLUSTER WITHIN 3 seconds]” in the definition 101 is the definition of the cluster configuration condition. “WITHIN” means the type of the cluster configuration condition (1).

同部分の文字列が“INTERVAL”である場合は、前記クラスタ構成条件(2)のタイプであることを意味する。以降では(1)をWITHIN条件、(2)をINTERVAL条件と呼ぶ。また、“3 seconds”は、時間閾値が3秒であることを意味する。なお、時間閾値は、任意の時間を定義可能である。   When the character string in the same part is “INTERVAL”, it means that the type is the cluster configuration condition (2). Hereinafter, (1) is referred to as a WITHIN condition, and (2) is referred to as an INTERVAL condition. “3 seconds” means that the time threshold is 3 seconds. Note that any time can be defined as the time threshold.

以下、図1、および図2を用いて、解析対象データ切り出し部120の構成、および動作を説明する。但し、図2は、WITHIN条件を実現する、解析対象データ判定部121の動作を示す。   Hereinafter, the configuration and operation of the analysis target data cutout unit 120 will be described with reference to FIGS. 1 and 2. However, FIG. 2 shows an operation of the analysis target data determination unit 121 that realizes the WITHIN condition.

解析対象データ切り出し部120は、まず、データ処理定義登録ユーザインタフェース111から通知された該時間しきい値を、時間しきい値保存領域128に保存する。さらに、初期化処理S501に従って、クラスタ時刻格納領域126に時刻Time.MINを格納し、クラスタ番号格納領域127に−1を格納する。   The analysis target data cutout unit 120 first stores the time threshold value notified from the data processing definition registration user interface 111 in the time threshold value storage area 128. Furthermore, according to the initialization process S501, the time Time. MIN is stored, and -1 is stored in the cluster number storage area 127.

なお、Time.MINは、如何なる実時刻と比較しても、過去と判定される時刻とする。初期化S501が済むと、新規入力データの受信待ち処理S502に移行する。   Time. MIN is a time determined to be in the past even if compared with any actual time. After the initialization S501, the process proceeds to a new input data reception waiting process S502.

解析対象データ判定部121は、システム110の外部から新規入力データである入力ストリーム141を受信した際に、該データのタイムスタンプを入力データ時刻格納領域122に格納し、処理S503に従って、データ時刻比較部123を用いて、領域122に格納された該新規入力データのタイムスタンプと、クラスタ時刻格納領域126に格納されたクラスタ時刻を比較する。   When receiving the input stream 141 that is new input data from outside the system 110, the analysis target data determination unit 121 stores the time stamp of the data in the input data time storage area 122, and compares the data time according to processing S503. Using the unit 123, the time stamp of the new input data stored in the area 122 is compared with the cluster time stored in the cluster time storage area 126.

その比較により、該新規入力データのタイムスタンプが、該クラスタ時刻を超える場合には、処理S504に従って、該新規入力データのタイムスタンプに該時間しきい値を加算した時刻を、クラスタ時刻の更新値として、クラスタ時刻格納領域126に格納する。   If the comparison shows that the time stamp of the new input data exceeds the cluster time, the time obtained by adding the time threshold to the time stamp of the new input data is set to the update value of the cluster time in accordance with step S504. Is stored in the cluster time storage area 126.

さらに、処理S505に従って、その時点でクラスタ番号格納領域127に格納されているクラスタ番号を、解析対象外データ削除部125に通知する。続いて、処理S506に従って、クラスタ番号格納領域127に格納されたクラスタ番号を、インクリメントする。なお、初期化処理S501の後、最初に入力データを受信した際は、必ず、処理S504〜S506を実行することになる。これら処理の後、処理S507に移行する。   Further, according to the process S505, the cluster number currently stored in the cluster number storage area 127 is notified to the non-analysis target data deletion unit 125. Subsequently, in accordance with the processing S506, the cluster number stored in the cluster number storage area 127 is incremented. When input data is first received after the initialization process S501, the processes S504 to S506 are always executed. After these processes, the process proceeds to process S507.

一方、処理S503の比較により、新規入力データのタイムスタンプが、該クラスタ時刻以前の場合には、直接、処理S507に移行する。この処理S507では、該新規入力データに、その時点でクラスタ番号格納領域127に格納されているクラスタ番号を付与し、解析対象データ挿入部124に渡す。処理S507が終了すると、再び新規入力データの受信待ち処理S502に移行する。   On the other hand, if the time stamp of the new input data is earlier than the cluster time based on the comparison in step S503, the process directly proceeds to step S507. In this process S507, the cluster number currently stored in the cluster number storage area 127 is assigned to the new input data and passed to the analysis target data insertion unit 124. When the process S507 ends, the process proceeds to the new input data reception wait process S502 again.

データ挿入部124は、該新規入力データを、データ解析部130が保持する解析対象データバッファ132に挿入する。一方、データ削除部125は、通知されたクラスタ番号を付与された全てのデータを、バッファ132から削除する。   The data insertion unit 124 inserts the new input data into the analysis target data buffer 132 held by the data analysis unit 130. On the other hand, the data deletion unit 125 deletes all data to which the notified cluster number is assigned from the buffer 132.

データ解析部130は、バッファ132に対するデータ挿入/削除が発生する度に、データ解析処理実行木131に基づいて、バッファ132上に存在するデータ142の集合を対象とした解析処理を実施し、その結果を外部に送信する。なお、データ解析部130の実現方法は、たとえば、非特許文献1に開示されている。   Each time data insertion / deletion occurs in the buffer 132, the data analysis unit 130 performs an analysis process on a set of data 142 existing on the buffer 132 based on the data analysis process execution tree 131. Send the result to the outside. A method for realizing the data analysis unit 130 is disclosed in Non-Patent Document 1, for example.

以下、図3を用いて、図1の構成と図2の動作によって実現されるストリームデータ処理方法を、図4に示すRFIDの輻輳読み取りによる入荷検品作業に適用した場合の結果を示す。   Hereinafter, the results when the stream data processing method realized by the configuration of FIG. 1 and the operation of FIG. 2 is applied to the incoming inspection work by RFID congestion reading shown in FIG. 4 will be described with reference to FIG.

図3は、ストリームデータ処理システム110が、表1310(図4)に示すデータを、タイミングウィンドウ1320に示すタイミングで受信して、データ処理定義101に従って処理する際に、該処理方法を適用した結果を示している。   FIG. 3 shows the result of applying the processing method when the stream data processing system 110 receives the data shown in Table 1310 (FIG. 4) at the timing shown in the timing window 1320 and processes it according to the data processing definition 101. Is shown.

定義101は、表1310のデータ(rfid)を、時間しきい値3秒のWITHIN条件によりデータクラスタに分割し、各データクラスタについて、梱包製品数、総重量、製造期間を算出することを意味する。   Definition 101 means that the data (rfid) in Table 1310 is divided into data clusters according to the WITHIN condition with a time threshold of 3 seconds, and the number of packed products, the total weight, and the production period are calculated for each data cluster. .

図3において、ウィンドウ601は、各データの解析対象期間を示しており、ウィンドウ603は、時間しきい値の長さを示しており、時間しきい値の長さは、たとえば、3秒程度である。   In FIG. 3, a window 601 indicates the analysis target period of each data, a window 603 indicates the length of the time threshold, and the length of the time threshold is, for example, about 3 seconds. is there.

9:15’02にデータa(1311)が読み込まれると、データクラスタが新規に生成される。クラスタ番号は0となる。この際、クラスタ時刻は、データaのタイムスタンプ9:15’02に該時間しきい値3秒を加算した9:15’05に定まる。   When data a (1311) is read at 9: 15'02, a data cluster is newly generated. The cluster number is 0. At this time, the cluster time is determined to be 9: 15'05 obtained by adding the time threshold 3 seconds to the time stamp 9: 15'02 of the data a.

データa〜c(1311〜1313)のタイムスタンプは、該クラスタ時刻9:15’05以前であるので、データaと同一のデータクラスタ0に追加される(以降、クラスタ番号Nが付与されたデータから成るデータクラスタを、データクラスタNと表記する)。   Since the time stamps of the data a to c (1311 to 1313) are before the cluster time 9: 15'05, they are added to the same data cluster 0 as the data a (hereinafter, data to which the cluster number N is assigned). The data cluster consisting of is denoted as data cluster N).

この後、9:15’12にデータd(1314)を受信した際には、該クラスタ時刻を超えているので、この時点におけるクラスタ番号0が付与された、データa〜cの解析対象期間が終了する。   Thereafter, when the data d (1314) is received at 9: 15′12, the cluster time is exceeded, and therefore the analysis target period of the data a to c to which the cluster number 0 is given at this time is determined. finish.

一方、新たなデータクラスタ1が生成され、データdは該クラスタに追加される。また、クラスタ時刻は、データdのタイムスタンプ9:15’12に該時間しきい値3秒を加算した9:15’15に定まる。データe〜g(1315〜1317)のタイムスタンプは、該クラスタ時刻9:15’15以前であるので、データdと同一のデータクラスタ1に追加される。   On the other hand, a new data cluster 1 is generated and data d is added to the cluster. The cluster time is determined to be 9: 15'15, which is obtained by adding the time threshold value 3 seconds to the time stamp 9: 15'12 of the data d. Since the time stamps of the data e to g (1315 to 1317) are before the cluster time 9: 15'15, they are added to the same data cluster 1 as the data d.

ウィンドウ602は、時間しきい値の長さを示しており、各データの解析対象期間を持つストリームタプルから、製品合計数を算出した結果を示す。9:15’06、および9:15’18において、検査員が該結果を確認する際には、ダンボール1の製品数3、およびダンボール2の製品数4が、共に正しく確認されることになる。総重量、および製造期間についても、同様に正しい値が確認される。   A window 602 indicates the length of the time threshold, and shows the result of calculating the total number of products from the stream tuple having the analysis target period of each data. At 9: 15′06 and 9: 15′18, when the inspector confirms the result, the number of products of cardboard 1 and the number of products of cardboard 2 are both confirmed correctly. . Correct values are also confirmed for the total weight and the production period.

表610は、処理結果データを示す。データ1311〜1317の入力により、それぞれデータ611〜617を出力する。検査員は、9:15’06にデータ613を、9:15’18にデータ617を、それぞれ確認することになる。これらは、それぞれダンボール1およびダンボール2の集計値を正しく表している。   Table 610 shows the processing result data. Data 611 to 617 are output in response to the input of data 1311 to 1317, respectively. The inspector confirms the data 613 at 9: 15'06 and the data 617 at 9: 15'18. These correctly represent the total values of cardboard 1 and cardboard 2, respectively.

以上のように、図1の構成と図2の動作を用いることで、ユーザに余計な手間やコストを強いることなく、正しい現象解析を実現することが可能となる。   As described above, by using the configuration of FIG. 1 and the operation of FIG. 2, it is possible to realize a correct phenomenon analysis without imposing extra effort and cost on the user.

次に、図5を用いて、INTERVAL条件を実現する、解析対象データ判定部121の動作を示す。   Next, the operation of the analysis target data determination unit 121 that realizes the INTERVAL condition will be described with reference to FIG.

この図5においは、処理S504の実行位置以外は、図2の動作と全く同一である。処理S504が該位置にあることで、新規入力データが現時点の解析対象データクラスタに追加されるか否かに関わらず、クラスタ時刻は、必ず、該新規入力データのタイムスタンプ+時間しきい値の値に更新される。   5 is exactly the same as the operation of FIG. 2 except for the execution position of step S504. Since the processing S504 is in the position, the cluster time is always the time stamp of the new input data + the time threshold value regardless of whether or not the new input data is added to the current analysis target data cluster. Updated to value.

これにより、新規入力データが到着した際には、必ず、解析対象データクラスタにおける最新のデータのタイムスタンプと比較した、時間しきい値内か否かの判定が実施されることになる。   As a result, when new input data arrives, a determination is always made as to whether it is within the time threshold compared with the time stamp of the latest data in the analysis target data cluster.

以下、図6を用いて、図1の構成と図5の動作によって実現される、ストリームデータ処理方法を、RFIDの輻輳読み取りによる入荷検品作業に適用した場合の結果を示す。   Hereinafter, the results when the stream data processing method realized by the configuration of FIG. 1 and the operation of FIG. 5 is applied to an incoming inspection work by reading RFID congestion will be described with reference to FIG.

この場合、ストリームデータ処理システム110が、図6のタイミングウィンドウ810で示されるタイミングでデータを受信して、データ処理定義801に従って処理する際に、該処理方法を適用した結果を示している。   In this case, when the stream data processing system 110 receives data at the timing indicated by the timing window 810 in FIG. 6 and processes the data according to the data processing definition 801, the result of applying the processing method is shown.

定義801は、データ(rfid)を、時間しきい値4秒のINTERVAL条件によりデータクラスタに分割し、各データクラスタについて、梱包製品数、総重量、製造期間を算出することを意味する。   The definition 801 means that the data (rfid) is divided into data clusters according to the INTERVAL condition with a time threshold value of 4 seconds, and the number of packed products, the total weight, and the production period are calculated for each data cluster.

9:15’02にデータaが読み込まれると、データクラスタが新規に生成される。クラスタ番号は0となる。この際、クラスタ時刻は、データaのタイムスタンプ9:15’02に該時間しきい値823(4秒)を加算した9:15’06に定まる。   When data a is read at 9: 15'02, a data cluster is newly generated. The cluster number is 0. At this time, the cluster time is determined to be 9: 15'06, which is obtained by adding the time threshold value 823 (4 seconds) to the time stamp 9: 15'02 of the data a.

データbのタイムスタンプ9:15’03は該クラスタ時刻9:15’06以前であるので、データaと同一のデータクラスタ0に追加される。同時に、クラスタ時刻は、データbのタイムスタンプ9:15’03に該時間しきい値4秒を加算したクラスタ時刻は9:15’07に更新される。   Since the time stamp 9: 15'03 of the data b is before the cluster time 9: 15'06, it is added to the same data cluster 0 as the data a. At the same time, the cluster time is updated to 9: 15'07 by adding the time threshold 4 seconds to the time stamp 9: 15'03 of the data b.

データc〜eについても同様に、該時間しきい値4秒以内で連続しているため、全てデータクラスタ0に追加される。データe入力後のクラスタ時刻は、データeのタイムスタンプ9:15’07に該時間しきい値4秒を加算したクラスタ時刻は9:15’11に更新される。   Similarly, since the data c to e are continuous within the time threshold of 4 seconds, they are all added to the data cluster 0. The cluster time after the input of data e is updated to 9: 15'11 by adding the time threshold of 4 seconds to the time stamp 9: 15'07 of data e.

この後、9:15’13にデータfを受信した際には、該クラスタ時刻を超えているので、この時点におけるクラスタ番号0が付与された、データa〜eの解析対象期間(解析対象期間821で示す)が終了する。   Thereafter, when the data f is received at 9: 15′13, the cluster time is exceeded, and therefore the analysis target period (analysis target period) of the data a to e to which the cluster number 0 at this time is given. Is completed).

一方、新たなデータクラスタ1が生成され、データfは該クラスタに追加される。また、クラスタ時刻は、データfのタイムスタンプ9:15’13に該時間しきい値823の4秒を加算した9:15’17に定まる。データg〜iは、該時間しきい値823の4秒以内で連続しているため、全てデータクラスタ1に追加される。   On the other hand, a new data cluster 1 is generated and data f is added to the cluster. The cluster time is determined to be 9: 15'17, which is obtained by adding 4 seconds of the time threshold value 823 to the time stamp 9: 15'13 of the data f. Since the data g to i are continuous within 4 seconds of the time threshold value 823, they are all added to the data cluster 1.

9:15’09、および9:15’19において、検査員が、解析対象期間821を持つストリームタプルから、製品合計数を算出した結果822を確認する際には、ダンボール1の製品数5、およびダンボール2の製品数4が、共に正しく確認されることになる。総重量、および製造期間についても、同様に正しい値が確認される。   At 9: 15′09 and 9: 15′19, when the inspector confirms the result 822 of calculating the total number of products from the stream tuple having the analysis target period 821, the number of products of the cardboard 1 is 5, And the product number 4 of the corrugated cardboard 2 is confirmed correctly. Correct values are also confirmed for the total weight and the production period.

以上のように、図1の構成と図5の動作を用いることで、ユーザに余計な手間やコストを強いることなく、正しい現象解析を実現することが可能となる。また、大きなダンボールは、一定の時間しきい値以内にゲートを通過し終えることが困難であるため、図2の動作で実現されるWITHIN条件では、一つのダンボールに対応するデータを正しく纏めることができない。   As described above, by using the configuration of FIG. 1 and the operation of FIG. 5, it is possible to realize a correct phenomenon analysis without imposing extra effort and cost on the user. In addition, since it is difficult for a large cardboard to finish passing through the gate within a certain time threshold, the data corresponding to one cardboard can be correctly collected under the WITHIN condition realized by the operation of FIG. Can not.

このような場合でも、RFID読み取りデータが途切れることなく生成されている間は、一つのダンボールの通過中と見做すことができるので、図5の動作で実現されるINTERVAL条件を用いることで、該期間に生成されたデータ集合を、一つのダンボールに対応するデータとして抽出することが可能である。   Even in such a case, while the RFID read data is generated without interruption, it can be considered that one cardboard is passing, so by using the INTERVAL condition realized by the operation of FIG. The data set generated during the period can be extracted as data corresponding to one cardboard.

この例のように、一つの現象に対応するデータが、一定時間に収まらないものの、連続して生成され続ける場合は、本方法を適用できる。   As in this example, this method can be applied when data corresponding to one phenomenon does not fit in a certain period of time but is continuously generated.

次に、図7のセンサネットの例において想定するデータ処理の内容を示す。   Next, the contents of data processing assumed in the example of the sensor network of FIG. 7 are shown.

図7の例では、各センサの計測値の大小による、現象の発生頻度が高い位置を推定する。図では、センサS17の周辺で発生頻度が高いことが示されている。   In the example of FIG. 7, the position where the occurrence frequency of the phenomenon is high is estimated based on the magnitude of the measurement value of each sensor. In the figure, it is shown that the occurrence frequency is high around the sensor S17.

該推定処理として、各現象に対応するデータクラスタの中で、最も大きい値を示すデータを抽出し、該値を計測したセンサIDを抽出することが、本例で想定するデータ処理である。   As the estimation processing, extracting the data indicating the largest value in the data cluster corresponding to each phenomenon and extracting the sensor ID that measured the value is the data processing assumed in this example.

但し、このような推定処理においては、一つの現象に関する計測データ集合のみを対象にデータ処理を実施しても、正確な値は得られず、複数の現象に関するデータの解析が必要になる。これに対し、複数のデータクラスタを同時に解析対象とする、データ切り出し方法を提供する。   However, in such estimation processing, even if data processing is performed only on a measurement data set related to one phenomenon, an accurate value cannot be obtained, and analysis of data related to a plurality of phenomena is necessary. On the other hand, a data cut-out method for simultaneously analyzing a plurality of data clusters is provided.

以下、図8を用いて、該データ切り出し方法を実現するための構成を示す。   Hereinafter, a configuration for realizing the data cutout method will be described with reference to FIG.

データ処理定義301における記述“[CLUSTER 2 WITHIN 3 seconds]”が、該切り出し方法の定義であり、該記述は、時間しきい値3秒のWITHIN条件で切り出されるデータクラスタの、最新の2個を、同時に解析対象とすることを意味する。   The description “[CLUSTER 2 WITHIN 3 seconds]” in the data processing definition 301 is the definition of the extraction method, and the description includes the latest two data clusters extracted under the WITHIN condition with a time threshold of 3 seconds. , Which means that it is subject to analysis at the same time.

データ処理定義登録ユーザインタフェース111は、“CLUSTER”文字列の後に続く数字を、同時に解析対象とするデータクラスタ数と解釈し、解析対象データ切り出し部120に通知する。   The data processing definition registration user interface 111 interprets the number following the “CLUSTER” character string as the number of data clusters to be analyzed simultaneously, and notifies the analysis target data cutout unit 120 of the number.

解析対象データ切り出し部120は、該値を同時対象クラスタ数保存領域311に保存する。該構成は、領域311が追加されていることを除き、図1に示したストリームデータ処理システム110の構成と同一である。   The analysis target data cutout unit 120 stores the value in the simultaneous target cluster number storage area 311. This configuration is the same as that of the stream data processing system 110 shown in FIG. 1 except that the area 311 is added.

以下、図9を用いて、該データ切り出し方法を実現するための動作を示す。   The operation for realizing the data cutout method will be described below with reference to FIG.

この場合、処理S901が、図2における処理S505の代わりに位置することを除き、図2の動作と同一である。処理S505は、新規入力データが新規のデータクラスタに属すると判定される場合、その時点で解析対象であったデータクラスタのクラスタ番号を、解析対象外データ削除部125に通知することであった。   In this case, the process S901 is the same as the operation in FIG. 2 except that the process S901 is positioned instead of the process S505 in FIG. Process S505 is to notify the non-analysis data deletion unit 125 of the cluster number of the data cluster that was the analysis target at that time when it is determined that the new input data belongs to the new data cluster.

一方、図9の処理S901は、その時点のクラスタ番号より、同時対象クラスタ数を減じた値に、さらに1を加えた値を、削除するデータクラスタのクラスタ番号として、データ削除部125に通知する。外処理により、新規に生成されるデータを含めて、同時対象クラスタ数のデータクラスタを、解析対象として保持することになる。なお、同時対象クラスタ数が1の場合、処理S901は処理S505と一致する。   On the other hand, the processing S901 in FIG. 9 notifies the data deletion unit 125 of a value obtained by adding 1 to the value obtained by subtracting the number of simultaneous target clusters from the current cluster number as the cluster number of the data cluster to be deleted. . As a result of the external processing, the number of simultaneous target cluster data clusters including newly generated data is held as the analysis target. If the number of simultaneous target clusters is 1, the process S901 is identical to the process S505.

以上は、WITHIN条件に対して、同時対象クラスタ数の指定を追加したデータ切り出し方法に関する説明である。   The above is the description regarding the data extraction method in which the designation of the number of simultaneous target clusters is added to the WITHIN condition.

INTERVAL条件に対しても、同様にして、同時対象クラスタ数の指定を追加したデータ切り出し方法を実現可能であることは自明である。該切り出し方法を実現するための構成は、図8と同一であり、動作は、図5の処理S505を処理S901に置き換えたもので実現できる。   It is self-evident that a data cutout method in which designation of the number of simultaneous target clusters is added can also be realized in the same manner for the INTERVAL condition. The configuration for realizing the cutout method is the same as that in FIG. 8, and the operation can be realized by replacing the process S505 in FIG. 5 with a process S901.

以下、図10を用いて、図8の構成と図9の動作によって実現される、ストリームデータ処理方法を、図7に示すセンサネットによる環境監視に適用した場合の結果を示す。   Hereinafter, the results when the stream data processing method realized by the configuration of FIG. 8 and the operation of FIG. 9 is applied to the environment monitoring by the sensor network shown in FIG. 7 will be described using FIG.

図10は、ストリームデータ処理システム110が、表1410に示すデータを、図10のウィンドウ1430のタイミングで受信して、データ処理定義301,1001に従って処理する際に、該処理方法を適用した結果を示している。   FIG. 10 shows the result of applying the processing method when the stream data processing system 110 receives the data shown in Table 1410 at the timing of the window 1430 in FIG. 10 and processes the data according to the data processing definitions 301 and 1001. Show.

定義301は、データ(sensor)1410を、時間しきい値3秒のWITHIN条件によりデータクラスタに分割し、最新のデータクラスタ2個を同時に解析対象とし、センサごとに計測値を加算することを意味する。また、定義1001は、該加算値が最大となるセンサのIDを抽出することを意味する。ウィンドウ1010は、各データの解析対象期間を示しており、ウィンドウ1010においては、時間しきい値1011,1012,1013の長さ(たとえば、3秒)をそれぞれ示している。   Definition 301 means that data (sensor) 1410 is divided into data clusters according to a WITHIN condition with a time threshold of 3 seconds, and the latest two data clusters are simultaneously analyzed, and the measured values are added for each sensor. To do. The definition 1001 means that the ID of the sensor having the maximum added value is extracted. A window 1010 indicates an analysis target period of each data, and the window 1010 indicates the lengths of the time threshold values 1011, 1012, and 1013 (for example, 3 seconds).

データ1411〜1414は、データクラスタ0に、データ1415〜1417は、データクラスタ1に、データ1418〜1422は、データクラスタ2に、それぞれ属することになる。   Data 1411 to 1414 belong to data cluster 0, data 1415 to 1417 belong to data cluster 1, and data 1418 to 1422 belong to data cluster 2, respectively.

データ1411〜1414までが入力された状態において、10:28の時点でデータ1415が入力されると、処理S503の条件分岐でNoに倒れ、処理S504、S901、S506が実行される。   When data 1411 to 1414 are input, if data 1415 is input at 10:28, the condition branch of processing S503 falls to No, and processing S504, S901, and S506 are executed.

但し、処理S901では、その時点でのクラスタ番号0から同時対象クラスタ数2を減じて1を加えたクラスタ番号−1が負であるため、何も実行されない。そのため、データクラスタ0に属するデータは解析対象として残ることになる。   However, in the process S901, nothing is executed because the cluster number −1 obtained by subtracting the simultaneous target cluster number 2 from the cluster number 0 at the time and adding 1 is negative. Therefore, data belonging to the data cluster 0 remains as an analysis target.

一方、データ1411〜1417が入力された状態において、10:32の時点でデータ1418が入力されると、処理S503の条件分岐でNoに倒れ、処理S504、S901、S506が実行される。   On the other hand, if the data 1418 is input at the time of 10:32 in the state where the data 1411 to 1417 are input, the condition branch of the process S503 falls to No, and the processes S504, S901, and S506 are executed.

このとき、その時点でのクラスタ番号1から同時対象クラスタ数2を減じて1を加えたクラスタ番号が0となるため、データクラスタ0に属するデータ1411〜1414が解析対象から外れることになる。   At this time, the cluster number obtained by subtracting the number 2 of simultaneously targeted clusters from the cluster number 1 at that time and adding 1 is 0, so that the data 1411 to 1414 belonging to the data cluster 0 are excluded from the analysis target.

一方、新しいデータクラスタ2が生成され、データ1418が追加される。その結果、同時対象クラスタ数2個のデータクラスタ1、および2が、解析対象として切り出されることになる。   On the other hand, a new data cluster 2 is generated and data 1418 is added. As a result, data clusters 1 and 2 having two simultaneous target clusters are extracted as analysis targets.

表1020は、定義301による処理結果データを示す。データ1411〜1422の入力により、それぞれデータ1021〜1032を算出する。データ1026は、データクラスタ0、および1に属する、センサS17による計測データの計測値を加算した値が、value_sumカラムの値となる。   A table 1020 shows processing result data according to the definition 301. Data 1021 to 1032 are calculated by inputting data 1411 to 1422, respectively. In the data 1026, a value obtained by adding the measurement values of the measurement data by the sensor S17 belonging to the data clusters 0 and 1 is the value in the value_sum column.

同様に、データ1027は、データクラスタ0、および1に属する、センサS18による計測データの計測値加算した値が、データ1032は、データクラスタ1、および2に属する、センサS17による計測データの計測値を加算した値が、それぞれ、value_sumカラムの値となる。   Similarly, the data 1027 is obtained by adding the measurement values of the measurement data by the sensor S18 belonging to the data clusters 0 and 1, and the data 1032 is the measurement value of the measurement data by the sensor S17 belonging to the data clusters 1 and 2. Are added to the value_sum column.

表1040は、定義1001による処理結果データを示す。データ1021〜1032が算出されることで、それぞれデータ1041〜1052を出力する。データ1044、1047、および1052が、それぞれ現象1402、1403、および1404の発生後の解析結果となる。2つの現象を解析対象とした結果である、データ1047、1052においては、想定する答えであるセンサIDS17が含まれることになる。   A table 1040 shows processing result data according to the definition 1001. By calculating data 1021 to 1032, data 1041 to 1052 are output, respectively. Data 1044, 1047, and 1052 are analysis results after occurrence of the phenomena 1402, 1403, and 1404, respectively. The data 1047 and 1052 that are the results of analyzing two phenomena include the sensor IDS 17 that is an assumed answer.

以上のように、図8の構成と図9の動作を用いることで、複数のデータクラスタを解析対象とするデータ切り出し方法が実現され、複数の現象を対象とした解析が可能となる。該データ切り出し方法は、解析精度の向上などを目的に利用することができる。   As described above, by using the configuration of FIG. 8 and the operation of FIG. 9, a data extraction method for analyzing a plurality of data clusters is realized, and analysis for a plurality of phenomena is possible. The data cutout method can be used for the purpose of improving analysis accuracy.

次に、図11を用いて、ネットワークモニタリングの例を示す。   Next, an example of network monitoring will be described with reference to FIG.

ネットワークモニタリングは、図示するように、ネットワークルータ1501、および計算機1502,1503,1504から構成されている。   As shown in the figure, the network monitoring includes a network router 1501 and computers 1502, 1503 and 1504.

ルータ1501をパケットが通過することで、表1510のようなデータが生成される。各行1511〜1522が、各パケットに関するデータであり、送信元を示すsrcカラム、送信先を示すdstカラム、およびデータ長を示すlengthカラムからなる。   As the packet passes through the router 1501, data as shown in Table 1510 is generated. Each row 1511 to 1522 is data relating to each packet, and includes a src column indicating a transmission source, a dst column indicating a transmission destination, and a length column indicating a data length.

ストリームデータ処理システム110は、該データを受け取り、発生時間が近接する複数のパケットを、一つのメッセージとして切り出し、メッセージ毎のメッセージ長を算出する。   The stream data processing system 110 receives the data, extracts a plurality of packets whose generation times are close to each other as one message, and calculates a message length for each message.

図11におけるタイミングウィンドウ1530は、パケットに関する情報が生成されるタイミングを示した図である。このように、複数の計算機1502,1503,1504から送出されるパケットに関するデータが、一本のストリームに混在するため、データのタイムスタンプの近接関係のみに基づいて、該切り出し処理を実現することはできない。   A timing window 1530 in FIG. 11 is a diagram showing a timing at which information about a packet is generated. As described above, since data related to packets sent from a plurality of computers 1502, 1503, and 1504 are mixed in one stream, it is possible to realize the extraction processing based only on the proximity relationship of the time stamps of the data. Can not.

一方で、送信元となる個別の計算機に着目すれば、一つのメッセージを構成するパケット列は、連続して送出され、異なるメッセージ間の送信間隔は、それに比べて十分長い時間となるため、INTERVAL条件を適用することで、パケットに関するデータを、メッセージ単位で切り出すことが可能である。   On the other hand, if attention is paid to an individual computer as a transmission source, a packet sequence constituting one message is continuously transmitted, and the transmission interval between different messages is sufficiently longer than that. By applying the condition, it is possible to cut out data related to the packet in units of messages.

図11におけるウィンドウ1540,1550,1560は、タイミングウィンドウ1530に示したデータ系列から、それぞれ計算機1502,1503,1504を送信元とするパケットに関するデータのみを抽出した図である。   Windows 1540, 1550, and 1560 in FIG. 11 are diagrams in which only data related to packets having computers 1502, 1503, and 1504 as transmission sources are extracted from the data series shown in the timing window 1530, respectively.

このように分類することで、計算機1502を送信元とするパケットに関するデータは、データクラスタ1541,1542に、計算機1503を送信元とするパケットに関するデータは、データクラスタ1551,1552に、計算機1504を送信元とするパケットに関するデータは、データクラスタ1561に、それぞれ切り分けることが可能となる。該分類処理は、データ1511〜1522のsrcカラムに基づくことで実現できる。   By classifying in this way, data relating to packets originating from the computer 1502 is sent to the data clusters 1541 and 1542, and data relating to packets originating from the computer 1503 is sent to the data clusters 1551 and 1552. Data relating to the original packet can be divided into data clusters 1561. The classification process can be realized based on the src column of the data 1511 to 1522.

以下、図12を用いて、該データ切り出し方法を実現するための構成を示す。   Hereinafter, a configuration for realizing the data cutout method will be described with reference to FIG.

データ処理定義401における記述“[PARTITION BY src CLUSTER INTERVAL 1 seconds]”が、該切り出し方法の定義であり、該記述は、srcカラムの値同一性に基づいてデータをグループ分けし、グループごとに、時間しきい値1秒のINTERVAL条件で切り出されるデータクラスタを解析対象とすることを意味する。   The description “[PARTITION BY src CLUSTER INTERVAL 1 second]” in the data processing definition 401 is the definition of the extraction method. The description groups data based on the value identity of the src column, This means that a data cluster cut out under the INTERVAL condition with a time threshold of 1 second is to be analyzed.

データ処理定義登録ユーザインタフェース111は、“PARTITION BY”文字列の後に続く文字列を、データのグループ分けに利用するカラムの名称と解釈し、解析対象データ切り出し部120に通知する。以降、該カラムをグループ識別子と呼ぶ。   The data processing definition registration user interface 111 interprets the character string that follows the “PARTITION BY” character string as the name of a column used for data grouping, and notifies the analysis target data cutout unit 120. Hereinafter, this column is referred to as a group identifier.

この構成は、図1に示したストリームデータ処理システム110の構成を、グループ別のデータ切り出し処理に対応するように拡張した形となる。クラスタ時刻格納領域126、およびクラスタ番号格納領域127は、グループごとに必要である。両領域をまとめて、グループ別格納領域と呼ぶ。   This configuration is obtained by extending the configuration of the stream data processing system 110 shown in FIG. 1 so as to correspond to the data extraction processing for each group. The cluster time storage area 126 and the cluster number storage area 127 are necessary for each group. Both areas are collectively referred to as a group-specific storage area.

グループ別格納領域は、一つのグループに対して一つ、また一つのみ存在する必要がある。この管理を実現するために、グループ識別子の値とグループ別格納領域との対応関係を保持する、グループ別格納領域管理表411を備える。   There should be only one storage area for each group, and only one for each group. In order to realize this management, a group-specific storage area management table 411 that holds the correspondence between group identifier values and group-specific storage areas is provided.

グループ別格納領域412〜414は、それぞれ送信元の計算機1502,1503,1504のパケットに関するデータを、データクラスタに切り分けるために利用する。管理表411には、グループ識別子の値A〜Cと、グループ別格納領域412〜414との対応関係を保持する。   The group-specific storage areas 412 to 414 are used to separate data relating to packets of the transmission source computers 1502, 1503, and 1504 into data clusters. The management table 411 holds the correspondence between the group identifier values A to C and the group storage areas 412 to 414.

以下、図13を用いて、該データ切り出し方法を実現するための動作を示す。   Hereinafter, the operation for realizing the data cutout method will be described with reference to FIG.

図13の動作では、図2の動作に、処理S1101,S1102を追加し、処理S501,S505を、それぞれ処理S501G,S505Gに置き換えた形となる。該動作は新規入力データの受信待ち処理S502から開始する。   In the operation of FIG. 13, processing S1101 and S1102 are added to the operation of FIG. 2, and processing S501 and S505 are replaced with processing S501G and S505G, respectively. This operation starts from the new input data reception waiting process S502.

新規入力データを受信すると、処理S1101に従って、該データのグループ識別子の値を参照し、グループ別格納領域管理表411より、該値に対応するグループ別格納領域を抽出する。   When new input data is received, the group identifier corresponding to the value is extracted from the group-specific storage area management table 411 by referring to the group identifier value of the data in accordance with step S1101.

さらに、処理S1102に従って、該グループ別格納領域が抽出されなかった場合は、処理S501Gに移行する。処理S501Gは、グループ別格納領域を新規に生成し、該グループ識別子の値と、該グループ別格納領域との対応関係を、管理表411に登録し、該グループ別格納領域を初期化する。該初期化処理は、処理S501と同様である。   Furthermore, if the group-specific storage area is not extracted in accordance with process S1102, the process proceeds to process S501G. The process S501G newly creates a storage area for each group, registers the correspondence between the group identifier value and the storage area for each group in the management table 411, and initializes the storage area for each group. The initialization process is the same as the process S501.

以上の処理によって得られたグループ別格納領域を利用して、処理S503〜S507の処理を実行する。但し、処理S505では、解析対象外データ削除部に、解析対象外となったデータクラスタのクラスタ番号と、グループ識別子の値を併せて通知する。   Using the group-specific storage area obtained by the above processing, the processing in steps S503 to S507 is executed. However, in process S505, the non-analysis target data deletion unit is notified of the cluster number of the data cluster that has not been analyzed and the value of the group identifier.

以上は、WITHIN条件に対して、グループ分け指定を追加したデータ切り出し方法に関する説明である。INTERVAL条件に対しても、同様にして、グループ分け指定を追加したデータ切り出し方法を実現可能であることは自明である。   The above is the description regarding the data cutout method in which the grouping designation is added to the WITHIN condition. It is self-evident that a data extraction method with grouping designation added can be realized in the same manner for the INTERVAL condition.

該切り出し方法を実現するための構成は、図12と同一であり、動作は、図13の処理S504を、処理S507の直前に移したもので実現できる。   The configuration for realizing the clipping method is the same as that in FIG. 12, and the operation can be realized by moving the process S504 in FIG. 13 immediately before the process S507.

以下、図15を用いて、図12の構成と図13の動作によって実現されるストリームデータ処理方法を、図11に示すネットワークモニタリングに適用した場合の結果を示す。   Hereinafter, the results when the stream data processing method realized by the configuration of FIG. 12 and the operation of FIG. 13 is applied to the network monitoring shown in FIG. 11 will be described using FIG.

図15は、ストリームデータ処理システム110が、表1510に示すデータを、タイミングウィンドウ1530に示すタイミングで受信して、データ処理定義401に従って処理する際に、該処理方法を適用した結果を示している。   FIG. 15 shows a result of applying the processing method when the stream data processing system 110 receives the data shown in Table 1510 at the timing shown in the timing window 1530 and processes the data according to the data processing definition 401. .

定義401は、データ(nlog)1510を、srcカラムの値同一性に基づいてデータをグループ分けし、グループごとに、時間しきい値1秒のINTERVAL条件で切り出されるデータクラスタを解析対象とし、送信元計算機ごとに、パケット長を加算することを意味する。   Definition 401 divides data (nlog) 1510 into groups based on the value identity of the src column, and for each group, analyzes data clusters that are cut out under the INTERVAL condition with a time threshold value of 1 second, and is transmitted. This means that the packet length is added for each original computer.

ウィンドウ1210,1220,1230は、srcカラムの値A,B,Cの各データの解析対象期間をそれぞれ示している。また、ウィンドウ1210においては、時間しきい値1201の値の長さ(たとえば、1秒)を示している。   Windows 1210, 1220, and 1230 indicate analysis target periods of the data A, B, and C in the src column, respectively. The window 1210 shows the length of the time threshold value 1201 (for example, 1 second).

表1240は、定義401による処理結果データを示す。データ1511〜1522の入力により、それぞれデータ1241〜1252を算出する。データ1244,1251,1245,1252,1248が、データクラスタ1541,1542,1551,1552,1561からそれぞれ算出されるメッセージ長を示している。   A table 1240 shows processing result data according to the definition 401. Data 1241 to 1252 are calculated by inputting the data 1511 to 1522, respectively. Data 1244, 1251, 1245, 1252, and 1248 indicate message lengths calculated from the data clusters 1541, 1542, 1551, 1552, and 1561, respectively.

以上のように、図12の構成と図13の動作を用いることで、一本のストリームに複数の現象が混在する場合にも、データ列を分離したうえで、現象単位のデータ切り出しが可能となる。   As described above, by using the configuration of FIG. 12 and the operation of FIG. 13, even when a plurality of phenomena are mixed in one stream, it is possible to extract data in units of phenomena after separating the data strings. Become.

次に、図14を用いて、時系列データをデータクラスタに分割し、各データにクラスタ番号を付与して、データベースに格納するストリームデータ分割システムの構成を示す。   Next, the configuration of a stream data division system that divides time-series data into data clusters, assigns a cluster number to each data, and stores the data in a database will be described with reference to FIG.

図14に示す構成は、図1の構成における、解析対象データ切り出し部120の変形である。ストリームデータ分割システム210は、ユーザによるクラスタ分割方法定義201を受け付けるクラスタ分割方法定義登録ユーザインタフェース211、および、クラスタ決定部212から構成される。   The configuration shown in FIG. 14 is a modification of the analysis target data cutout unit 120 in the configuration of FIG. The stream data division system 210 includes a cluster division method definition registration user interface 211 that accepts a cluster division method definition 201 by a user, and a cluster determination unit 212.

クラスタ決定部212の構成、および動作は、図1の構成、および図2の動作と同一である。但し、データ挿入部124Cは、データベース220上の関係表に、データ221とクラスタ番号222の組を挿入する。また、解析対象外データ削除部125は存在しない。   The configuration and operation of the cluster determination unit 212 are the same as the configuration of FIG. 1 and the operation of FIG. However, the data insertion unit 124C inserts a set of the data 221 and the cluster number 222 into the relation table on the database 220. Further, the non-analysis target data deletion unit 125 does not exist.

以上は、クラスタ分割方法として、WITHIN条件を指定する場合の説明であるが、クラスタ決定部の構成、および動作を切り替えることで、INTERVAL条件の指定、および、グループ分け指定も可能であることは自明である。   The above is a description of the case where the WITHIN condition is specified as the cluster dividing method. However, it is obvious that the INTERVAL condition and the grouping can be specified by switching the configuration and operation of the cluster determining unit. It is.

以上の構成により、現象単位に時系列データを分割したうえで、データベースに格納することが可能となる。仮に、データをタイムスタンプと共に、データベースに格納したとしても、該タイムスタンプに基づいて、事後分析により現象単位に切り分ける処理を、SQLで定義することは困難である。これに対し、本構成を適用することで、そのような処理が不要となる。   With the above configuration, time series data can be divided into phenomenon units and stored in a database. Even if the data is stored in the database together with the time stamp, it is difficult to define the processing for dividing into the phenomenon units by the post-mortem analysis based on the time stamp. On the other hand, by applying this configuration, such processing becomes unnecessary.

また、図14の構成を、非特許文献2に示される、区切り信号方式の入り口に配置し、クラスタ番号がインクリメントされる際に、データ挿入部124Cが、区切り信号を併せて送出する機能を追加することで、区切り信号方式の拡張機能として、本発明を適用することも可能である。   Further, the configuration shown in FIG. 14 is arranged at the entrance of the delimiter signal system shown in Non-Patent Document 2, and a function for the data insertion unit 124C to send a delimiter signal together when the cluster number is incremented is added. Thus, the present invention can be applied as an extended function of the delimiter signal system.

以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。   As mentioned above, the invention made by the present inventor has been specifically described based on the embodiment. However, the present invention is not limited to the embodiment, and various modifications can be made without departing from the scope of the invention. Needless to say.

本発明は、RFID読み取り情報、センサネットによる観測データ、ネットワークモニタリング、システムモニタリング、株価監視、交通情報といった高レートで継続的に生成される時系列データをリアルタイムに処理するストリームデータ処理技術において、時系列データから、ある時点で解析対象となるデータを抽出するスライディングウィンドウ処理に関し、特に、ある現象の発生を監視して生成され続ける観測データの系列から、個別の現象に対応したデータ集合を時間軸上の近接関係に基づいて、抽出する技術に適している。   The present invention relates to a stream data processing technology for processing time-series data continuously generated at a high rate, such as RFID reading information, sensor network observation data, network monitoring, system monitoring, stock price monitoring, and traffic information, in real time. For sliding window processing that extracts data to be analyzed from series data at a certain point in time, in particular, from a series of observation data that is continuously generated by monitoring the occurrence of a phenomenon, a data set corresponding to each phenomenon is plotted on a time axis. It is suitable for the technique of extracting based on the proximity relationship above.

本発明の一実施の形態によるストリームデータ処理システムの構成例を示すブロック図である。It is a block diagram which shows the structural example of the stream data processing system by one embodiment of this invention. 図1のストリームデータ処理システムによるデータクラスタ切り出し処理例を示すフローチャートである。It is a flowchart which shows the example of a data cluster cut-out process by the stream data processing system of FIG. 図1のストリームデータ処理システムによるストリームデータ処理の説明図である。It is explanatory drawing of the stream data processing by the stream data processing system of FIG. 図1のストリームデータ処理システムを用いたRFIDの輻輳読み取りによる入荷検品作業処理の一例を示す説明図である。It is explanatory drawing which shows an example of the goods inspection work process by the congestion reading of RFID using the stream data processing system of FIG. 図1のストリームデータ処理システムによるデータクラスタ切り出し処理の他の例を示すフローチャートである。7 is a flowchart illustrating another example of a data cluster cutout process performed by the stream data processing system of FIG. 1. 図1のストリームデータ処理システムによるストリームデータ処理の他の例を示す説明図である。It is explanatory drawing which shows the other example of the stream data processing by the stream data processing system of FIG. 本発明の一実施の形態によるセンサネットによるデータ処理の一例を示す説明図である。It is explanatory drawing which shows an example of the data processing by the sensor network by one embodiment of this invention. 本発明の一実施の形態によるデータ切り出し処理を実現するストリームデータ処理システムの構成例を示すブロック図である。It is a block diagram which shows the structural example of the stream data processing system which implement | achieves the data cut-out process by one embodiment of this invention. 図8のストリームデータ処理システムによるデータクラスタ切り出し処理の一例を示すフローチャートである。It is a flowchart which shows an example of the data cluster cut-out process by the stream data processing system of FIG. 図8のストリームデータ処理システムを用いたセンサネットによるストリームデータ処理の説明図である。It is explanatory drawing of the stream data processing by the sensor network using the stream data processing system of FIG. 本発明の一実施の形態によるネットワークモニタリングの一例を示す説明図である。It is explanatory drawing which shows an example of the network monitoring by one embodiment of this invention. 図11のネットワークモニタリングを用いたデータ切り出し処理の説明図である。It is explanatory drawing of the data cut-out process using the network monitoring of FIG. 図12のネットワークモニタリングによるデータ切り出し処理の一例を示すフローチャートである。It is a flowchart which shows an example of the data cut-out process by the network monitoring of FIG. 図14は、本発明の一実施の形態によるストリームデータ分割システムの構成例を示すブロック図である。FIG. 14 is a block diagram showing a configuration example of a stream data division system according to an embodiment of the present invention. 図12のネットワークモニタリングによるストリームデータ処理例を示す説明図である。It is explanatory drawing which shows the example of stream data processing by the network monitoring of FIG.

符号の説明Explanation of symbols

110 ストリームデータ処理システム
111 データ処理定義登録ユーザインタフェース
120 解析対象データ切り出し部
121 解析対象データ判定部
122 入力データ時刻格納領域
123 データ時刻比較部
124 解析対象データ挿入部
124C データ挿入部
125 解析対象外データ削除部
126 クラスタ時刻格納領域
127 クラスタ番号格納領域
128 時間しきい値保存領域
130 データ解析部
131 データ解析処理実行木
132 解析対象データバッファ
141 入力ストリーム
143,144 結果ストリーム
210 ストリームデータ分割システム
211 クラスタ分割方法定義登録ユーザインタフェース
212 クラスタ決定部
214C データ挿入部
220 データベース
411 グループ別格納領域管理表
412〜414 グループ別格納領域
601〜603 ウィンドウ
810 タイミングウィンドウ
1320 タイミングウィンドウ
1501 ネットワークルータ
1502,1503,1504 計算機
1530 タイミングウィンドウ
1541,1542 データクラスタ
1551,1552,1561 データクラスタ
DESCRIPTION OF SYMBOLS 110 Stream data processing system 111 Data processing definition registration user interface 120 Analysis object data extraction part 121 Analysis object data determination part 122 Input data time storage area 123 Data time comparison part 124 Analysis object data insertion part 124C Data insertion part 125 Data not to be analyzed Deletion unit 126 Cluster time storage area 127 Cluster number storage area 128 Time threshold storage area 130 Data analysis unit 131 Data analysis processing execution tree 132 Analysis target data buffer 141 Input stream 143, 144 Result stream 210 Stream data division system 211 Cluster division Method definition registration user interface 212 Cluster determination unit 214C Data insertion unit 220 Database 411 Group-specific storage area management tables 412 to 414 groups Storage areas 601 to 603 window 810 timing window 1320 timing window 1501 network routers 1502,1503,1504 computer 1530 timing window 1541, 1542, correspondingly data cluster 1551,1552,1561 data cluster

Claims (11)

タイムスタンプが付与された複数のデータが、前記タイムスタンプの昇順に一列に並んで継続的に到来する、時系列データの流れであるストリームを継続的に解析処理するストリームデータの処理方法であって、
新規データが入力された際に、前記新規データのタイムスタンプと、ストリーム上での時間軸上で連続して到来するデータの部分列からなるデータクラスタにおける任意の時点での解析処理の対象となる解析対象クラスタに属するデータの最も古いデータのタイムスタンプとの時間差を算出するステップと、
算出した時間差が、任意に設定された時間しきい値以内である場合には、前記新規データを前記解析対象クラスタに追加し、算出した時間差が、前記時間しきい値を越える場合には、前記解析対象クラスタに属する全てのデータを削除して、前記新規データのみから構成されるデータクラスタを生成して解析対象クラスタとし、前記解析対象クラスタの更新が発生する度に、前記解析対象クラスタに属するデータ集合に対する解析を実行し、ストリームデータを処理するステップとを有することを特徴とするストリームデータの処理方法。
A stream data processing method for continuously analyzing a stream as a flow of time-series data, in which a plurality of data to which time stamps are attached continuously arrives in a line in ascending order of the time stamps. ,
When new data is input, it becomes the target of analysis processing at any point in the data cluster consisting of the time stamp of the new data and the partial sequence of data that arrives continuously on the time axis on the stream Calculating a time difference from the time stamp of the oldest data of the data belonging to the analysis target cluster;
When the calculated time difference is within an arbitrarily set time threshold, the new data is added to the analysis target cluster, and when the calculated time difference exceeds the time threshold, All data belonging to the analysis target cluster is deleted, a data cluster composed only of the new data is generated as the analysis target cluster, and each time the analysis target cluster is updated, it belongs to the analysis target cluster A stream data processing method comprising: analyzing the data set and processing the stream data.
請求項1記載のストリームデータの処理方法において、
新規データが入力された際に、前記新規データのタイムスタンプと、新しい方から数えて指定された任意の同時対象クラスタ数分のデータクラスタからなる解析対象クラスタ群において、最も新しい一つのデータクラスタである最新解析対象クラスタに属するデータのうち、最も古いデータのタイムスタンプとの時間差を算出するステップと、
算出した時間差が、前記時間しきい値以内である場合には、前記新規データを前記最新解析対象クラスタに追加し、算出した時間差が、前記時間しきい値を越える場合には、前記解析対象クラスタ群における最も古い一つのデータクラスタである最古解析対象クラスタに属する全てのデータを削除して、前記新規データのみから構成されるデータクラスタを生成して最新解析対象クラスタとし、前記解析対象クラスタ群の更新が発生する度に、前記解析対象クラスタ群に属するデータ集合に対する解析を実行し、ストリームデータを処理するステップとを有することを特徴とするストリームデータの処理方法。
The stream data processing method according to claim 1,
When new data is input, the newest data cluster in the analysis target cluster group consisting of the time stamp of the new data and the number of data clusters as many as the number of simultaneous target clusters specified from the new one. A step of calculating a time difference from a time stamp of the oldest data among data belonging to a certain latest analysis target cluster;
When the calculated time difference is within the time threshold, the new data is added to the latest analysis target cluster, and when the calculated time difference exceeds the time threshold, the analysis target cluster Delete all data belonging to the oldest analysis target cluster, which is the oldest one data cluster in the group, generate a data cluster composed only of the new data and set it as the latest analysis target cluster, and the analysis target cluster group A stream data processing method comprising: performing an analysis on a data set belonging to the analysis target cluster group each time an update occurs, and processing the stream data.
請求項1記載のストリームデータの処理方法において、
任意のカラムが指定された場合に、各データを、前記カラムの値が同一であるデータ集合を単位としてグループ分けし、新規データが入力された際に、前記データのカラムの値を参照して、前記データが属するグループ毎の解析対象クラスタとなるグループ別解析対象クラスタを抽出し、前記新規データのタイムスタンプと、前記グループ別解析対象クラスタに属するデータのうち、最も古いデータのタイムスタンプとの時間差を算出するステップと、
算出した時間差が、前記時間しきい値以内である場合には、前記新規データを、前記グループ別解析対象クラスタに追加し、算出した時間差が、前記時間しきい値を越える場合には、前記グループ別解析対象クラスタに属する全てのデータを削除して、前記新規データのみから構成されるデータクラスタを生成して、グループ解析対象クラスタとし、解析対象クラスタ群の更新が発生する度に、前記解析対象クラスタ群に属するデータ集合に対する解析を実行し、ストリームデータを処理するステップとを有することを特徴とするストリームデータの処理方法。
The stream data processing method according to claim 1,
When an arbitrary column is specified, each data is grouped in units of a data set having the same column value, and when new data is input, the data column value is referred to. The analysis target cluster for each group that is the analysis target cluster for each group to which the data belongs is extracted, and the time stamp of the new data and the time stamp of the oldest data among the data belonging to the group analysis target cluster Calculating a time difference;
When the calculated time difference is within the time threshold, the new data is added to the group-by-group analysis target cluster, and when the calculated time difference exceeds the time threshold, the group Delete all data belonging to another analysis target cluster, generate a data cluster consisting only of the new data, and make it a group analysis target cluster, and whenever the analysis target cluster group is updated, the analysis target cluster A stream data processing method comprising: analyzing a data set belonging to a cluster group and processing the stream data.
タイムスタンプが付与された複数のデータが、前記タイムスタンプの昇順に一列に並んで継続的に到来する、時系列データの流れであるストリームを継続的に解析処理するストリームデータの処理方法であって、
任意の時間しきい値が指定された場合に、新規データが入力された際に、前記新規データのタイムスタンプと、ストリーム上での時間軸上で連続して到来するデータの部分列からなるデータクラスタにおいて、ある時点での解析処理の対象となる解析対象クラスタに属するデータの最も古いデータのタイムスタンプとの時間差を算出するステップと、
算出した時間差が、任意に設定された時間しきい値以内である場合には、前記新規データを前記解析対象クラスタに追加し、算出した時間差が、前記時間しきい値以内である場合には、前記新規データを、前記解析対象クラスタに追加し、算出した時間差が、前記時間しきい値を越える場合には、前記解析対象クラスタに属する全てのデータを削除して、前記新規データのみから構成されるデータクラスタを生成して解析対象クラスタとし、前記解析対象クラスタの更新が発生する度に、前記解析対象クラスタに属するデータ集合に対する解析を実行し、ストリームデータを処理するステップとを有することを特徴とするストリームデータの処理方法。
A stream data processing method for continuously analyzing a stream as a flow of time-series data, in which a plurality of data to which time stamps are attached continuously arrives in a line in ascending order of the time stamps. ,
When an arbitrary time threshold value is specified, when new data is input, the data consists of a time stamp of the new data and a partial sequence of data that continuously arrives on the time axis on the stream. In the cluster, calculating a time difference with the time stamp of the oldest data of the data belonging to the analysis target cluster to be analyzed at a certain time point;
When the calculated time difference is within an arbitrarily set time threshold, the new data is added to the analysis target cluster, and when the calculated time difference is within the time threshold, The new data is added to the analysis target cluster, and when the calculated time difference exceeds the time threshold, all data belonging to the analysis target cluster is deleted, and only the new data is configured. Generating a data cluster to be an analysis target cluster, and performing an analysis on the data set belonging to the analysis target cluster and processing stream data each time the analysis target cluster is updated Stream data processing method.
請求項4記載のストリームデータの処理方法において、
新規データが入力された際に、前記新規データのタイムスタンプと、ユーザから特定の同時対象クラスタ数が指定された場合に、新しい方から数えて、前記指定された個数分のデータクラスタからなる解析対象クラスタ群のうち、最も新しい一つのデータクラスタとなる最新解析対象クラスタに属するデータにおいて最も新しいデータのタイムスタンプとの時間差を算出するステップと、
算出した時間差が、前記時間しきい値以内である場合には、前記新規データを、前記最新解析対象クラスタに追加し、算出した時間差が、前記時間しきい値を越える場合には、前記解析対象クラスタ群のうち、最も古い一つのデータクラスタとなる最古解析対象クラスタに属する全てのデータを削除して、前記新規データのみから構成されるデータクラスタを生成して、最新解析対象クラスタとし、前記解析対象クラスタ群の更新が発生する度に、前記解析対象クラスタ群に属するデータ集合に対する解析を実行し、ストリームデータを処理するステップとを有することを特徴とするストリームデータの処理方法。
The stream data processing method according to claim 4, wherein:
When new data is input, if the time stamp of the new data and a specific number of simultaneous target clusters are specified by the user, an analysis consisting of the specified number of data clusters counted from the newer one A step of calculating a time difference from a time stamp of the newest data in the data belonging to the latest analysis target cluster which is the newest one data cluster among the target cluster group;
When the calculated time difference is within the time threshold, the new data is added to the latest analysis target cluster, and when the calculated time difference exceeds the time threshold, the analysis target Delete all data belonging to the oldest analysis target cluster to be the oldest one of the cluster group, generate a data cluster composed only of the new data, and set as the latest analysis target cluster, A stream data processing method, comprising: performing analysis on a data set belonging to the analysis target cluster group each time the analysis target cluster group is updated, and processing stream data.
請求項4記載のストリームデータ処理の方法において、
新規データが入力された際に、前記データにおける指定された任意のカラムの値を参照して、任意のカラムが指定された場合に、各データを前記カラムの値が同一であるデータ集合を単位としてグループ分けしたクラスタのうち、前記データが属する解析対象クラスタからなるグループ別解析対象クラスタを抽出し、前記新規データのタイムスタンプと、前記グループ別解析対象クラスタに属するデータのうち、最も新しいデータのタイムスタンプとの時間差を算出するステップと、
算出した時間差が、前記時間しきい値以内である場合には、前記新規データを、前記グループ別解析対象クラスタに追加し、算出した時間差が、前記時間しきい値を越える場合には、前記グループ別解析対象クラスタに属する全てのデータを削除して、前記新規データのみから構成されるデータクラスタを生成して、グループ解析対象クラスタとし、前記グループ別解析対象クラスタ群の更新が発生する度に、前記解析対象クラスタ群に属するデータ集合に対する解析を実行し、ストリームデータを処理するステップとを有することを特徴とするストリームデータの処理方法。
The stream data processing method according to claim 4, wherein:
When new data is input, refer to the value of the specified column in the data, and when an arbitrary column is specified, each data is a unit of a data set having the same column value. Among the clusters grouped as follows, the analysis target cluster by group consisting of the analysis target cluster to which the data belongs is extracted, and the time stamp of the new data and the newest data among the data belonging to the analysis target cluster by group are extracted. Calculating a time difference from the time stamp;
When the calculated time difference is within the time threshold, the new data is added to the group-by-group analysis target cluster, and when the calculated time difference exceeds the time threshold, the group Delete all data belonging to another analysis target cluster, generate a data cluster composed only of the new data, and set it as a group analysis target cluster, each time an update of the group analysis target cluster group occurs, A stream data processing method comprising: performing analysis on a data set belonging to the analysis target cluster group and processing stream data.
タイムスタンプが付与された複数のデータが、前記タイムスタンプの昇順に一列に並んで継続的に到来する時系列データの流れであるストリームを継続的に解析処理するストリームデータ処理システムであって、
前記ストリーム上において、時間軸上で連続して到来するデータの部分列からなるデータクラスタに属するデータ集合に対して、解析処理を実行するデータ解析部と、
時間しきい値を保存する時間しきい値保存領域と、
新規にデータが到来した際に、前記新規データのタイムスタンプを、ある時点における解析処理の対象となる前記データクラスタである解析対象クラスタに属するデータのうち、最も古い、または最も新しいデータのタイムスタンプに前記時間しきい値を加算した時刻からなるクラスタ時刻と比較して両時刻の前後を判定するデータ時刻比較部と、
前記タイムスタンプが前記クラスタ時刻以前である場合は、前記新規データを、その時点の解析対象クラスタに加え、前記タイムスタンプが前記クラスタ時刻より後である場合は、その時点の解析対象クラスタに属する全てのデータを前記データ解析部から削除し、前記新規データのみで構成されるデータクラスタを新たな解析対象クラスタとし、前記新規データを前記データ解析部に挿入する解析対象データ判定部とを備えることを特徴とするストリームデータ処理システム。
A stream data processing system that continuously analyzes a stream that is a flow of time-series data that continuously arrives in a plurality of pieces of data to which time stamps are attached, arranged in a line in ascending order of the time stamps,
On the stream, a data analysis unit that performs an analysis process on a data set belonging to a data cluster composed of a partial sequence of data that continuously arrives on the time axis;
A time threshold storage area for storing the time threshold; and
When new data arrives, the time stamp of the new data is used as the time stamp of the oldest or newest data among the data belonging to the analysis target cluster that is the data cluster to be analyzed at a certain point in time. A data time comparison unit for determining before and after both times in comparison with a cluster time consisting of a time obtained by adding the time threshold to
When the time stamp is before the cluster time, the new data is added to the analysis target cluster at that time, and when the time stamp is after the cluster time, all the data belonging to the analysis target cluster at that time Data from the data analysis unit, a data cluster composed only of the new data as a new analysis target cluster, and an analysis target data determination unit that inserts the new data into the data analysis unit A featured stream data processing system.
請求項7記載のストリームデータ処理システムにおいて、
指定された任意の同時対象クラスタ数を保存する同時解析対象クラスタ数保存領域を備え、
前記データ時刻比較部は、
新規にデータが到来した際に、前記新規データのタイムスタンプを、最新解析対象クラスタに属するデータのうち、最も古い、または最も新しいデータのタイムスタンプに、前記時間しきい値を加算した時刻であるクラスタ時刻と比較して両時刻の前後を判定し、
前記解析対象データ判定部は、前記タイムスタンプが前記クラスタ時刻以前である場合は、前記新規データを、その時点の最新解析対象クラスタに加え、前記タイムスタンプが前記クラスタ時刻より後である場合は、新しい方から数えて、指定された任意の同時対象クラスタ数の個数分のデータクラスタである解析対象クラスタ群において、最も新しい一つのデータクラスタからなる最新解析対象クラスタのうち、最も古い一つのデータクラスタである最古解析対象クラスタに属する全てのデータを前記データ解析部から削除し、前記新規データのみで構成されるデータクラスタを新たな最新解析対象クラスタとし、前記新規データを前記データ解析部に挿入することを特徴とするストリームデータ処理システム。
The stream data processing system according to claim 7, wherein
It has a simultaneous analysis target cluster number storage area to store any specified number of simultaneous target clusters,
The data time comparison unit
When new data arrives, the time stamp of the new data is the time obtained by adding the time threshold to the oldest or newest data time stamp among the data belonging to the latest analysis target cluster. Compare with the cluster time to determine before and after both times,
When the time stamp is before the cluster time, the analysis target data determination unit adds the new data to the latest analysis target cluster at that time, and when the time stamp is after the cluster time, The oldest one data cluster among the latest analysis target clusters consisting of the newest one data cluster in the analysis target cluster group, which is the number of data clusters as many as the specified number of simultaneous target clusters, counting from the newest one. Delete all data belonging to the oldest analysis target cluster from the data analysis unit, make the data cluster consisting only of the new data a new latest analysis target cluster, and insert the new data into the data analysis unit And a stream data processing system.
請求項7記載のストリームデータ処理システムにおいて、
任意のカラムが指定された場合に、各データを前記カラムの値が同一であるデータ集合を単位としてグループ分けし、前記グループ毎の解析対象クラスタとするグループ別解析対象クラスタ毎に、前記グループ別解析対象クラスタに属するデータにおいて最も古い、または最も新しいデータのタイムスタンプに、前記時間しきい値を加算したクラスタ時刻を記憶するグループ別格納領域と、
前記カラムの値と、前記グループ別格納領域との対応関係を保持するグループ別格納領域管理表を格納するグループ別格納領域管理部とを備え、
前記データ時刻比較部は、
前記ストリームデータ処理システムに新規データが入力された際に、前記データのカラム値を参照して、前記データが属するグループ別格納領域を、前記グループ別格納領域管理表から抽出し、前記新規データのタイムスタンプと、前記グループ別格納領域に記憶されたクラスタ時刻とを比較して両時刻の前後を判定し、
前記解析対象データ判定部は、
前記タイムスタンプが前記クラスタ時刻以前である場合は、前記新規データを、その時点のグループ別解析対象クラスタに加えて、前記タイムスタンプが前記クラスタ時刻より後である場合は、その時点のグループ別解析対象クラスタに属する全てのデータを、前記データ解析部から削除し、該新規データのみで構成されるデータクラスタを新たなグループ別解析対象クラスタとし、前記新規データを前記データ解析部に挿入することを特徴とするストリームデータ処理システム。
The stream data processing system according to claim 7, wherein
When an arbitrary column is specified, each data is grouped in units of data sets in which the column values are the same, and the analysis target cluster for each group is classified by group. A storage area for each group that stores a cluster time obtained by adding the time threshold to the time stamp of the oldest or newest data in the data belonging to the analysis target cluster;
A storage area management unit for each group that stores a storage area management table for each group that holds the correspondence between the value of the column and the storage area for each group;
The data time comparison unit
When new data is input to the stream data processing system, the storage area for each group to which the data belongs is extracted from the storage area management table for each group to which the data belongs by referring to the column value of the data. Compare the time stamp and the cluster time stored in the group storage area to determine before and after both times,
The analysis target data determination unit
When the time stamp is before the cluster time, the new data is added to the group analysis target cluster at that time, and when the time stamp is later than the cluster time, analysis by group at the time is performed. Deleting all data belonging to the target cluster from the data analysis unit, setting a data cluster composed only of the new data as a new group analysis target cluster, and inserting the new data into the data analysis unit. A featured stream data processing system.
請求項7記載のストリームデータ処理システムにおいて、
タイムスタンプが付与された複数のデータが、前記タイムスタンプの昇順に一列に並んで継続的に到来する時系列データの流れであるストリームにおいて、時間軸上で連続して到来するデータの部分列からなるデータクラスタの番号を保存するクラスタ番号保存領域と、
前記タイムスタンプが前記クラスタ時刻以前である場合は、その時点で前記クラスタ番号保存領域に保存されているクラスタ番号をデータに付与してデータベースに格納し、前記タイムスタンプが前記クラスタ時刻より後である場合は、その時点で前記クラスタ番号保存領域に保存されているクラスタ番号に1を加算して、前記クラスタ番号保存領域に保存し、加算後のクラスタ番号をデータに付与してデータベース格納するクラスタ判定部とを備え
前記データ時刻比較部は、
新規データが到来した際に、前記新規データのタイムスタンプを、ある時点における最新のデータクラスタである最新クラスタに属するデータにおいて最も古い、または最も新しいデータの、タイムスタンプに前記時間しきい値を加算した時刻であるクラスタ時刻と比較して両時刻の前後を判定することを特徴とするストリームデータ処理システム。
The stream data processing system according to claim 7, wherein
In a stream that is a flow of time series data in which a plurality of data to which time stamps are attached continuously arrives in a line in ascending order of the time stamps, from a partial sequence of data that continuously arrives on the time axis A cluster number storage area for storing the number of data clusters, and
If the time stamp is before the cluster time, the cluster number stored in the cluster number storage area at that time is added to the data and stored in the database, and the time stamp is after the cluster time In this case, add 1 to the cluster number stored in the cluster number storage area at that time, store the cluster number in the cluster number storage area, and add the cluster number after addition to the data to store the database The data time comparison unit comprises:
When new data arrives, the time threshold of the new data is added to the time stamp of the oldest or newest data in the latest cluster that is the latest data cluster at a certain time. A stream data processing system for determining before and after both times by comparing with a cluster time which is a determined time.
請求項10記載のデータ処理システムにおいて、
前記クラスタ判定部は、
新規にデータが到来した際に、前記新規データのタイムスタンプを前記クラスタ時刻と比較し、前記タイムスタンプが前記クラスタ時刻以前である場合は、前記新規データをデータ出力し、前記タイムスタンプが前記クラスタ時刻より後である場合は、データ集合の区切りを示す信号を送出した後で、前記新規データをデータ出力することを特徴とするストリームデータ処理システム。
The data processing system of claim 10, wherein
The cluster determination unit
When new data arrives, the time stamp of the new data is compared with the cluster time. If the time stamp is before the cluster time, the new data is output, and the time stamp is the cluster time. If the time is later than the time, the stream data processing system outputs the new data after sending a signal indicating the delimiter of the data set.
JP2007169256A 2007-06-27 2007-06-27 Stream data processing method and stream data processing system Expired - Fee Related JP4990696B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007169256A JP4990696B2 (en) 2007-06-27 2007-06-27 Stream data processing method and stream data processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007169256A JP4990696B2 (en) 2007-06-27 2007-06-27 Stream data processing method and stream data processing system

Publications (2)

Publication Number Publication Date
JP2009009304A true JP2009009304A (en) 2009-01-15
JP4990696B2 JP4990696B2 (en) 2012-08-01

Family

ID=40324337

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007169256A Expired - Fee Related JP4990696B2 (en) 2007-06-27 2007-06-27 Stream data processing method and stream data processing system

Country Status (1)

Country Link
JP (1) JP4990696B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017167977A (en) * 2016-03-17 2017-09-21 株式会社東芝 Sensor data management device, sensor data management method, and program
US10614072B2 (en) 2013-06-05 2020-04-07 International Business Machines Corporation Method, program, and system for processing space-time database

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002024251A (en) * 2000-07-07 2002-01-25 Nippon Telegr & Teleph Corp <Ntt> Method and device for classifying time-series data, and recording medium recorded with classifying program for time-series data
JP2005100363A (en) * 2003-08-14 2005-04-14 Internatl Business Mach Corp <Ibm> Method and apparatus for clustering data stream in progress through online and offline components
JP2007026373A (en) * 2005-07-21 2007-02-01 Hitachi Ltd Stream data processing system and stream data processing method
JP2007299406A (en) * 2006-05-04 2007-11-15 Internatl Business Mach Corp <Ibm> System and method for scalably processing multi-route data stream correlation

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002024251A (en) * 2000-07-07 2002-01-25 Nippon Telegr & Teleph Corp <Ntt> Method and device for classifying time-series data, and recording medium recorded with classifying program for time-series data
JP2005100363A (en) * 2003-08-14 2005-04-14 Internatl Business Mach Corp <Ibm> Method and apparatus for clustering data stream in progress through online and offline components
JP2007026373A (en) * 2005-07-21 2007-02-01 Hitachi Ltd Stream data processing system and stream data processing method
JP2007299406A (en) * 2006-05-04 2007-11-15 Internatl Business Mach Corp <Ibm> System and method for scalably processing multi-route data stream correlation

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10614072B2 (en) 2013-06-05 2020-04-07 International Business Machines Corporation Method, program, and system for processing space-time database
JP2017167977A (en) * 2016-03-17 2017-09-21 株式会社東芝 Sensor data management device, sensor data management method, and program
US10552460B2 (en) 2016-03-17 2020-02-04 Kabushiki Kaisha Toshiba Sensor data management apparatus, sensor data management method, and computer program product

Also Published As

Publication number Publication date
JP4990696B2 (en) 2012-08-01

Similar Documents

Publication Publication Date Title
EP2557504A1 (en) Database management method, computer, sensor network system and database search program
US9578046B2 (en) Analysis of time series data
JP2019125383A (en) Variable duration non-event pattern matching
US8095690B2 (en) Machine-readable medium for storing a stream data processing program and computer system
US8335782B2 (en) Ranking query processing method for stream data and stream data processing system having ranking query processing mechanism
US8650146B2 (en) Impulse regular expression matching
US20210081437A1 (en) Systems and methods for trie-based automated discovery of patterns in computer logs
JP2009266007A (en) Stream data processing method and computer system
JP2009134689A (en) Ranking query processing method for stream data and stream data processing system having ranking query processing mechanism
CN107704604B (en) Message persistence method, server and computer readable storage medium
CN108234233B (en) Log processing method and device
US10331672B2 (en) Stream data processing method with time adjustment
WO2013110357A1 (en) Social network analysis
CN113918733A (en) Data processing system for acquiring target knowledge graph
CN103036848B (en) The reverse engineering approach of agreement and system
JP6313864B2 (en) Stream data processing method and stream data processing apparatus
WO2018066661A1 (en) Log analysis method, system, and recording medium
JP4990696B2 (en) Stream data processing method and stream data processing system
US20200177534A1 (en) Flexible event service
WO2016201876A1 (en) Service identification method and device for encrypted traffic, and computer storage medium
US20170098010A1 (en) Data integration apparatus and data integration method
US9830368B1 (en) Asynchronous parallel processing of log data
EP3511830A1 (en) Method for monitoring devices in a network, computerized system and application program interface
Nolé et al. Processing Regular Path Queries on Giraph.
JP5922811B1 (en) Log information classification device, log information classification method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100305

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120201

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120403

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120502

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150511

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees