JP6626198B2 - Management device, execution environment setting method, stream data processing system - Google Patents
Management device, execution environment setting method, stream data processing system Download PDFInfo
- Publication number
- JP6626198B2 JP6626198B2 JP2018524589A JP2018524589A JP6626198B2 JP 6626198 B2 JP6626198 B2 JP 6626198B2 JP 2018524589 A JP2018524589 A JP 2018524589A JP 2018524589 A JP2018524589 A JP 2018524589A JP 6626198 B2 JP6626198 B2 JP 6626198B2
- Authority
- JP
- Japan
- Prior art keywords
- query
- transmission interval
- processing device
- data
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Description
本発明は、概して、データの分析に関する。 The present invention relates generally to data analysis.
近年、コンピュータやセンサなど世の中の様々な物を大量に接続し、各コンピュータやネットワーク機器などから取得したログデータを解析しネットワークの負荷を予測することや、設備の監視・メンテナンスなどを行うIoTシステムに対する要求が高まっている。 In recent years, IoT systems that connect a large number of various things in the world such as computers and sensors, analyze log data obtained from each computer and network devices, and predict network load, and monitor and maintain equipment The demand for is increasing.
一般的に、ネットワーク分析では、ネットワーク通信の応答時間の平均値や最大値などの基礎的な統計情報を一定時間毎に算出して、算出した値を用いて負荷予測などの高度な分析を行う。 Generally, in network analysis, basic statistical information such as an average value or a maximum value of response time of network communication is calculated at regular intervals, and advanced analysis such as load prediction is performed using the calculated value. .
例えば、企業などにおいて社内ネットワークのネットワーク分析を行う際に、ネットワークに接続されたコンピュータのネットワークアクセスを記録したアクセスログを解析し、ネットワーク通信の応答時間の平均値や最大値などの基礎的な統計情報を一定時間毎に算出して、算出した値を用いて負荷予測などの高度な分析を行う。また工場においては、設備の温度や振動量を測定し、異常値が検出された場合には管理者へ連絡するシステムが考えられる。 For example, when analyzing the network of an in-house network in a company or the like, the access logs that record the network access of the computers connected to the network are analyzed, and basic statistics such as the average and maximum values of the response time of network communication are analyzed. Information is calculated at regular intervals, and advanced analysis such as load prediction is performed using the calculated values. In a factory, a system that measures the temperature and vibration amount of equipment and notifies an administrator when an abnormal value is detected may be considered.
従来のデータベース管理システム(DBMS)でデータを処理する場合には、時々刻々と到着するデータ(ストリームデータ)を一旦従来のデータベースが検索可能なデータ形式に変更して二次記憶装置に格納する必要があった。この変換処理と格納には大きな時間がかかり、データをまとめて一括で処理を行った方が効率的に行えるため、日単位の日次バッチなどで行われる事が多く、リアルタイムにデータ分析を行う事が出来ない。一括で処理を行った方が効率的である理由として、例えば従来のデータベースで一般的に用いられる二次索引へ逐次的にデータ1件毎に追加するのではなく、一括で追加した方が時間コストの大きい二次記憶へのアクセス量を抑えられる事が挙げられる。しかし、前述のログデータは従来のデータベースに格納して、日次バッチで処理するよりも、リアルタイムに鮮度の高いまま処理を行うストリームデータ処理を行うのが望ましい。例えば、ネットワークの負荷予測に対しては、ネットワークが過負荷になるタイミングを予測し、ネットワーク機器の切り替えや増強を行うことで、ネットワークのダウンを未然に防止することが可能となる。また工場における設備の故障に対しては、早いタイミングで検知するほど損失を抑えることが可能になる。 When data is processed by a conventional database management system (DBMS), it is necessary to temporarily change data (stream data) arriving every moment into a data format searchable by a conventional database and store the data in a secondary storage device. was there. This conversion process and storage take a lot of time, and it is more efficient to process the data collectively and collectively, so it is often performed in daily batches on a daily basis, and performs data analysis in real time I can't do things. The reason why it is more efficient to perform batch processing is that, for example, it is time-consuming to collectively add data to secondary indexes generally used in conventional databases, instead of adding data one by one. That is, the amount of access to the secondary storage which is expensive can be suppressed. However, it is preferable to perform stream data processing in which the log data is processed in real time with high freshness, rather than storing the log data in a conventional database and processing the log data in a daily batch. For example, when predicting the load on the network, the timing at which the network becomes overloaded is predicted, and network devices are switched or strengthened, whereby it is possible to prevent the network from going down. In addition, as for the failure of the equipment in the factory, the earlier the detection is, the more the loss can be suppressed.
しかし、ストリームデータ処理を行うためにストリームデータのリアルタイム処理アプリケーションを個別に作成すると、開発期間の長期化、処理内容の変化への迅速な対応が困難といった問題がある。そこで汎用のストリームデータ処理システムやストリームデータ処理クエリが提案されている。例えば、非特許文献1には、ストリームデータ処理システムが開示されている。
However, if a real-time processing application for stream data is individually created to perform stream data processing, there is a problem in that the development period is lengthened, and it is difficult to quickly respond to changes in processing contents. Therefore, general-purpose stream data processing systems and stream data processing queries have been proposed. For example, Non-Patent
また、ストリームデータ処理システムに関する技術として、特許文献1ではストリームデータ処理において装置間の通信回数を減らす方法が提案されている。
As a technique related to a stream data processing system,
大企業においてネットワークの負荷の算出を行う場合には、ネットワークに接続された数万〜数十万のコンピュータを監視する。コンピュータのログデータを解析するためには各コンピュータやネットワーク機器などからサーバ等にログデータを送信する必要がある。ネットワーク負荷の低減や、通信にかかる消費電力を抑制する観点から、コンピュータやネットワーク機器などからサーバへのログデータの送信間隔を長くして、送信回数を少なくすることが望ましい。 When calculating the load on a network in a large company, tens of thousands to hundreds of thousands of computers connected to the network are monitored. In order to analyze the log data of a computer, it is necessary to transmit the log data from each computer or network device to a server or the like. From the viewpoint of reducing the network load and suppressing the power consumption for communication, it is desirable to increase the transmission interval of log data from a computer or network device to the server and reduce the number of transmissions.
また、IoTシステムで良く用いられる無線センサは電池駆動が多く、センサデータの送信間隔を長くし、送信回数を少なくする事により通信電力消費を抑制し、駆動時間を長くする事が望ましい。センサデータの送信間隔が長くなると、無線親機が扱える子機数が増えるため、システム全体の価格を抑えることも可能になる。これは、複数の通信が重なった場合には通信を中断し、一定時間後に再度通信を試みる、という通信で広く使われるCSMA/CDプロトコルにおいて、通信間隔が長くなると通信の重なりが起こりにくくなるためである。 In addition, wireless sensors frequently used in IoT systems are often driven by batteries, and it is desirable to increase the interval between sensor data transmissions and reduce the number of transmissions, thereby suppressing communication power consumption and increasing the driving time. When the transmission interval of the sensor data becomes longer, the number of slave units that can be handled by the wireless master unit increases, so that the price of the entire system can be reduced. This is because, in the CSMA / CD protocol widely used in communication in which a plurality of communications are interrupted and communication is attempted again after a certain period of time, communications are less likely to occur when the communication interval is long. It is.
しかし、単純にデータの送信間隔を長くすると、結果出力遅延が発生し、処理がリアルタイムに行えなくなってしまう。そのため、結果出力遅延と通信回数削減効果のトレードオフからデータの送信間隔を算出する必要がある。 However, if the data transmission interval is simply lengthened, a result output delay occurs, and processing cannot be performed in real time. Therefore, it is necessary to calculate the data transmission interval from the trade-off between the result output delay and the effect of reducing the number of times of communication.
しかし、従来技術ではストリームデータ処理のデータ送信間隔については考慮されていない。そのため、より長い間隔でデータを送信してもリアルタイムに処理が出来る場合であっても、短い送信間隔が用いられる可能性がある。特許文献1では、ストリームデータ処理において装置間の通信回数を減らす方法が提案されている。通信の多いクエリ処理の組を同一装置で処理する事により、装置間の通信回数を減らす方法であるが、通信の間隔は扱われていないため、ストリームデータの送信間隔を長くして送信回数を減らすことによるネットワーク負荷の低減や省電力効果は見込めない。
However, the prior art does not consider the data transmission interval for stream data processing. Therefore, even if data can be transmitted in a longer interval and processing can be performed in real time, a shorter transmission interval may be used.
本発明の代表的な一形態は、ストリームデータを送信する第一の処理装置とクエリに基づいて前記第一の処理装置から受信した前記ストリームデータに対して処理を実行する第二の処理装置とネットワークを介して接続される管理装置であって、前記管理装置は、プロセッサと格納部を備え、前記格納部は、複数の前記クエリから構成されるクエリグラフに関する情報を格納し、前記クエリグラフを構成する少なくとも一つの前記クエリは、所定の間隔で前記ストリームデータの処理を実行する処理に関する情報を含み、前記プロセッサは、前記クエリグラフに基づいて、一つ以上の前記クエリを前記第二の処理装置に割り当て、前記所定の間隔と前記クエリグラフに基づいて、前記第一の処理装置が前記ストリームデータを前記第二の処理装置に送信する間隔であるデータ送信間隔を算出し、前記データ送信間隔に関する情報を前記第一の処理装置に送信することを特徴とするものである。 A representative embodiment of the present invention is a first processing device that transmits stream data and a second processing device that performs processing on the stream data received from the first processing device based on a query. A management device connected via a network, wherein the management device includes a processor and a storage unit, wherein the storage unit stores information about a query graph composed of a plurality of the queries, and stores the query graph. At least one of the queries comprises information on a process of executing the process of the stream data at a predetermined interval, and the processor performs one or more of the queries based on the query graph in the second process. Assigned to a device, and based on the predetermined interval and the query graph, the first processing device processes the stream data in the second processing. Calculates data transmission interval is an interval for transmitting the location, is characterized in that transmits information on the data transmission interval to the first processing unit.
本発明を用いることにより、ストリームデータ処理システムの処理結果出力に影響を与えない範囲でシステム全体の電力消費の抑制や、ネットワーク負荷を低減することが出来る。 By using the present invention, it is possible to suppress the power consumption of the entire system and reduce the network load within a range that does not affect the processing result output of the stream data processing system.
以下、図面を参照しながら、幾つかの実施例を説明する。 Hereinafter, some embodiments will be described with reference to the drawings.
図1は、本発明の実施形態を示し、ストリームデータ処理システムの一例を示している。 FIG. 1 shows an embodiment of the present invention, and shows an example of a stream data processing system.
管理サーバ100は、クエリグラフの実行の際に、コンピュータ300がログデータ341をサーバ200に送信する間隔であるデータ送信間隔をコンピュータ300に送信し、ログデータ341に対してデータ処理を実行するクエリグループをサーバ200に割り当てる。そしてサーバ200でのクエリグループの実行結果に基づき、クエリグラフの実行結果を外部に出力する。管理サーバ100と一つ又は複数のサーバ200と一つ又は複数のコンピュータ300が通信ネットワーク400を介して接続されている。管理サーバ100、サーバ200はデータ処理を行うのであれば、サーバに限らず仮想マシンであってもよい。通信ネットワーク400を介した通信のプロトコルとしては、例えば、FC(Fibre Channel)、SCSI(Small Computer System Interface)、又は、TCP/IP(Transmission Control Protocol/Internet Protocol)が採用されて良い。通信ネットワーク400を介した通信のプロトコルとしては、例えば、IEEE802.11、IEEE802.15.1、又は、IEEE802.15.4が採用されて良い。
When executing the query graph, the
管理サーバ100はハードウェア構成として、メモリ110、記憶装置120、プロセッサ130、ネットワークインターフェース140、入力デバイス150、出力デバイス160を備える。
The
プロセッサ130は、メモリ110に格納されるプログラムを実行する。プロセッサ110がプログラムを実行しコンピュータ100の機能が実現される。以下、機能部を主語の処理を説明する場合、プロセッサ130が当該機能部を実現するプログラムを実行していることを示す。
The
ネットワークインターフェース140は、ネットワークを介して他の装置と接続するためのインターフェースである。
The
記憶装置120は、ストリームデータに対する処理の内容を記述した一つまたは複数のクエリグラフ121と、構成情報122を格納する。クエリグラフは複数のクエリをツリー化したものであり、各クエリの処理内容とクエリの接続関係を示し、クエリに設定された処理の実行順序などの情報を含む。クエリグラフの一例を図3に示す。例えば、クエリ3003はクエリ3002の実行結果を受け取り、クエリ3003の処理が行われることを示す。クエリ3003の実行結果はクエリ3004に受け渡される。記憶装置120は、コントローラおよび複数の記憶媒体を有するストレージシステムが考えられる。また、記憶装置120は、記憶媒体を有する一般的な計算機でもよいし、記憶媒体そのものであってもよい。ここで、記憶媒体は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)等が考えられる。
The
入力デバイス150は、データを入力する。入力デバイス150としては、たとえば、キーボード、マウス、タッチパネル、テンキー、スキャナがある。出力デバイス160は、データを出力する。出力デバイス160としては、たとえば、ディスプレイ、プリンタがある。
The
メモリ110は、送信間隔算出部111と、送信間隔送信部112と、クエリグループ割り当て部113と、クエリグループ実行結果処理部114を実現するプログラムを格納する。各部の機能については、後述する。
The
サーバ200は、コンピュータ300から送信されるログデータ341に対して、管理サーバ100から割り当てられたクエリグループの処理を実行する。サーバ200はハードウェア構成として、ネットワークインターフェース210と、プロセッサ220と、メモリ230を備える。なお、サーバ200はサーバに限るものでなくてもよく、仮想マシンでもよい。
The
ネットワークインターフェース210は、ネットワークを介して他の装置と接続するためのインターフェースである。
The
プロセッサ220はメモリ230に格納されるプログラムを実行する。プロセッサ220がプログラムを実行しサーバ200の機能が実現される。
The
メモリ230はクエリグループ実行部231を実現するプログラムを格納する。クエリグループ実行部231は、コンピュータ300から受信したログデータ341に対して管理サーバ100から割り当てられたクエリグループの処理を実行する。処理結果は管理サーバ100もしくは他のサーバ200に出力する。
The
コンピュータ300はログデータ341を管理サーバ100から受信したデータ送信間隔でサーバ200に送信する。コンピュータ300はハードウェア構成として、ネットワークインターフェース310と、プロセッサ320と、メモリ330と、記憶装置340を備える。なお、コンピュータ300はストリームデータを蓄積するものであればよく、工場のセンサデバイスであってもよい。
The
ネットワークインターフェース310は、ネットワークを介して他の装置と接続するためのインターフェースである。
The
プロセッサ320はメモリ330に格納されるプログラムを実行する。プロセッサ320がプログラムを実行しコンピュータ300の機能が実現される。
メモリ330はデータ送信部331を実現するプログラムを格納する。データ送信部331は、ログデータ341を管理サーバ100から受信したデータ送信間隔に基づいてサーバ200に送信する。
The
記憶装置340は、コンピュータのネットワークへのアクセスログであるログデータ341を格納する。記憶装置340は、コントローラおよび複数の記憶媒体を有するストレージシステムが考えられる。また、記憶装置340は、記憶媒体を有する一般的な計算機でもよいし、記憶媒体そのものであってもよい。ここで、記憶媒体は、HDD(Hard Disk Drive)及びSSD(Solid State Drive)や等が考えられる。
The
図2は、コンピュータ300に蓄積されるログデータ341に対して、クエリグラフ121に基づいてストリームデータ処理を実行する流れの一例である。
(S201)ログデータ341に対してクエリグラフ121に基づいた処理が開始されると、送信間隔算出部111はコンピュータ300からサーバ200へのデータ送信間隔をクエリグラフ121に基づいて算出する。コンピュータ300からサーバ200へのデータ送信間隔をクエリグラフ121に基づいて算出する手法については、後述する。
(S202)送信間隔送信部112は算出したデータ送信間隔をコンピュータ300に送信する。コンピュータ300は、受信したデータ送信間隔に基づいて、ログデータ341をサーバ200に送信する。
(S203)クエリグループ割り当て部113は、構成情報122とクエリグラフ121と算出したデータ送信間隔に基づいて、クエリグラフ121内のクエリグループをサーバ200に割り当てる。クエリグループのサーバ200への割り当て方法については、後述する。
(S204)クエリグループ実行部231は、コンピュータ300が送信したログデータ341に対して、割り当てられたクエリグループを実行する。
(S205)クエリグループ実行結果処理部114は、各サーバ200のクエリグループの実行結果を、クエリグラフ121の実行結果として処理する。
(S206)クエリグループ実行結果処理部114は、クエリグラフ121の実行結果を出力デバイス160に出力し、処理を終了する。FIG. 2 is an example of a flow of executing stream data processing on the
(S201) When the processing based on the
(S202) The transmission
(S203) The query
(S204) The query
(S205) The query group execution
(S206) The query group execution
なお、S206とS207では、サーバ200でのクエリグループの実行結果は管理サーバ100で処理と出力を行っているが、サーバ200が他のサーバ200に処理結果を出力することや、サーバ200が出力デバイスを持ち、その出力デバイスにサーバ200の処理結果を出力する形であっても良い。
In S206 and S207, the execution result of the query group in the
S201で、送信間隔算出部111が、クエリグラフ121に基づいてコンピュータ300からサーバ200へのログデータ341のデータ送信間隔を算出する方法について具体的に説明する。
In S201, a method in which the transmission
図3は、ネットワーク分析を行うクエリグラフ処理の一例である。一般的に、ネットワーク分析では、ネットワーク通信の応答時間の平均値や最大値などの基礎的な統計情報を一定時間毎に算出して、算出した値を用いて負荷予測などの高度な分析を行う。基礎的な統計情報の算出をストリームデータ処理で行う例について説明する。 FIG. 3 is an example of a query graph process for performing network analysis. Generally, in network analysis, basic statistical information such as an average value or a maximum value of response time of network communication is calculated at regular intervals, and advanced analysis such as load prediction is performed using the calculated value. . An example in which basic statistical information is calculated by stream data processing will be described.
図3のクエリグラフ121は、分析対象のネットワークログを読込み、正常データの最大応答時間と通信エラー数を機器毎に算出するためのストリームデータ処理のクエリグラフであり、9つのクエリから構成されている。3001、3002、3003、3004、3005、3006、3007、3008、3009はクエリを表し、矢印はクエリ間のつながりを表している。各クエリで行う処理について説明する。分析対象のログデータ341を3001で受けとり、受け取ったデータから正常データのみの抽出処理を3002で行って、機器毎の最大応答時間を3003で4秒毎に算出する。算出結果から最大応答時間が100ミリ秒以上のデータのみの抽出を3004で行って、3005で最大応答時間の処理結果を出力デバイス160に出力している。3006では、3001で読み込まれたデータのうち通信エラーのみを抽出し、機器毎のエラー数を30秒毎に3007で算出する。3007の算出結果から、合計エラー数が5以上の機器データのみを3008にて抽出する。抽出結果を3009において出力デバイス160に出力する。
The
特に、3001はコンピュータ300からログデータ341を受信するクエリであり、3005と3009はクエリグラフで実行した処理を出力するクエリである。
In particular, 3001 is a query that receives the
図4は、処理例の入力データであるログデータ341の一例である。ログデータ341は、複数のレコードを有する。このレコードは、データ属性として、TIMESTAMP4001と、ID4002と、RESPONSE_TIME4003と、STATUS_CODE4004とを有する。
FIG. 4 is an example of
TIMESTAMP4001は、通信ログが生成された日時を表す。ID4002は、その通信ログの通信を行った機器を識別する情報を表す。RESPONSE_TIME4003は、通信の応答時間を表す。STATUS_CODE4004は、その通信のステータスコードを表す。
例えば、図4のレコード4005は、通信ログの生成時間(TIMESTAMP4001)が「08:03:01:01」で、機器を識別する情報(ID4002)が「1」で、通信の応答時間(RESPONSE_TIME313)が「70」で、ステータスコード(STATUS_CODE34004)が「200」であることを示す。ここで、ステータスコード「200」はデータが正常に通信されたことを示し、「50」は通信エラーが起きたことを示す。
For example, in the
レコード4005と4007は、ステータスコードが「200」のため、データが正常に通信されており、クエリグラフ121の分岐の3002側の処理が行われる。レコード4005の応答時間は70ミリ秒のため、クエリ3004で抽出されず、応答時間が250ミリ秒のレコード4007は3005のクエリの処理が行われる。また、レコード4006はステータスコードが「50」のため、通信エラーが起きたことを示しており、クエリグラフ121の分岐の3006側の処理が行われる。
Since the status codes of the
なお、3003と3007にはデータを蓄積し数秒毎に出力するRSTREAM処理が含まれているため、データを逐次的に送信・処理する代わりに、RSTREAMの時間間隔でデータをまとめて送信し、統計情報算出などの処理を行っても結果出力の時間間隔に影響を与えない。この長くすることができる送信間隔を許容送信間隔と呼ぶこととする。 Since 3003 and 3007 include an RSTREAM process for accumulating data and outputting the data every few seconds, instead of transmitting and processing the data sequentially, the data is collectively transmitted at the RSTREAM time interval, and the statistics are transmitted. Even if processing such as information calculation is performed, the time interval of result output is not affected. The transmission interval that can be lengthened is referred to as an allowable transmission interval.
図5は、各クエリに許容送信間隔を設定後の図3のクエリグラフの一例である。5001、5002、5003、5004、5005、5006、5007、5008、5009はクエリを表している。5003に許容送信間隔4秒、5007に許容送信間隔30秒が図3のクエリグラフを読み取ることで設定される。
FIG. 5 is an example of the query graph of FIG. 3 after setting an allowable transmission interval for each query.
次に、クエリに許容送信間隔が設定されたクエリグラフにおいて、クエリグラフ全体の許容送信間隔を算出する方法について述べる。クエリグラフ全体の許容送信間隔とは、各クエリの許容送信間隔に基づいて算出されたクエリグラフ全体で設定される許容送信間隔のことである。クエリグラフ全体の許容送信間隔を算出した場合、各クエリ間のデータのやりとりをクエリグラフ全体の許容送信間隔まで長くしても、データ出力に対する遅延は生じない。このクエリグラフ全体の許容送信間隔を全体許容送信間隔と呼ぶ。以下、全体許容送信間隔の算出方法について説明する。 Next, a method for calculating the allowable transmission interval of the entire query graph in the query graph in which the allowable transmission interval is set for the query will be described. The allowable transmission interval of the entire query graph is an allowable transmission interval set for the entire query graph calculated based on the allowable transmission interval of each query. When the allowable transmission interval of the entire query graph is calculated, no delay occurs in the data output even if the exchange of data between the queries is extended to the allowable transmission interval of the entire query graph. This allowable transmission interval of the entire query graph is referred to as an overall allowable transmission interval. Hereinafter, a method of calculating the total allowable transmission interval will be described.
図6をもちいて、直線で構成されているクエリグラフの全体許容送信間隔の設定の方法の1例を説明する。クエリグラフ601はクエリ6001、6002、6003、6004からなる直線のクエリグラフで構成されており、クエリの許容送信間隔が6002と6003に設定されている。6001がデータの受信に関するクエリであり、6004がデータの処理結果の出力に関するクエリである。この場合、6002と6003の許容送信間隔の最小値である2秒でまとめてデータを送信しても、データの処理に遅延を生じない。よって2秒が、クエリグラフ601の全体許容送信間隔となる。
An example of a method of setting the entire allowable transmission interval of a query graph composed of straight lines will be described with reference to FIG. The
図7は、クエリグラフの処理結果の出力に関するクエリからデータの受信に関するクエリまでの各経路を直線に展開後の図3のクエリグラフの一例である。直線A701と直線B702は、それぞれ展開後の経路を表している。クエリ5003には許容送信間隔4秒が設定されており、クエリ5007には許容送信間隔30秒が設定されている。それぞれの許容送信間隔の最大公約数である2秒が、クエリグラフ全体の許容送信間隔となる。この場合、コンピュータ300からサーバ200へのログデータの受信を行うクエリ5001において、全体許容送信間隔の2秒間分のデータをまとめて受信しても、データの出力に遅延を生じない。データを逐次受信するよりも、2秒分まとめて受信することで通信回数を低減し、ネットワーク負荷や消費電力を抑制することが出来る。
FIG. 7 is an example of the query graph of FIG. 3 after each path from the query regarding the output of the processing result of the query graph to the query regarding the reception of the data is linearly developed. A
なお、クエリグラフに分岐がない場合には、直線の許容送信間隔をクエリグラフの全体許容送信間隔として設定出来る。 If there is no branch in the query graph, the allowable transmission interval of a straight line can be set as the overall allowable transmission interval of the query graph.
次に、クエリグラフにおいて、許容送信間隔の設定されているクエリから、設定されていないクエリの許容送信間隔を算出する手法について、図8を用いて説明する。 Next, a method of calculating an allowable transmission interval of a query for which an allowable transmission interval has not been set from a query for which an allowable transmission interval has been set in the query graph will be described with reference to FIG.
図8Aは、分岐を構成するクエリのうち、入力側クエリが複数有り、入力側クエリには許容送信間隔が設定されているが、出力側クエリには許容送信時間が設定されていない場合の展開方法の例である。801、802、803はクエリである。801には許容送信間隔2秒が設定されており、802には許容送信間隔6秒が設定されている。図8Aのように、入力側クエリが複数有り、入力側クエリに許容送信間隔が設定されており、出力側クエリには設定されていない場合には、入力側クエリの許容送信間隔の最大公約数を出力側クエリの許容送信間隔とする。従って、801の許容送信間隔2秒と、802の許容送信間隔6秒の最大公約数である2秒が803の許容送信間隔として設定される。
FIG. 8A is an expansion in a case where there are a plurality of input side queries among the queries constituting the branch, and the allowable transmission interval is set in the input side query, but the allowable transmission time is not set in the output side query. It is an example of a method.
図8Bは、分岐を構成するクエリのうち、出力側クエリが複数有り、入力側クエリには許容送信間隔が設定されていないが、出力側クエリには許容送信間隔が設定されている場合の展開方法の例である。804、805、806はクエリである。805には許容送信間隔2秒が設定されており、806には許容送信間隔3秒が設定されている。図8Bのように、出力側クエリが複数有り、入力側クエリには許容送信間隔が設定されていないが、出力側クエリには許容送信間隔が設定されている場合には、出力側クエリの許容送信間隔の最大公約数を入力側クエリの許容送信間隔とする。従って、805の許容送信間隔2秒と、806の許容送信間隔3秒の最大公約数である1秒が804の許容送信間隔として設定される。 FIG. 8B is a development in a case where there are a plurality of output queries among the queries constituting the branch, and the input query does not have the allowable transmission interval, but the output query has the allowable transmission interval. It is an example of a method. 804, 805, and 806 are queries. In 805, an allowable transmission interval of 2 seconds is set, and in 806, an allowable transmission interval of 3 seconds is set. As shown in FIG. 8B, when there are a plurality of output queries and the allowable transmission interval is not set in the input query, but the allowable transmission interval is set in the output query, the output query is allowed. The greatest common divisor of the transmission interval is set as the allowable transmission interval of the input side query. Therefore, 1 second which is the greatest common divisor of the allowable transmission interval of 2 seconds of 805 and the allowable transmission interval of 3 seconds of 806 is set as the allowable transmission interval of 804.
図8Cは、分岐を構成するクエリのうち、入力側クエリが複数有り、入力側クエリには許容送信間隔が設定されていないが、出力側クエリには許容送信時間が設定されている場合の展開方法の例である。807、808、809はクエリである。809には許容送信間隔2秒が設定されている。図9Cのように、入力側クエリが複数有り、入力側クエリに許容送信間隔が設定されていないが、出力側クエリには設定されている場合には、出力側クエリの許容送信間隔をそのまま入力側クエリの許容送信間隔とする。従って、809の許容送信間隔2秒が、807と808の許容送信間隔として設定される。 FIG. 8C is an expansion in a case where there are a plurality of input queries among the queries constituting the branch, and the allowable transmission interval is not set for the input queries, but the allowable transmission time is set for the output queries. It is an example of a method. 807, 808, and 809 are queries. In 809, an allowable transmission interval of 2 seconds is set. As shown in FIG. 9C, when there are a plurality of input side queries and the allowable transmission interval is not set in the input side query, but is set in the output side query, the allowable transmission interval of the output side query is directly input. It is the allowable transmission interval of the side query. Therefore, the allowable transmission interval of 2 seconds of 809 is set as the allowable transmission interval of 807 and 808.
図8Dは、分岐を構成するクエリのうち、出力側クエリが複数有り、入力側クエリには許容送信間隔が設定されているが、出力側クエリには許容送信間隔が設定されていない場合の展開方法の例である。810、811、812はクエリである。810には許容送信間隔1秒が設定されている。図8Dのように、出力側クエリが複数有り、入力側クエリには許容送信間隔が設定されているが、出力側クエリには許容送信間隔が設定されていない場合には、入力側クエリの許容送信間隔をそのまま出力側クエリの許容送信間隔とする。従って、810の許容送信間隔1秒が、811と812の許容送信間隔として設定される。 FIG. 8D is a development in a case where there are a plurality of output queries among the queries constituting the branch, and an allowable transmission interval is set in the input query, but an allowable transmission interval is not set in the output query. It is an example of a method. 810, 811 and 812 are queries. In 810, an allowable transmission interval of 1 second is set. As shown in FIG. 8D, when there are a plurality of output side queries and an allowable transmission interval is set for the input side query, but an allowable transmission interval is not set for the output side query, the allowable range of the input side query is set. The transmission interval is directly used as the allowable transmission interval of the output side query. Therefore, the allowable transmission interval of one second of 810 is set as the allowable transmission interval of 811 and 812.
なお、前述した手法を用いて許容送信間隔の設定されたクエリの許容送信間隔に基づいて、許容送信間隔の設定されていないクエリにさらに前述の算出処理を実行してもよい。また、許容送信間隔の設定されているクエリの処理の前もしくは後のクエリが許容送信間隔を設定されていない、かつ前もしくは後のクエリが一つしかない場合は、前もしくは後のクエリの許容送信間隔を許容送信間隔の設定されたクエリの許容送信間隔と等しいとして設定してもよい。 In addition, based on the allowable transmission interval of the query for which the allowable transmission interval has been set using the above-described method, the above-described calculation processing may be further performed on the query for which the allowable transmission interval has not been set. Also, if the query before or after the processing of the query for which the allowable transmission interval is set does not set the allowable transmission interval, and there is only one query before or after, the allowable The transmission interval may be set to be equal to the allowable transmission interval of the query for which the allowable transmission interval has been set.
図9を用いて、送信間隔算出部111がクエリグラフ121に基づいてデータの送信間隔を設定する処理の流れの一例を示す。
FIG. 9 shows an example of a flow of a process in which the transmission
送信間隔算出部111は、管理サーバ100がログデータの解析の指示を受けると、コンピュータ300からサーバ200へのデータ送信間隔の算出処理を開始する。ログデータの解析は管理サーバ100の管理システムの管理者のクエリグラフ実行の要求によって始まってもよいし、クエリグラフが記憶装置121に新たに格納されたタイミングで開始してもよい。
(S901)データ送信間隔の算出処理が開始されると、送信間隔算出部111はクエリグラフ121のRSTREAM変換を行うクエリに対して、変換秒数を許容送信間隔として設定する。
(S902)許容送信間隔の設定されたクエリグラフにおいて、クエリの前後関係から新たに許容送信間隔が設定可能なクエリがあるか判定する。ある場合はS903の処理を、ない場合はS904の処理を行う。
(S903)図8を用いて説明したように、クエリの前後関係を参照しクエリの許容送信間隔を設定する。設定したらS902の処理に戻る。
(S904)クエリグラフに分岐があるか判定する。分岐がある場合はS905の処理を、ない場合はS906の処理を行う。
(S905)図7を用いて説明したように、分岐をもとにクエリグラフを直線に展開する。直線に展開したら、S904の処理に戻る。
(S906)展開後の各直線に対して、図6で説明したように直線の許容送信間隔を算出する。具体的には、直線内のクエリの許容送信間隔の最小値を直線の許容送信間隔とする。
(S907)展開後の直線全てに許容送信間隔が設定されているか判定する。設定されている場合にはS908の処理を、設定されていない直線がある場合にはS910の処理を行う。
(S908)すべての展開後の直線の許容送信間隔の最小値を、クエリグラフ全体の許容送信間隔として設定する。なお、全てのクエリの許容送信間隔の最小値をクエリグラフ全体の許容送信間隔として選んでも良い。
(S909)送信間隔算出部111は、クエリグラフ全体の許容送信間隔を、コンピュータ300からサーバ200へのログデータのデータ送信間隔として送信間隔送信部112に通知する。これにより処理を終了する。
(S910)送信間隔算出部111は、コンピュータ300からサーバ200へのデータのデータ送信間隔を設定出来ないことを送信間隔送信部112に通知する。これにより処理が終了する。クエリグラフ全体の許容送信間隔が設定できなかった場合には、コンピュータ300からサーバ200へデータを逐次送信することとなる。When the
(S901) When the data transmission interval calculation process starts, the transmission
(S902) In the query graph in which the allowable transmission interval is set, it is determined from the context of the query whether there is a query for which a new allowable transmission interval can be set. If there is, the process of S903 is performed, and if not, the process of S904 is performed.
(S903) As described with reference to FIG. 8, the allowable transmission interval of the query is set with reference to the context of the query. After the setting, the process returns to S902.
(S904) It is determined whether there is a branch in the query graph. If there is a branch, the process of S905 is performed, and if there is no branch, the process of S906 is performed.
(S905) As described with reference to FIG. 7, the query graph is developed into a straight line based on the branch. After the development to a straight line, the process returns to S904.
(S906) For each straight line after the development, the allowable transmission interval of the straight line is calculated as described with reference to FIG. Specifically, the minimum value of the allowable transmission interval of the query within the straight line is set as the allowable transmission interval of the straight line.
(S907) It is determined whether the allowable transmission interval is set for all the straight lines after the development. If it has been set, the process of S908 is performed, and if there is a straight line that has not been set, the process of S910 is performed.
(S908) The minimum value of the allowable transmission intervals of all the developed straight lines is set as the allowable transmission interval of the entire query graph. Note that the minimum value of the allowable transmission intervals of all queries may be selected as the allowable transmission interval of the entire query graph.
(S909) The transmission
(S910) The transmission
なお、S902とS903については、処理をスキップしても良い。 Note that the processing may be skipped for S902 and S903.
図10と図11を用いて、送信間隔算出部111がクエリグラフ121にもとづいて、コンピュータ300からサーバ200へのデータ送信間隔を送信間隔送信部112に通知するまでの流れを具体的に説明する。図10のクエリグラフの1001から1028は全てクエリを表す。また、クエリ1001はデータの受信を行うクエリであり、クエリ1007と1008は処理結果を出力するクエリである。
With reference to FIGS. 10 and 11, the flow until the transmission
図10AのRSTREAM変換を行うクエリを含んだクエリグラフは、図10Bのように許容送信間隔が各クエリに設定される。クエリ1012は、クエリ1013の許容送信間隔2秒とクエリ1014の許容送信間隔3秒の最大公約数1秒が許容送信間隔として設定される。クエリ1017は、クエリ1015の許容送信間隔6秒と、クエリ1016の許容送信間隔4秒とクエリ1014の許容送信間隔3秒の最大公約数1秒が許容送信間隔として設定される。クエリ1018は、クエリ1014の許容送信間隔3秒が許容送信間隔として設定される。クエリ1021にはクエリ1022の許容送信間隔である1秒が許容送信間隔として設定される。
In the query graph including the query for performing the RSTREAM conversion in FIG. 10A, an allowable transmission interval is set for each query as shown in FIG. 10B. In the
図11は図10Cをクエリグラフの分岐に基づいて直線に展開したものを上から1101、1102、1103、1104として並べたものである。1101の直線の許容送信間隔は、直線内に存在するクエリの許容送信間隔の最小値である1秒として算出される。1102の直線の許容送信間隔は、直線内に存在するクエリの許容送信間隔の最小値である1秒として算出される。1103の直線の許容送信間隔は、直線内に存在するクエリの許容送信間隔の最小値である1秒として算出される。1104の直線の許容送信間隔は、直線内に存在するクエリの許容送信間隔の最小値である1秒として算出される。
FIG. 11 is a diagram obtained by expanding FIG. 10C into straight lines based on the branches of the query graph and arranging them as 1101, 1102, 1103, and 1104 from the top. The allowable transmission interval of the
各直線の許容送信間隔は、1秒、1秒、1秒、1秒となり、最小値の1秒がクエリグラフ全体の許容送信間隔として算出される。送信間隔算出部111は、コンピュータ300からサーバ200へのデータ送信間隔として1秒を送信間隔送信部112に通知する。コンピュータ300はサーバ200に対して、1秒分のデータをまとめて送信しても出力結果に遅延を生じない。以上より、クエリグラフの制約条件の下で通信回数を少なくし、逐次データを送信するよりもネットワーク負荷や消費電力を抑制することができる。
The allowable transmission interval of each straight line is 1 second, 1 second, 1 second, and 1 second, and the minimum value of 1 second is calculated as the allowable transmission interval of the entire query graph. The transmission
次に、図12と図13を用いてクエリグラフに全体許容送信間隔を設定出来ない場合について説明する。1201から1218はクエリを表す。また、クエリ1201はデータの受信を行うクエリであり、クエリ1207と1208は処理結果を出力するクエリである。
Next, a case where the entire allowable transmission interval cannot be set in the query graph will be described with reference to FIGS.
図12AのRSTREAM変換を行うクエリを含んだクエリグラフは、図12Bのように許容送信間隔が各クエリに設定される。クエリの許容送信間隔の前後関係から許容送信間隔を設定出来るクエリは存在しない。図13は図12Bを分岐に基づいて直線に展開したものをクエリグラフの上から1301、1302、1303、1304として並べたものである。1301と1302は直線の許容送信間隔が2秒と算出されているが、1303と1304については、直線の許容送信間隔を算出出来ない。よって、クエリグラフの全体許容送信間隔を設定出来ず、送信間隔算出部111は、コンピュータ300からサーバ200へのデータの送信を逐次行うよう送信間隔送信部112に通知する。
In the query graph including the query for performing the RSTREAM conversion in FIG. 12A, the allowable transmission interval is set for each query as shown in FIG. 12B. There is no query that can set the allowable transmission interval based on the context of the allowable transmission interval of the query. FIG. 13 is obtained by expanding FIG. 12B into straight lines based on the branches and arranging them as 1301, 1302, 1303, and 1304 from the top of the query graph. For 1301 and 1302, the allowable transmission interval of the straight line is calculated as 2 seconds, but for 1303 and 1304, the allowable transmission interval of the straight line cannot be calculated. Therefore, the entire allowable transmission interval of the query graph cannot be set, and the transmission
次に、クエリグループ割り当て部113が、クエリグラフ121と構成情報122と算出したデータ送信間隔に基づいて、サーバ200にクエリグループの割り当てを行う処理について説明する。クエリグループ割り当て部113は、各サーバ200がデータ送信間隔内でデータを処理できるよう、クエリグループを割り当てることで、取得したログデータを遅滞なく解析・出力することが出来る。
Next, a process in which the query
図14はサーバ200へのクエリグル―プ割り当て処理の流れの一例である。クエリグループ割り当て処理の開始は、送信間隔算出部111がデータ送信間隔を算出したタイミングでもよいし、管理サーバ100の管理システムの管理者の指示によって開始してもよい。
(S1401)クエリグラフにおいて、各クエリ間のデータの送信量を算出する。
(S1402)データの出力を開始するクエリからクエリ間のデータ送信量が最小となるクエリまでをサーバへ割り当てるクエリグループの候補として設定する。
(S1403)サーバへ割り当てるクエリグループの候補を、算出したデータ送信間隔内で処理可能なサーバが存在するかをサーバの構成情報122に基づいて判定する。
(S1404)サーバへ割り当てるクエリグループの候補を、算出したデータ送信間隔内で処理可能なサーバが存在する場合にS1406に、存在しない場合にS1405の処理を行う。
(S1405)クエリ間のデータ送信量が次に小さくなるクエリまでを、サーバへ割り当てるクエリグループの候補として設定する。
(S1406)割り当てるクエリグループの候補を、S1404で判定したサーバに割り当てる。
(S1407)クエリグラフ内の全てのクエリをサーバに割り当てたか判定する。割り当てた場合はクエリグループ割り当て処理を終了する。割り当てが終了していない場合は、クエリグラフ内のクエリグループの割り当てが終わっていないクエリに対して、S1402の処理を行う。FIG. 14 is an example of the flow of a query group assignment process to the
(S1401) In the query graph, the data transmission amount between each query is calculated.
(S1402) The range from the query that starts outputting data to the query that minimizes the data transmission amount between queries is set as a query group candidate to be allocated to the server.
(S1403) A query group candidate to be assigned to the server is determined based on the
(S1404) If there is a server that can process a query group candidate to be assigned to the server within the calculated data transmission interval, the processing in S1406 is performed, and if not, the processing in S1405 is performed.
(S1405) The query up to the next smaller data transmission amount between queries is set as a query group candidate to be assigned to the server.
(S1406) The query group candidate to be assigned is assigned to the server determined in S1404.
(S1407) It is determined whether all the queries in the query graph have been assigned to the server. If so, the query group assignment process ends. If the assignment has not been completed, the process of S1402 is performed for a query that has not been assigned a query group in the query graph.
以上の操作によって、複数のサーバ200でログデータ341に対してクエリグラフ121に基づいて解析処理を行う際に、データ出力に遅延なく処理を行うことが可能となる。
With the above operation, when the plurality of
次に、図15と図16を用いて実際にサーバにクエリグループを割り当てる処理について説明する。 Next, a process of actually assigning a query group to a server will be described with reference to FIGS.
図15は、割り当て対象のクエリである。1501から1505はクエリを示している。本発明の手法を使い、データ送信間隔は1秒と算出出来る。図16は、図1の構成情報112の具体例の一例であり、例えばクエリの想定処理タプル数やタプル毎処理時間、想定処理時間が格納されている。想定処理タプル数は、例えば入力タプルとクエリの情報から算出できる。具体的には、集約処理(Group byなど)を特定時間間隔で行うクエリでは、特定時間内にクエリに入力されるタプルのGroup by指定カラムのカラム値種類数の積が、後段クエリに渡す処理タプル数の上限となる。それ以外のクエリでは、前段クエリの処理タプル数がそのまま後段クエリの処理タプル数となる。Group by以外に、例えば1カラムに対するSUM処理やAVG処理でも後段クエリに渡す処理タプル数が減少する。想定処理時間は、例えばクエリの実測処理時間から算出出来る。
FIG. 15 shows a query to be assigned.
まず、15Aのクエリグラフについて、各クエリ間のデータの送信量を算出し、クエリグループ間のデータ送信量が最小となるクエリグループ候補を求める。この最小となるクエリグループの求め方は後に説明する。クエリグラフ内の全てのクエリを1つのクエリグループに割り当てる場合、クエリグラフ間のデータ送信が必要無いため、データ送信量が最小となる。 First, for the query graph of 15A, the data transmission amount between the queries is calculated, and a query group candidate that minimizes the data transmission amount between query groups is obtained. The method for obtaining the minimum query group will be described later. When all queries in the query graph are assigned to one query group, data transmission between the query graphs is not required, so that the data transmission amount is minimized.
15Bに、全てのクエリを1クエリグループで処理する例を示した。まず、データ送信量が最小となる15Bについて、処理時間を算出して、許容送信間隔内で処理可能なサーバが存在するかを判定する。処理時間は、図16の情報を用いて算出する。クエリグループを構成するクエリの想定処理時間の合計が、クエリグループの想定処理時間となる。15Bでは、1秒間に受信するデータの想定処理時間の合計が2秒となり、算出したデータ送信間隔より長くなっている。よって1秒ごとにデータを受信しても受信するデータを処理しきれず、未処理データが無制限にたまってしまう。 FIG. 15B shows an example in which all queries are processed in one query group. First, the processing time is calculated for 15B with the minimum data transmission amount, and it is determined whether there is a server that can process within the allowable transmission interval. The processing time is calculated using the information in FIG. The sum of the assumed processing times of the queries constituting the query group is the assumed processing time of the query group. In the case of 15B, the total estimated processing time of data received per second is 2 seconds, which is longer than the calculated data transmission interval. Therefore, even if data is received every second, the data to be received cannot be processed completely, and unprocessed data is accumulated without limit.
15Cは、クエリグループ間のデータ送信量が15Bの次に小さいクエリグループ割り当てである。サーバ1に割り当てたクエリグループの想定処理時間の合計が1秒となり、入力データ量と処理可能量がバランスする。その後、クエリグループ割り当て部113はクエリグループ割り当てが行われていない1505クエリを、他のサーバに対してクエリグループ割り当てを行う。以上の操作によって、処理結果の出力に遅延を生じることなくデータの処理が可能となる。
15C is a query group allocation in which the data transmission amount between query groups is the second smallest after 15B. The total estimated processing time of the query group assigned to the
図17はクエリグループ間通信量の小さいクエリグループ抽出処理の流れの一例である。クエリグループ抽出処理の開始は、送信間隔算出部111がデータの送信間隔を算出したタイミングでもよいし、管理サーバ100の管理システムの管理者の指示によって開始してもよい。
(S1701)クエリグラフにおいて、「データ入力側でGroup byを含むRSTREAM処理を行うクエリ数が最も多い、クエリグループ候補」を抽出し、「データ入力側のGroup byを含むRSTREAM処理数」を記憶する。
(S1702)抽出したクエリグループと同じ、「データ入力側のGroup byを含むRSTREAM処理数」を持つすべてのクエリグループ候補について「データがクエリグループ間を往復する、クエリグループ候補」か判定し、「往復しない」と判定された候補が存在する場合にS1703、存在しない場合にS1704の処理を行う。
(S1703)「往復しない」クエリグループ候補を「クエリグループ割り当て処理」に渡して、処理終了。
(S1704)「データ入力側でGroup byを含むRSTREAM処理を行うクエリ数が抽出候補の次にすくない、クエリグループ候補」が存在しないか判定し、存在する場合にS1705、存在しない場合にS1706の処理を行う。
(S1705)「往復しない」クエリグループ候補が存在しないと「クエリグループ割り当て処理」に通知して、処理終了。
(S1706)「データ入力側でGroup byを含むRSTREAM処理を行うクエリ数が
抽出候補の次にすくない、クエリグループ候補」を抽出する。「データ入力側のGroup byを含むRSTREAM処理数」を記憶し、S1702の処理を行う。FIG. 17 is an example of the flow of a query group extraction process in which the communication volume between query groups is small. The query group extraction process may be started at the timing when the transmission
(S1701) In the query graph, “query group candidates with the largest number of queries that perform RSTREAM processing including Group by on the data input side” are extracted, and “the number of RSTREAM processes including Group by on the data input side” are stored. .
(S1702) For all the query group candidates having the same “number of RSTREAM processes including Group by on the data input side” as the extracted query group, it is determined whether the query group candidate is “a query group candidate in which data reciprocates between query groups”. If there is a candidate determined not to reciprocate, the process of S1703 is performed, and if not, the process of S1704 is performed.
(S1703) The query group candidate “do not go and return” is passed to the “query group assignment process”, and the process ends.
(S1704) It is determined whether or not “the number of queries for which RSTREAM processing including Group by is performed on the data input side is shortest next to the extraction candidates, query group candidates” does not exist. I do.
(S1705) If there is no query group candidate “do not go and return”, “query group allocation processing” is notified, and the processing ends.
(S1706) “A query group candidate in which the number of queries for performing RSTREAM processing including Group by on the data input side is the second smallest after the extraction candidate” is extracted. “The number of RSTREAM processes including Group by on the data input side” is stored, and the process of S1702 is performed.
以上の操作によって、クエリグループ間通信量の小さいクエリグループ抽出処理を行うことが可能となる。ネットワーク負荷を低減することが可能となる。 With the above operation, it is possible to perform a query group extraction process with a small inter-query group communication volume. Network load can be reduced.
次に、図18と図19を用いてクエリグループ間通信量の小さいクエリグループ抽出処理について説明する。図18は、割り当て対象のクエリである。1801から1806と1811から1816はクエリを表す。図19は、クエリグループ間をデータが往復する場合と往復しない場合の具体例である。クエリグラフ内の全てのクエリを1つのクエリグループに割り当てる場合、クエリグラフ間のデータ送信が必要無いため、データ送信量が最小となる。 Next, a query group extraction process with a small inter-query group traffic will be described with reference to FIGS. 18 and 19. FIG. 18 shows a query to be assigned. 1801 to 1806 and 1811 to 1816 represent queries. FIG. 19 is a specific example of a case where data reciprocates between query groups and a case where data does not reciprocate. When all queries in the query graph are assigned to one query group, data transmission between the query graphs is not required, so that the data transmission amount is minimized.
18Aに示した、全てのクエリを1クエリグループで含む場合から処理を始める。18Aをクエリグループ間通信量の最も小さいクエリグループとしてクエリグループ割り当て処理に渡し、割り当てが行えなかった場合には、次にクエリグループ間送信量が小さいクエリグループの抽出を行う。次にクエリグループ間送信量が小さいクエリグループは、「Group byを含むRSTREAM処理」である1815クエリを含まない18Bである。このクエリグループについて、クエリグループ割り当て処理を行う。18Bのクエリグループについても、割り当て処理が行えなかった場合には、次に「Group byを含むRSTREAM処理」が少ないクエリグループを抽出する。なお、この抽出の際に、図19に示すようなクエリグループ間のデータ往復が発生しない事が望ましい。クエリ1901と1902はデータ出力に関するクエリである。
The process starts from a case where all queries are included in one query group, as shown in 18A. 18A is passed to the query group assignment process as the query group with the smallest inter-query group communication amount, and if the assignment is not performed, the next query group with the smallest inter-query group transmission amount is extracted. The next query group having the smallest transmission amount between query groups is 18B that does not include the 1815 query that is the “RSTREAM process including Group by”. A query group assignment process is performed for this query group. If the assignment processing cannot be performed on the 18B query group, a query group with the least “RSTREAM processing including Group by” is extracted next. At the time of this extraction, it is desirable that data reciprocation between query groups as shown in FIG. 19 does not occur.
図19の19Aではクエリグループ1とクエリグループ2の間をデータが往復している。一方、19Bではクエリグループ3とクエリグループ間をデータが往復していない。よって、クエリグラフ19Aではデータ出力までにグループ間、すなわちサーバ間でデータのやり取りが2回生じてしまうが、クエリグラフ19Bではサーバ間のデータのやりとりは1回しか生じない。クエリグループ間の往復を判定する方法の一例としては、データ入力からデータ出力までの各径路について、同じクエリグループを複数回辿らないかを判定し、辿る場合にはデータがクエリグループ間を往復していると判定できる。
In FIG. 19A, data reciprocates between
図20は、クエリグラフ121を管理サーバ100の管理者が出力デバイス160を通して確認する例の一例である。クエリグラフ2002は、データ送信間隔の算出対象のクエリグラフを表している。算出結果2003は、データ送信間隔の算出結果である。チューニングポイント2004は、データ送信間隔を長くするための方法が示されている。
FIG. 20 is an example of an example in which the administrator of the
この例では、算出結果2003は、データ送信間隔が1秒である事と、直線Aと直線Bの許容送信間隔が1秒である事を示している。チューニングポイント2004は、クエリaとクエリbの許容送信間隔を2秒にすると、データ送信間隔を2秒に長く出来る事を示している。
In this example, the calculation result 2003 indicates that the data transmission interval is 1 second and that the allowable transmission interval between the straight lines A and B is 1 second. The
例えば、管理サーバ100の管理システムの管理者は、2001のインターフェース上でクエリグラフ121を確認し、業務要件を満たす範囲でクエリを変更して許容送信間隔を設定・変更することでログデータのデータ送信間隔を制御することが可能となる。管理者がコンピュータ300からサーバ200へのログデータのデータ送信間隔を制御することで、ログデータの送信回数を少なくし、消費電力を抑制するよう設定することが可能となる。
For example, the administrator of the management system of the
次に、データ送信間隔の算出方法の別の実施形態について、図21と図22を使って説明する。 Next, another embodiment of the method of calculating the data transmission interval will be described with reference to FIGS.
クエリグラフの全体許容送信間隔は、実施例1の直線に展開する方法以外でも算出することができる。具体的には、クエリグラフに基づいた処理全体のデータを受信するクエリから処理結果を出力するクエリを辿り、全ての経路に許容送信間隔が設定できるクエリが存在するか調べ、全ての経路で許容送信間隔が設定できる場合には各径路の許容送信間隔の最大公約数を処理全体の許容送信間隔とできる。 The overall allowable transmission interval of the query graph can be calculated by a method other than the method of developing the query graph into a straight line. Specifically, the query that outputs the processing result is traversed from the query that receives the data of the entire process based on the query graph, checks whether there is a query that can set the allowable transmission interval for all routes, When the transmission interval can be set, the greatest common divisor of the allowable transmission interval of each path can be set as the allowable transmission interval of the entire process.
図21は、各クエリに許容送信間隔を設定後のクエリグラフの一例である。クエリ上の数字は許容送信間隔を示している。2111、2112、2113、2114、2115、2116、2117、2121、2122、2123、2124、2131、2132、2133、2134、2135はクエリを表している。2114に許容送信間隔2秒、2115に許容送信間隔1秒、2116に許容送信間隔1秒、2123に許容送信間隔2秒、2133に許容送信間隔3秒が設定されている。
FIG. 21 is an example of a query graph after setting an allowable transmission interval for each query. The number on the query indicates the allowable transmission interval.
2110コンピュータ1の処理について、データ送信間隔の算出処理を行う。クエリグラフに基づいた処理結果の出力を行うクエリである2140出力から、データ受信を行うクエリである2112への各径路について、許容送信間隔が設定出来るか調べる。2140から2111へは、3つの経路があり、2115と2116には許容送信間隔1秒、2114には許容送信間隔2秒が設定されている。各径路の許容送信間隔の最大公約数である1秒が、コンピュータ1処理のデータ送信間隔として設定される。
For the processing of the 2110
2120コンピュータ2の処理について、データ送信間隔の算出処理を行う。クエリグラフに基づいた処理結果の出力を行うクエリである2140出力から、データ受信を行うクエリである2122への各径路について、許容送信間隔が設定出来るか調べる。2140から2122へは、1つの経路があり、2123には許容送信間隔2秒が設定されている。許容送信間隔の2秒が、コンピュータ2処理のデータ送信間隔として設定される。
2120 For the processing of the
2130コンピュータ3の処理について、データ送信間隔の算出処理を行う。クエリグラフに基づいた処理結果の出力を行うクエリである2140出力から、データ受信を行うクエリである2132への各径路について、許容送信間隔が設定出来るか調べる。2140から2132へは、2つの経路があり、2133には許容送信間隔3秒が設定されている。しかし、2140、2134、2132の経路には許容送信間隔が設定できないため、コンピュータ3の処理にはデータ送信間隔が設定できない。
2130 For the processing of the
以下、本実施例で行われる処理を説明する。図22は、データ送信間隔算出処理の流れの一例を示す。 Hereinafter, processing performed in the present embodiment will be described. FIG. 22 shows an example of the flow of the data transmission interval calculation process.
送信間隔算出部111は、管理サーバ100がログデータの解析の指示を受けると、コンピュータ300からサーバ200へのデータ送信間隔の算出処理を開始する。ログデータの解析は管理サーバ100の管理システムの管理者のクエリグラフ実行の要求によって始まってもよいし、クエリグラフが記憶装置121に新たに格納されたタイミングで開始してもよい。
(S2201)許容送信間隔算出処理が開始されると、送信間隔算出部111はクエリグラフの各クエリの許容送信間隔を設定する。
(S2202)送信間隔算出部111は、クエリグラフに許容送信間隔が設定出来るか未確認の経路があるか否かを判断する。その判断結果が肯定の場合、S2203が実行され、その判断結果が否定の場合、S2204が実行される。
(S2203)送信間隔算出部111は、クエリグラフの経路の一つに許容送信間隔が設定出来るかの確認を行い、設定できる場合には許容送信間隔を算出する。
(S2205)送信間隔算出部111は、すべての経路に許容送信間隔が設定されているか否かを判断する。その判断結果が肯定の場合、S2206が実行され、その判断結果が否定の場合、S2207が実行される。
(S2206)送信間隔算出部111は、各径路の許容送信間隔の最大公約数をクエリグラフ全体の許容送信間隔とする。
(S2207)送信間隔算出部111は、クエリグラフ全体の許容送信間隔を、コンピュータ300からサーバ200へのログデータのデータ送信間隔として送信間隔送信部112に通知する。これにより処理を終了する。
(S2208)送信間隔算出部111は、コンピュータ300からサーバ200へのデータのデータ送信間隔を設定出来ないことを送信間隔送信部112に通知する。これにより処理が終了する。クエリグラフ全体の許容送信間隔が設定できなかった場合には、コンピュータ300からサーバ200へデータを逐次送信することとなる。When the
(S2201) When the allowable transmission interval calculation process starts, the transmission
(S2202) The transmission
(S2203) The transmission
(S2205) The transmission
(S2206) The transmission
(S2207) The transmission
(S2208) The transmission
なお、S2202とS2203は行わずに、S2205を行ってもよい。これによって、データ送信間隔の算出までの手順を少なくすることが出来る。 Note that S2205 may be performed without performing S2202 and S2203. As a result, the procedure up to the calculation of the data transmission interval can be reduced.
本発明は前述した実施例に限定されるものではない。例えば、工場のIoTシステムに対して、本発明を適用した場合について説明する。 The present invention is not limited to the embodiments described above. For example, a case where the present invention is applied to an IoT system in a factory will be described.
工場内に取り付けられたセンサデバイスからデータを収集し、クエリグラフ121に基づいて設備の故障検知を行う場合がある。センサデバイスは危険な場所に設置されるため、電池駆動が多く、取得したデータを無線でサーバに送信する飛ばす必要がある。クエリグラフ121に基づいてデータ送信間隔を設定することで、データの送信回数を少なくして電池の消費を抑制し、電池交換の頻度を少なくすることが出来る。
In some cases, data is collected from sensor devices installed in a factory, and equipment failure detection is performed based on the
100 管理サーバ
110 メモリ
111 送信間隔算出部
112 送信間隔送信部
113 クエリグループ割り当て部
114 クエリグループ実行結果処理部
120 記憶装置
121 クエリグラフ
122 構成情報
130 プロセッサ
140 ネットワークインターフェース
150 入力デバイス
160 出力デバイス
200 サーバ
210 ネットワークインターフェース
220 プロセッサ
230メモリ
231 クエリグループ実行部
300 コンピュータ
310 ネットワークインターフェース
320 プロセッサ
330 メモリ
331 データ送信部
340 記憶装置
341 ログデータ
400 通信ネットワーク100
Claims (15)
前記管理装置は、
プロセッサと格納部を備え、
前記格納部は、
複数の前記クエリから構成されるクエリグラフに関する情報を格納し、
前記クエリグラフを構成する少なくとも一つの前記クエリは、所定の間隔で前記ストリームデータの処理を実行する処理に関する情報を含み、
前記プロセッサは、
前記クエリグラフに基づいて、一つ以上の前記クエリを前記第二の処理装置に割り当て、
前記所定の間隔と前記クエリグラフに基づいて、前記第一の処理装置が前記ストリームデータを前記第二の処理装置に送信する間隔であるデータ送信間隔を算出し、
前記データ送信間隔に関する情報を前記第一の処理装置に送信することを特徴とする管理装置。A management device connected via a network to a first processing device that transmits stream data and a second processing device that performs processing on the stream data received from the first processing device based on the query. So,
The management device,
Equipped with a processor and storage,
The storage unit,
Storing information about a query graph composed of a plurality of the queries;
At least one of the queries constituting the query graph includes information on a process of executing the process of the stream data at predetermined intervals,
The processor comprises:
Assigning one or more of the queries to the second processing device based on the query graph;
Based on the predetermined interval and the query graph, calculate a data transmission interval that is an interval at which the first processing device transmits the stream data to the second processing device,
A management device for transmitting information on the data transmission interval to the first processing device.
前記クエリグラフは、
前記第二の処理装置が前記ストリームデータを受信する処理に関する受信クエリと、
前記第二の処理装置が前記クエリに基づいて処理を実行した結果を出力する処理に関する出力クエリを含み、
前記プロセッサは、
前記クエリグラフにおける前記受信クエリと前記出力クエリとの間の経路上に存在する前記クエリに設定された前記所定の間隔に基づいて、
前記データ送信間隔を算出することを特徴とする管理装置。The management device according to claim 1,
The query graph is
A reception query related to a process in which the second processing device receives the stream data,
The second processing device includes an output query related to a process of outputting a result of executing a process based on the query,
The processor comprises:
Based on the predetermined interval set in the query that exists on the path between the received query and the output query in the query graph,
A management device for calculating the data transmission interval.
前記データ送信間隔は、前記クエリに設定された前記所定の間隔の最大公約数であることを特徴とする管理装置。The management device according to claim 2, wherein
The management device, wherein the data transmission interval is a greatest common divisor of the predetermined interval set in the query.
前記データ送信間隔は、前記クエリに設定された前記所定の間隔の最小値であることを特徴とする管理装置。The management device according to claim 2, wherein
The management device, wherein the data transmission interval is a minimum value of the predetermined interval set in the query.
前記データ送信間隔は、前記クエリグラフにおける前記受信クエリと前記出力クエリとの間の各経路の前記クエリの前記所定の間隔の最小値の最大公約数であることを特徴とする管理装置。The management device according to claim 2, wherein
The management device according to claim 1, wherein the data transmission interval is a greatest common divisor of a minimum value of the predetermined interval of the query in each path between the reception query and the output query in the query graph.
前記格納部は、
前記第二の処理装置の前記クエリに基づいた処理の実行時間に関する情報を含む構成情報を格納し、
前記プロセッサは、
前記クエリグラフと前記構成情報に基づいて、一つ以上の前記クエリを前記第二の処理装置に割り当てることを特徴とする管理装置。The management device according to claim 1,
The storage unit,
Configuration information including information on the execution time of the processing based on the query of the second processing device is stored,
The processor comprises:
A management device, wherein one or more of the queries are assigned to the second processing device based on the query graph and the configuration information.
前記プロセッサは、
前記クエリグラフと前記構成情報に基づいて、前記第二の処理装置の前記割り当てられたクエリに基づいた処理にかかる時間が、前記データ送信間隔の時間内に収まるように一つ以上の前記クエリを前記第二の処理装置に割り当てることを特徴とする管理装置。The management device according to claim 6, wherein
The processor comprises:
Based on the query graph and the configuration information, the time required for the processing based on the assigned query of the second processing device, one or more of the queries so as to fit within the time of the data transmission interval A management device, wherein the management device is assigned to the second processing device.
前記管理システムは、
複数の前記クエリから構成される前記クエリグラフに基づいて、一つ以上の前記クエリを前記第二の処理装置に割り当て、
少なくとも一つの前記クエリに設定されるストリームデータの処理を実行する間隔である実行間隔と前記クエリグラフに基づいて、前記第一の処理装置が前記ストリームデータを前記第二の処理装置に送信する間隔であるデータ送信間隔を算出し、
前記データ送信間隔に関する情報を前記第一の処理装置に送信する
ことを特徴とする実行環境設定方法。A first processing device that transmits stream data and a management system that is connected via a network to a second processing device that executes processing on the stream data received from the first processing device based on the query An execution environment setting method for stream data processing,
The management system includes:
Assigning one or more of the queries to the second processing device based on the query graph composed of a plurality of the queries;
An interval at which the first processing device transmits the stream data to the second processing device based on the execution interval and the query graph, which are intervals at which the processing of the stream data set in at least one of the queries is executed. Calculate the data transmission interval that is
An execution environment setting method, wherein information on the data transmission interval is transmitted to the first processing device.
前記管理システムは、
前記クエリグラフにおける前記第二の処理装置が前記ストリームデータを受信する処理に関する受信クエリと前記第二の処理装置が前記クエリに基づいて処理を実行した結果を出力する処理に関する出力クエリとの間の経路上に存在する前記クエリに設定された前記実行間隔に基づいて、
前記データ送信間隔を算出することを特徴とする実行環境設定方法。An execution environment setting method according to claim 8, wherein
The management system includes:
Between a query received by the second processing device for receiving the stream data in the query graph and an output query related to a process of outputting a result of the processing performed by the second processing device based on the query; Based on the execution interval set in the query existing on the route,
An execution environment setting method, wherein the data transmission interval is calculated.
前記管理システムは、
前記実行間隔と前記クエリグラフに基づいて、前記実行間隔の最大公約数となる前記データ送信間隔を算出することを特徴とする実行環境設定方法。An execution environment setting method according to claim 9, wherein
The management system includes:
An execution environment setting method, wherein the data transmission interval that is the greatest common divisor of the execution interval is calculated based on the execution interval and the query graph.
前記管理システムは、
前記実行間隔と前記クエリグラフに基づいて、前記実行間隔の最小値となるデータ送信間隔を算出することを特徴とする実行環境設定方法。An execution environment setting method according to claim 9, wherein
The management system includes:
An execution environment setting method, comprising: calculating a data transmission interval that is a minimum value of the execution interval based on the execution interval and the query graph.
前記管理システムは、
前記クエリグラフにおける前記受信クエリと前記出力クエリとの間の経路ごとに前記クエリの前記実行間隔の最小値を算出し、
前記算出した最小値の最大公約数となる前記データ送信間隔を算出することを特徴とする実行環境設定方法。An execution environment setting method according to claim 9, wherein
The management system includes:
Calculating the minimum value of the execution interval of the query for each path between the received query and the output query in the query graph,
An execution environment setting method, wherein the data transmission interval that is the greatest common divisor of the calculated minimum value is calculated.
前記管理システムは、
前記第二の処理装置が前記クエリに基づいた処理の実行時間に関する情報を含む構成情報と前記クエリグラフに基づいて、一つ以上の前記クエリを前記第二の処理装置に割り当てることを特徴とする実行環境設定方法。An execution environment setting method according to claim 8, wherein
The management system includes:
The second processing device allocates one or more queries to the second processing device based on the configuration information including information on an execution time of a process based on the query and the query graph. Execution environment setting method.
前記管理システムは、
前記クエリグラフと前記構成情報に基づいて、前記第二の処理装置の前記割り当てられたクエリに基づいた処理にかかる時間が前記データ送信間隔の時間内に収まるように一つ以上の前記クエリを前記第二の処理装置に割り当てることを特徴とする実行環境設定方法。The execution environment setting method according to claim 13, wherein
The management system includes:
Based on the query graph and the configuration information, the one or more of the queries so that the time required for processing based on the assigned query of the second processing device falls within the time of the data transmission interval. An execution environment setting method, wherein the method is assigned to a second processing device.
前記管理装置は、
第一のプロセッサと第一の格納部を備え、
前記第一の格納部は、
複数のクエリから構成されるクエリグラフに関する情報を格納し、
前記クエリグラフを構成する少なくとも一つの前記クエリは、所定の間隔でストリームデータの処理を実行する処理に関する情報を含み、
前記第一のプロセッサは、
前記クエリグラフに基づいて、一つ以上の前記クエリを前記第二の処理装置に割り当て、
前記所定の間隔と前記クエリグラフに基づいて、前記第一の処理装置が前記ストリームデータを前記第二の処理装置に送信する間隔であるデータ送信間隔を算出し、
前記データ送信間隔に関する情報を前記第一の処理装置に送信し、
前記第一の処理装置は、
第二のプロセッサと第二の格納部を備え、
前記第二の格納部は、
前記受信したデータ送信間隔に関する情報と前記ストリームデータとして送信されるデータを格納し、
前記第二のプロセッサは、
前記受信したデータ送信間隔に関する情報に基づいて、前記第二の格納部に格納されたデータを前記ストリームデータとして前記第二の装置に送信し、
前記第二の処理装置は、
第三のプロセッサを備え、
前記第三のプロセッサは、
前記割り当てられたクエリに基づいて、前記受信したストリームデータに対して処理を実行し、
前記処理結果を出力することを特徴とするストリームデータ処理システム。A stream data processing system including a management device, a first processing device, and a second processing device,
The management device,
Comprising a first processor and a first storage unit,
The first storage unit,
Stores information about a query graph composed of multiple queries,
At least one of the queries constituting the query graph includes information on a process of executing a process of stream data at a predetermined interval,
The first processor comprises:
Assigning one or more of the queries to the second processing device based on the query graph;
Based on the predetermined interval and the query graph, calculate a data transmission interval that is an interval at which the first processing device transmits the stream data to the second processing device,
Transmitting information on the data transmission interval to the first processing device,
The first processing device,
A second processor and a second storage unit,
The second storage unit,
Store information on the received data transmission interval and data transmitted as the stream data,
The second processor,
Based on the information on the received data transmission interval, transmitting the data stored in the second storage unit as the stream data to the second device,
The second processing device,
Equipped with a third processor,
The third processor,
Performing a process on the received stream data based on the assigned query;
A stream data processing system for outputting the processing result.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2016/068942 WO2018002976A1 (en) | 2016-06-27 | 2016-06-27 | Management device, execution environment setting method, stream data processing system |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2018002976A1 JPWO2018002976A1 (en) | 2019-04-11 |
JP6626198B2 true JP6626198B2 (en) | 2019-12-25 |
Family
ID=60786253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018524589A Active JP6626198B2 (en) | 2016-06-27 | 2016-06-27 | Management device, execution environment setting method, stream data processing system |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6626198B2 (en) |
WO (1) | WO2018002976A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022113578A1 (en) * | 2020-11-27 | 2022-06-02 | 日本電気株式会社 | Management device, system, management method, and recording medium |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4870183B2 (en) * | 2009-03-13 | 2012-02-08 | 株式会社日立製作所 | Failure recovery method, computer system, and failure recovery program in stream data processing system |
JP5862245B2 (en) * | 2011-11-30 | 2016-02-16 | 富士通株式会社 | Arrangement apparatus, arrangement program, and arrangement method |
JP6041431B2 (en) * | 2012-10-16 | 2016-12-07 | 株式会社日立製作所 | Stream data processing method, stream data processing apparatus, and program |
WO2014188500A1 (en) * | 2013-05-20 | 2014-11-27 | 富士通株式会社 | Data stream processing parallelization program, and data stream processing parallelization system |
JP6114473B2 (en) * | 2013-06-21 | 2017-04-12 | 株式会社日立製作所 | How to process stream data using time adjustment |
-
2016
- 2016-06-27 JP JP2018524589A patent/JP6626198B2/en active Active
- 2016-06-27 WO PCT/JP2016/068942 patent/WO2018002976A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2018002976A1 (en) | 2018-01-04 |
JPWO2018002976A1 (en) | 2019-04-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11366844B2 (en) | System for organizing and fast searching of massive amounts of data | |
US9870270B2 (en) | Realizing graph processing based on the mapreduce architecture | |
US8190599B2 (en) | Stream data processing method and system | |
EP3133492B1 (en) | Network service incident prediction | |
US9081834B2 (en) | Process for gathering and special data structure for storing performance metric data | |
US9081829B2 (en) | System for organizing and fast searching of massive amounts of data | |
US8924328B1 (en) | Predictive models for configuration management of data storage systems | |
JP4506520B2 (en) | Management server, message extraction method, and program | |
JP6252309B2 (en) | Monitoring omission identification processing program, monitoring omission identification processing method, and monitoring omission identification processing device | |
CN115017159A (en) | Data processing method and device, storage medium and electronic equipment | |
JP6626198B2 (en) | Management device, execution environment setting method, stream data processing system | |
CN114706893A (en) | Fault detection method, device, equipment and storage medium | |
CN115168042A (en) | Management method and device of monitoring cluster, computer storage medium and electronic equipment | |
CN113568892A (en) | Method and equipment for carrying out data query on data source based on memory calculation | |
Kumar et al. | A pragmatic approach to predict hardware failures in storage systems using MPP database and big data technologies | |
CN113568930A (en) | Method and equipment for optimizing distributed memory data query | |
JP2019502969A (en) | Method and system for supporting supercomputer maintenance and optimization | |
US10248458B2 (en) | Control method, non-transitory computer-readable storage medium, and control device | |
CN117709776A (en) | Data processing method and device, storage medium and electronic equipment | |
CN117971941A (en) | Mobile internet big data multi-service efficient parallel computing method and device | |
CN118069620A (en) | Database fault prevention method, device, computer equipment and storage medium | |
CN117453493A (en) | GPU computing power cluster monitoring method and system for large-scale multi-data center | |
Sabharwal et al. | Big data processing tuning in the cloud |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181221 |
|
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: 20191105 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20191128 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6626198 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |