JP2009009304A - Processing method for stream data, and stream data processing system - Google Patents
Processing method for stream data, and stream data processing system Download PDFInfo
- 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
Links
Images
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Abstract
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
時間指定ウィンドウは、各タプルが解析対象となる期間を、該タプルのタイムスタンプを起点、該タイムスタンプよりある定数時間経過した時刻を終点とする期間に限定する。該定数時間は、ユーザにより任意の時間に指定可能である。個数指定ウィンドウは、同時に解析対象となるタプルを、最新の定数個に限定する。該個数は、ユーザにより任意の個数に指定可能である。 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).
以上のように、ストリームデータ処理では、時系列データの中から解析対象となる集合を限定する機能を備えることで、データの変化量、移動平均値の算出、データの発生順序の検知、など、時系列データの解析における重要処理を、柔軟に定義することが可能である。
今後、ユビキタス情報機器の技術が発達することで、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
各行1311〜1317が、各製品に関するデータであり、製品IDを示すidカラム、製品重量を示すweightカラム、および製造日を示すdateカラムから成る。ダンボール1303を読み取ることでデータ1311〜1313が、ダンボール1304を読み取ることでデータ1314〜1317が生成される。ストリームデータ処理システム110は、該データを受け取り、各ダンボールについて、梱包製品数、総重量、製造期間を算出し、検査員などに通知する。
Each
また、検査員による作業のタイミングおよび読み取りデータが生成されるタイミングは、表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
該データをストリームデータ処理システム110で集計した結果を検査員が9:15’06に確認する。ダンボール2(1304)についても同様である。この処理において、ストリームデータ処理システムは、各ダンボール別に集計結果を生成する必要がある。
The inspector confirms the result of totaling the data by the stream
ここで、個々のダンボールの読み取りを一つの現象と捉えると、ストリームデータ処理は、時系列の製品データから、各ダンボール(即ち一つの現象)に対応する部分データ列を抽出する必要がある。 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,
表1410は、該計測データを示す。各行1411〜1422が、各計測データであり、計測したセンサのIDを示すidカラム、および計測値を示すvalueカラムから成る。現象1402により、データ1411〜1414が、現象1403により、データ1415〜1417が、現象1404により、データ1418〜1422が、それぞれ生成される。なお、センサが現象の発生場所に近い程、計測値は大きくなる。
Table 1410 shows the measurement data. Each
ウィンドウ1430は、現象の発生タイミング、およびセンサによる計測データが生成されるタイミングを示した図である。このようなデータ系列から、個々の現象ごとの解析を実現するために、ストリームデータ処理は、時系列の計測データから、各現象に対応する部分データ列を抽出する必要がある。
以上のように、ストリームデータ処理を、ユビキタス機器が生成する観測データに基づく現象解析に適用するためには、ストリーム上のタプルを現象単位で切り分ける処理が必須となる。 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
時間指定ウィンドウ1330は、タイミングウィンドウ1320に示したストリームに、時間指定ウィンドウを適用する場合を示す。ウィンドウ1331は、各製品データ1321が、解析対象となる期間を、黒丸から右方向(時間軸における未来方向)に伸びる線分で表している。
The
全ての線分の長さは、ユーザにより指定された解析対象期間1333と同一の長さとなる。ウィンドウ1332は、ウィンドウ1331に示した解析対象期間を持つストリームタプルから、製品合計数を算出した結果を示す。9:15’06において、検査員が該結果を確認する際には、ダンボール1303の製品数3が正しく確認される。
All line segments have the same length as the
一方、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
ウィンドウ1340は、解析対象期間を短くして、タイミングウィンドウ1320に示したストリームに、時間指定ウィンドウを適用する場合を示す。1343は、解析対象期間の長さを示す。ウィンドウ1341は、各データが解析対象となる期間を、またウィンドウ1342は、製品合計数を算出した結果を示す。
A
データの解析対象期間が短い場合、そこから算出した結果の継続期間も短くなるため、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
同様に、図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
図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
但し、これらの方法のいずれにおいても、仕切り棒の配置、赤外線センサの増設、読み取り終了ボタンの操作、などの余計な手間とコストが必要となる。 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
解析対象データ切り出し部120は、定義101に含まれるクラスタ構成条件に従って、入力ストリーム141から、解析対象データクラスタを抽出する処理を、実行する。データ解析部130は、定義101に従って、該データクラスタに対する解析処理を実行し、その結果ストリーム143,144をクライアントなどに出力する。
The analysis target
データ処理定義登録ユーザインタフェース111は、受け取った定義101を解釈し、定義101の中からクラスタ構成条件の定義を抽出し、解析対象データ切り出し部120に対して通知する。また、定義101の内容に従い、データ解析処理実行木131を構成し、解析部130上に配置する。
The data processing definition
本実施の形態では、定義101中の記述“[CLUSTER WITHIN 3 seconds]”が、クラスタ構成条件の定義である。“WITHIN”は、前記クラスタ構成条件(1)のタイプであることを意味する。
In the present embodiment, the description “[CLUSTER WITHIN 3 seconds]” in the
同部分の文字列が“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
解析対象データ切り出し部120は、まず、データ処理定義登録ユーザインタフェース111から通知された該時間しきい値を、時間しきい値保存領域128に保存する。さらに、初期化処理S501に従って、クラスタ時刻格納領域126に時刻Time.MINを格納し、クラスタ番号格納領域127に−1を格納する。
The analysis target
なお、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
その比較により、該新規入力データのタイムスタンプが、該クラスタ時刻を超える場合には、処理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
さらに、処理S505に従って、その時点でクラスタ番号格納領域127に格納されているクラスタ番号を、解析対象外データ削除部125に通知する。続いて、処理S506に従って、クラスタ番号格納領域127に格納されたクラスタ番号を、インクリメントする。なお、初期化処理S501の後、最初に入力データを受信した際は、必ず、処理S504〜S506を実行することになる。これら処理の後、処理S507に移行する。
Further, according to the process S505, the cluster number currently stored in the cluster
一方、処理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
データ挿入部124は、該新規入力データを、データ解析部130が保持する解析対象データバッファ132に挿入する。一方、データ削除部125は、通知されたクラスタ番号を付与された全てのデータを、バッファ132から削除する。
The
データ解析部130は、バッファ132に対するデータ挿入/削除が発生する度に、データ解析処理実行木131に基づいて、バッファ132上に存在するデータ142の集合を対象とした解析処理を実施し、その結果を外部に送信する。なお、データ解析部130の実現方法は、たとえば、非特許文献1に開示されている。
Each time data insertion / deletion occurs in the
以下、図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
定義101は、表1310のデータ(rfid)を、時間しきい値3秒のWITHIN条件によりデータクラスタに分割し、各データクラスタについて、梱包製品数、総重量、製造期間を算出することを意味する。
図3において、ウィンドウ601は、各データの解析対象期間を示しており、ウィンドウ603は、時間しきい値の長さを示しており、時間しきい値の長さは、たとえば、3秒程度である。
In FIG. 3, a
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
データ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
この後、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
一方、新たなデータクラスタ1が生成され、データdは該クラスタに追加される。また、クラスタ時刻は、データdのタイムスタンプ9:15’12に該時間しきい値3秒を加算した9:15’15に定まる。データe〜g(1315〜1317)のタイムスタンプは、該クラスタ時刻9:15’15以前であるので、データdと同一のデータクラスタ1に追加される。
On the other hand, a
ウィンドウ602は、時間しきい値の長さを示しており、各データの解析対象期間を持つストリームタプルから、製品合計数を算出した結果を示す。9:15’06、および9:15’18において、検査員が該結果を確認する際には、ダンボール1の製品数3、およびダンボール2の製品数4が、共に正しく確認されることになる。総重量、および製造期間についても、同様に正しい値が確認される。
A
表610は、処理結果データを示す。データ1311〜1317の入力により、それぞれデータ611〜617を出力する。検査員は、9:15’06にデータ613を、9:15’18にデータ617を、それぞれ確認することになる。これらは、それぞれダンボール1およびダンボール2の集計値を正しく表している。
Table 610 shows the processing result data.
以上のように、図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
この図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
定義801は、データ(rfid)を、時間しきい値4秒のINTERVAL条件によりデータクラスタに分割し、各データクラスタについて、梱包製品数、総重量、製造期間を算出することを意味する。
The
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
データ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
この後、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
一方、新たなデータクラスタ1が生成され、データfは該クラスタに追加される。また、クラスタ時刻は、データfのタイムスタンプ9:15’13に該時間しきい値823の4秒を加算した9:15’17に定まる。データg〜iは、該時間しきい値823の4秒以内で連続しているため、全てデータクラスタ1に追加される。
On the other hand, a
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
以上のように、図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 “[
データ処理定義登録ユーザインタフェース111は、“CLUSTER”文字列の後に続く数字を、同時に解析対象とするデータクラスタ数と解釈し、解析対象データ切り出し部120に通知する。
The data processing definition
解析対象データ切り出し部120は、該値を同時対象クラスタ数保存領域311に保存する。該構成は、領域311が追加されていることを除き、図1に示したストリームデータ処理システム110の構成と同一である。
The analysis target
以下、図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
一方、図9の処理S901は、その時点のクラスタ番号より、同時対象クラスタ数を減じた値に、さらに1を加えた値を、削除するデータクラスタのクラスタ番号として、データ削除部125に通知する。外処理により、新規に生成されるデータを含めて、同時対象クラスタ数のデータクラスタを、解析対象として保持することになる。なお、同時対象クラスタ数が1の場合、処理S901は処理S505と一致する。
On the other hand, the processing S901 in FIG. 9 notifies the
以上は、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
定義301は、データ(sensor)1410を、時間しきい値3秒のWITHIN条件によりデータクラスタに分割し、最新のデータクラスタ2個を同時に解析対象とし、センサごとに計測値を加算することを意味する。また、定義1001は、該加算値が最大となるセンサのIDを抽出することを意味する。ウィンドウ1010は、各データの解析対象期間を示しており、ウィンドウ1010においては、時間しきい値1011,1012,1013の長さ(たとえば、3秒)をそれぞれ示している。
データ1411〜1414は、データクラスタ0に、データ1415〜1417は、データクラスタ1に、データ1418〜1422は、データクラスタ2に、それぞれ属することになる。
データ1411〜1414までが入力された状態において、10:28の時点でデータ1415が入力されると、処理S503の条件分岐でNoに倒れ、処理S504、S901、S506が実行される。
When
但し、処理S901では、その時点でのクラスタ番号0から同時対象クラスタ数2を減じて1を加えたクラスタ番号−1が負であるため、何も実行されない。そのため、データクラスタ0に属するデータは解析対象として残ることになる。
However, in the process S901, nothing is executed because the cluster number −1 obtained by subtracting the simultaneous
一方、データ1411〜1417が入力された状態において、10:32の時点でデータ1418が入力されると、処理S503の条件分岐でNoに倒れ、処理S504、S901、S506が実行される。
On the other hand, if the
このとき、その時点でのクラスタ番号1から同時対象クラスタ数2を減じて1を加えたクラスタ番号が0となるため、データクラスタ0に属するデータ1411〜1414が解析対象から外れることになる。
At this time, the cluster number obtained by subtracting the
一方、新しいデータクラスタ2が生成され、データ1418が追加される。その結果、同時対象クラスタ数2個のデータクラスタ1、および2が、解析対象として切り出されることになる。
On the other hand, a
表1020は、定義301による処理結果データを示す。データ1411〜1422の入力により、それぞれデータ1021〜1032を算出する。データ1026は、データクラスタ0、および1に属する、センサS17による計測データの計測値を加算した値が、value_sumカラムの値となる。
A table 1020 shows processing result data according to the
同様に、データ1027は、データクラスタ0、および1に属する、センサS18による計測データの計測値加算した値が、データ1032は、データクラスタ1、および2に属する、センサS17による計測データの計測値を加算した値が、それぞれ、value_sumカラムの値となる。
Similarly, the
表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
以上のように、図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
ルータ1501をパケットが通過することで、表1510のようなデータが生成される。各行1511〜1522が、各パケットに関するデータであり、送信元を示すsrcカラム、送信先を示すdstカラム、およびデータ長を示すlengthカラムからなる。
As the packet passes through the
ストリームデータ処理システム110は、該データを受け取り、発生時間が近接する複数のパケットを、一つのメッセージとして切り出し、メッセージ毎のメッセージ長を算出する。
The stream
図11におけるタイミングウィンドウ1530は、パケットに関する情報が生成されるタイミングを示した図である。このように、複数の計算機1502,1503,1504から送出されるパケットに関するデータが、一本のストリームに混在するため、データのタイムスタンプの近接関係のみに基づいて、該切り出し処理を実現することはできない。
A
一方で、送信元となる個別の計算機に着目すれば、一つのメッセージを構成するパケット列は、連続して送出され、異なるメッセージ間の送信間隔は、それに比べて十分長い時間となるため、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を送信元とするパケットに関するデータのみを抽出した図である。
このように分類することで、計算機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
以下、図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
データ処理定義登録ユーザインタフェース111は、“PARTITION BY”文字列の後に続く文字列を、データのグループ分けに利用するカラムの名称と解釈し、解析対象データ切り出し部120に通知する。以降、該カラムをグループ識別子と呼ぶ。
The data processing definition
この構成は、図1に示したストリームデータ処理システム110の構成を、グループ別のデータ切り出し処理に対応するように拡張した形となる。クラスタ時刻格納領域126、およびクラスタ番号格納領域127は、グループごとに必要である。両領域をまとめて、グループ別格納領域と呼ぶ。
This configuration is obtained by extending the configuration of the stream
グループ別格納領域は、一つのグループに対して一つ、また一つのみ存在する必要がある。この管理を実現するために、グループ識別子の値とグループ別格納領域との対応関係を保持する、グループ別格納領域管理表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-
以下、図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
定義401は、データ(nlog)1510を、srcカラムの値同一性に基づいてデータをグループ分けし、グループごとに、時間しきい値1秒のINTERVAL条件で切り出されるデータクラスタを解析対象とし、送信元計算機ごとに、パケット長を加算することを意味する。
ウィンドウ1210,1220,1230は、srcカラムの値A,B,Cの各データの解析対象期間をそれぞれ示している。また、ウィンドウ1210においては、時間しきい値1201の値の長さ(たとえば、1秒)を示している。
表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
以上のように、図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
クラスタ決定部212の構成、および動作は、図1の構成、および図2の動作と同一である。但し、データ挿入部124Cは、データベース220上の関係表に、データ221とクラスタ番号222の組を挿入する。また、解析対象外データ削除部125は存在しない。
The configuration and operation of the
以上は、クラスタ分割方法として、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
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。 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.
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
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.
新規データが入力された際に、前記新規データのタイムスタンプと、新しい方から数えて指定された任意の同時対象クラスタ数分のデータクラスタからなる解析対象クラスタ群において、最も新しい一つのデータクラスタである最新解析対象クラスタに属するデータのうち、最も古いデータのタイムスタンプとの時間差を算出するステップと、
算出した時間差が、前記時間しきい値以内である場合には、前記新規データを前記最新解析対象クラスタに追加し、算出した時間差が、前記時間しきい値を越える場合には、前記解析対象クラスタ群における最も古い一つのデータクラスタである最古解析対象クラスタに属する全てのデータを削除して、前記新規データのみから構成されるデータクラスタを生成して最新解析対象クラスタとし、前記解析対象クラスタ群の更新が発生する度に、前記解析対象クラスタ群に属するデータ集合に対する解析を実行し、ストリームデータを処理するステップとを有することを特徴とするストリームデータの処理方法。 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.
任意のカラムが指定された場合に、各データを、前記カラムの値が同一であるデータ集合を単位としてグループ分けし、新規データが入力された際に、前記データのカラムの値を参照して、前記データが属するグループ毎の解析対象クラスタとなるグループ別解析対象クラスタを抽出し、前記新規データのタイムスタンプと、前記グループ別解析対象クラスタに属するデータのうち、最も古いデータのタイムスタンプとの時間差を算出するステップと、
算出した時間差が、前記時間しきい値以内である場合には、前記新規データを、前記グループ別解析対象クラスタに追加し、算出した時間差が、前記時間しきい値を越える場合には、前記グループ別解析対象クラスタに属する全てのデータを削除して、前記新規データのみから構成されるデータクラスタを生成して、グループ解析対象クラスタとし、解析対象クラスタ群の更新が発生する度に、前記解析対象クラスタ群に属するデータ集合に対する解析を実行し、ストリームデータを処理するステップとを有することを特徴とするストリームデータの処理方法。 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.
新規データが入力された際に、前記新規データのタイムスタンプと、ユーザから特定の同時対象クラスタ数が指定された場合に、新しい方から数えて、前記指定された個数分のデータクラスタからなる解析対象クラスタ群のうち、最も新しい一つのデータクラスタとなる最新解析対象クラスタに属するデータにおいて最も新しいデータのタイムスタンプとの時間差を算出するステップと、
算出した時間差が、前記時間しきい値以内である場合には、前記新規データを、前記最新解析対象クラスタに追加し、算出した時間差が、前記時間しきい値を越える場合には、前記解析対象クラスタ群のうち、最も古い一つのデータクラスタとなる最古解析対象クラスタに属する全てのデータを削除して、前記新規データのみから構成されるデータクラスタを生成して、最新解析対象クラスタとし、前記解析対象クラスタ群の更新が発生する度に、前記解析対象クラスタ群に属するデータ集合に対する解析を実行し、ストリームデータを処理するステップとを有することを特徴とするストリームデータの処理方法。 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.
新規データが入力された際に、前記データにおける指定された任意のカラムの値を参照して、任意のカラムが指定された場合に、各データを前記カラムの値が同一であるデータ集合を単位としてグループ分けしたクラスタのうち、前記データが属する解析対象クラスタからなるグループ別解析対象クラスタを抽出し、前記新規データのタイムスタンプと、前記グループ別解析対象クラスタに属するデータのうち、最も新しいデータのタイムスタンプとの時間差を算出するステップと、
算出した時間差が、前記時間しきい値以内である場合には、前記新規データを、前記グループ別解析対象クラスタに追加し、算出した時間差が、前記時間しきい値を越える場合には、前記グループ別解析対象クラスタに属する全てのデータを削除して、前記新規データのみから構成されるデータクラスタを生成して、グループ解析対象クラスタとし、前記グループ別解析対象クラスタ群の更新が発生する度に、前記解析対象クラスタ群に属するデータ集合に対する解析を実行し、ストリームデータを処理するステップとを有することを特徴とするストリームデータの処理方法。 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.
指定された任意の同時対象クラスタ数を保存する同時解析対象クラスタ数保存領域を備え、
前記データ時刻比較部は、
新規にデータが到来した際に、前記新規データのタイムスタンプを、最新解析対象クラスタに属するデータのうち、最も古い、または最も新しいデータのタイムスタンプに、前記時間しきい値を加算した時刻であるクラスタ時刻と比較して両時刻の前後を判定し、
前記解析対象データ判定部は、前記タイムスタンプが前記クラスタ時刻以前である場合は、前記新規データを、その時点の最新解析対象クラスタに加え、前記タイムスタンプが前記クラスタ時刻より後である場合は、新しい方から数えて、指定された任意の同時対象クラスタ数の個数分のデータクラスタである解析対象クラスタ群において、最も新しい一つのデータクラスタからなる最新解析対象クラスタのうち、最も古い一つのデータクラスタである最古解析対象クラスタに属する全てのデータを前記データ解析部から削除し、前記新規データのみで構成されるデータクラスタを新たな最新解析対象クラスタとし、前記新規データを前記データ解析部に挿入することを特徴とするストリームデータ処理システム。 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.
任意のカラムが指定された場合に、各データを前記カラムの値が同一であるデータ集合を単位としてグループ分けし、前記グループ毎の解析対象クラスタとするグループ別解析対象クラスタ毎に、前記グループ別解析対象クラスタに属するデータにおいて最も古い、または最も新しいデータのタイムスタンプに、前記時間しきい値を加算したクラスタ時刻を記憶するグループ別格納領域と、
前記カラムの値と、前記グループ別格納領域との対応関係を保持するグループ別格納領域管理表を格納するグループ別格納領域管理部とを備え、
前記データ時刻比較部は、
前記ストリームデータ処理システムに新規データが入力された際に、前記データのカラム値を参照して、前記データが属するグループ別格納領域を、前記グループ別格納領域管理表から抽出し、前記新規データのタイムスタンプと、前記グループ別格納領域に記憶されたクラスタ時刻とを比較して両時刻の前後を判定し、
前記解析対象データ判定部は、
前記タイムスタンプが前記クラスタ時刻以前である場合は、前記新規データを、その時点のグループ別解析対象クラスタに加えて、前記タイムスタンプが前記クラスタ時刻より後である場合は、その時点のグループ別解析対象クラスタに属する全てのデータを、前記データ解析部から削除し、該新規データのみで構成されるデータクラスタを新たなグループ別解析対象クラスタとし、前記新規データを前記データ解析部に挿入することを特徴とするストリームデータ処理システム。 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.
タイムスタンプが付与された複数のデータが、前記タイムスタンプの昇順に一列に並んで継続的に到来する時系列データの流れであるストリームにおいて、時間軸上で連続して到来するデータの部分列からなるデータクラスタの番号を保存するクラスタ番号保存領域と、
前記タイムスタンプが前記クラスタ時刻以前である場合は、その時点で前記クラスタ番号保存領域に保存されているクラスタ番号をデータに付与してデータベースに格納し、前記タイムスタンプが前記クラスタ時刻より後である場合は、その時点で前記クラスタ番号保存領域に保存されているクラスタ番号に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.
前記クラスタ判定部は、
新規にデータが到来した際に、前記新規データのタイムスタンプを前記クラスタ時刻と比較し、前記タイムスタンプが前記クラスタ時刻以前である場合は、前記新規データをデータ出力し、前記タイムスタンプが前記クラスタ時刻より後である場合は、データ集合の区切りを示す信号を送出した後で、前記新規データをデータ出力することを特徴とするストリームデータ処理システム。 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.
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)
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)
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 |
-
2007
- 2007-06-27 JP JP2007169256A patent/JP4990696B2/en not_active Expired - Fee Related
Patent Citations (4)
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)
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 |