JP2019106031A - データ処理システム及びデータ分析処理方法 - Google Patents

データ処理システム及びデータ分析処理方法 Download PDF

Info

Publication number
JP2019106031A
JP2019106031A JP2017238349A JP2017238349A JP2019106031A JP 2019106031 A JP2019106031 A JP 2019106031A JP 2017238349 A JP2017238349 A JP 2017238349A JP 2017238349 A JP2017238349 A JP 2017238349A JP 2019106031 A JP2019106031 A JP 2019106031A
Authority
JP
Japan
Prior art keywords
analysis
server
management server
pattern
servers
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2017238349A
Other languages
English (en)
Inventor
真規 阪口
Maki Sakaguchi
真規 阪口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2017238349A priority Critical patent/JP2019106031A/ja
Publication of JP2019106031A publication Critical patent/JP2019106031A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】複数の分析パターンを並列実行するためのデプロイを効率化し、単位時間に実施す分析パターン数を増やす。【解決手段】データ処理システムは、分析フローとパラメータの組合せを含む分析パターン設定ファイルを管理する第1管理サーバ101と、分析アプリケーションが動作するコンテナまたはVMのイメージである分析プリケーションイメージを管理する第2管理サーバ102と、複数の分析パターンを並列実行する複数の分析サーバ105とを含む。第1管理サーバは、複数の分析サーバのリソースと稼働状況に基づいてリソースに空きのある分析サーバに、第2管理サーバから分析アプリケーションイメージをデブロイする。第1管理サーバは、リソースに空きがある複数の分析サーバに対して分析パターンを割り当てるクラスタを形成する。分析サーバは、分析アプリケーションを実行して分析パターン設定ファイルに規定された分析フローを実行する。【選択図】図1

Description

本発明は、データ処理システム及びデータ分析処理方法に係り、特に、多量のデータ分析に好適な、分析アプリケーションの割当及び分析フローの並列実行に関する。
IoT(Internet of Things)のような多量のデータが扱われる環境において種々のデータ分析が試みられているが、何れの場合も分析の目的に対して効果的なアルゴリズムとパラメータをあらかじめ決定することは困難である。効果的な分析結果を得るための分析フローとパラメータは試行錯誤の繰り返しによって決定される。すなわち、ある分析フローとパラメータの組み合わせである分析パターンによる分析を行ってその分析結果を評価し、また別の分析パターンで再度分析を行うという手法が一般的である。そのため、事前に準備した分析パターンの全ての実行結果を得るためには多くの時間が費やされている。
また、分析対象のデータは膨大な量であり、一回の分析に多くの時間が費やされるため、複数のサーバによる分散処理が行われる。分散処理の場合、一つの分析パターンを実行するには複数のサーバに分析アプリケーションをデプロイする必要があり、分析を開始するまでに時間がかかる。さらに、分析パターンによって必要なマシンリソースが異なり、リソースを効率的に使用するように分析アプリケーションをデプロイする必要がある。
例えば、特許文献1には、系列データ並列分析基盤を用いてビックデータなどの大量のデータの分析処理する技術が開示されている。この系列データ並列分析基盤は、計算機器毎にデータブロックに対して処理を行う少なくとも一つ以上のデータブロック処理サーバと、計算機器毎にデータブロック処理サーバの結果を処理する少なくとも一つ以上のブロック処理集約サーバとを備える、としている。
WO2015/001596公報
特許文献1に記載の系列データ並列分析基盤によれば、系列データを柔軟に分散処理することができる、としている。然しながら、特許文献1には、複数の分析パターンをクラスタとして並列実行する場合、如何に複数のリソースを効率的に使用して分析アプリケーションをデプロイするか、単位時間に実施できる分析パターンの数を如何に増やすか、については言及されていない。
本発明の目的は、複数の分析パターンを並列実行するためのデプロイを効率化して、単位時間に実施できる分析パターンの数を増やすことにある。
本発明に係るデータ処理システムの好ましい例によれば、
複数の分析サーバがデータ分析を実行するデータ処理システムであって、
分析フローとパラメータの組合せを含む分析パターンを規定する分析パターン設定ファイルを管理する第1の管理サーバと、
分析アプリケーションのプロセスが動作するコンテナまたはVMのイメージである分析プリケーションイメージを管理する第2の管理サーバと、
複数の前記分析パターンを並列実行することができる前記複数の分析サーバと、を有し、
第1の管理サーバは、前記複数の分析サーバに係るリソースと稼働状況に基づいてリソースに空きのある前記複数の分析サーバに、前記第2の管理サーバから
前記分析プリケーションイメージをデブロイし、
前記第1の管理サーバは、前記分析パターン設定ファイルに従い、該リソースに空きがある前記複数の分析サーバに対して、前記分析パターンを割り当てるクラスタを形成し、
前記分析パターンごとにクラスタを形成した前記複数の分析サーバは、前記第1の管理サーバからの実行命令に従って、前記分析アプリケーションを実行して、
前記分析パターン設定ファイルに規定された分析フローを実行する、ことを特徴とするデータ処理システム、として構成される。
本発明はまた、上記データ処理システムにおいて実現されるデータ分析処理方法としても把握される。
本発明によれば、複数の分析パターンを並列実行し、そのデプロイを効率化して、単位時間に実施できる分析パターンの数を増やすことが可能となる。
一実施例におけるデータ処理システムの全体構成を示す図。 分析管理サーバの構成を示す図。 分析アプリケーションイメージ管理サーバの構成を示す図。 分析アプリケーションイメージの構成を示す図。 管理DBサーバの構成を示す図。 データレイクサーバの構成を示す図。 分析アプリケーションサーバの構成を示す図。 分析パターン設定ファイルの例を示す図。 分析管理プログラムが実行する処理のフローチャートを示す図。 分析パターン設定ファイル読込処理のフローチャートを示す図。 不正値チェック処理のフローチャートを示す図。 デプロイ/分析実行処理のフローチャートを示す図。 クラスタ作成処理のフローチャートを示す図。 クラスタ内における分析実行処理のフローチャートを示す図。 分析パターン履歴テーブル1501の構成を示す図。 分析ステータステーブル1502の構成を示す図。 サーバ情報テーブル1503の構成を示す図。 稼働情報テーブル1504の構成を示す図。 分析管理サーバの入出力装置に表示される表示画面の例を示す図。 一実施例おけるデータ処理システムを概略説明するための図。
以下、本発明の実施例を、図面を用いて詳細に説明する。
なお、以下の実施例の説明において使用される用語を次の通り定義する。
「コンテナ」とは仮想的なプロセス実行環境をいう。
「VM」とは仮想的なマシン環境をいう。
「データレイク」とは大量のデータを格納するためのデータ蓄積基盤をいう。
「分析パターン」とは分析フローとパラメータの組合せをいう。
図1は、一実施例におけるデータ処理システムの全体構成を示す図である。
データ処理システムは、分析管理サーバ101と、分析アプリケーションイメージ管理サーバ102と、管理DB(Date Base)サーバ103と、データレイクサーバ104と、複数の分析アプリケーションサーバ105が、通信設備網107を介して接続されて構成される。
分析管理サーバ101は、分析管理プログラムを実行して、本発明によって導入される分析パターン設定ファイルを読み込み、分析アプリケーションを分析アプリケーションサーバ105にデプロイし、分析アプリケーションクラスタ106に対して分析の実行命令を行うサーバである。なお、分析管理サーバ101の構成については図2を参照して後述する。本実施例では、分析管理サーバ101がコンテナ型仮想化技術を使用する。
分析アプリケーションサーバ105は、例えばIoTデータの分析処理を実行するサーバである。分析アプリケーションサーバ105は、実行する分析パターン毎にクラスタリングされ、複数の分析アプリケーションサーバ105により分析パターンクラスタ106が構成される。分析パターンクラスタ106は互いに分析アプリケーションサーバ105のリソースを共有することがある。すなわち、一つの分析アプリケーションサーバ105上で複数の分析パターンによる分析が実行されることがある。なお、分析アプリケーションサーバ105の構成については図7を参照して後述する。
分析アプリケーションイメージ管理サーバ102は、分析フローごとの分析アプリケーションイメージを保管して管理するサーバである。その詳細は図3を参照して後述する。分析アプリケーションイメージとは、分析アプリケーションのプロセスを実行するコンテナまたはVMのイメージであり、その詳細は図4を参照して後述する。
管理DBサーバ103は、分析パターン及び分析アプリケーションサーバ105の状況等に関する管理情報を保管するサーバである。その詳細は図5を参照して後述する。データレイクサーバ104はIoTデータと分析結果を格納するサーバである。その詳細は図6を参照して後述する。
各サーバの詳細を説明する前に、図20を参照して、データ処理ステムの概要を説明する。
入出力装置から、分析パターンを規定する分析パターン設定ファイル212を作成するためのデータを入力して、分析管理サーバ101が分析パターン設定ファイル212を作成する。作成された分析パターン設定ファイル212は管理サーバ101の記憶装置(記憶部)に格納される。また、分析アプリケーションイメージ管理サーバ102には予め分析フローごとの分析アプリケーションイメージが保管されている。
データの分析に際して、分析管理サーバ101は分析管理プログラムを実行して、分析パターン設定ファイル212を記憶部から読み込み、さらに分析アプリケーションサーバ105のリソース情報(コア数やメモリ容量)を取得する。分析パターン設定ファイルの内容、分析アプリケーションサーバ105の稼働状況やリソース情報に基づいて、空きがある複数の分析アプリケーションサーバ105に、分析アプリケーションイメージ管理サーバ102から分析アプリケーションイメージをデプロイする。そして、分析管理サーバ101は、分析パターンごとに複数の分析アプリケーションサーバ105に亘ってクラスタを形成する。
その後、分析管理サーバ101は、分析パターンごとに、クラスタを形成した複数の分析アプリケーションサーバ105に実行命令を発する。すると、クラスタごとの複数のアプリケーションサーバは、分析パターンに係るデータ分析処理を並列に実行する。実行時にはパラメータを読み込んで処理し、処理の状態(分析ステータス)を分析ステータステーブルに書き込む。分析アプリケーションサーバ105による分析結果は、データレイクサーバ106に格納され、その時の分析パターンの履歴は管理DBサーバ103に格納される。
図20は、3つの分析パターン(1)〜(3)に対応して複数のサーバに亘って3つのクラスタが形成されて、各クラスタの分析アプリケーションサーバ105で分析アプリケーションイメージがデプロイされ、データ分析処理が実行される例を示している。
図2は、分析管理サーバ101の構成を示す図である。
分析管理サーバ101は、入出力回路インタフェース201と、プロセッサ202と、入出力装置203と、記憶装置204と、これらを接続する内部通信線(たとえばバス)を有して構成される。入出力回路インタフェース201は、通信設備網107と通信するためのインタフェースである。プロセッサ202は、記憶装置204に格納された分析管理プログラム211を実行し、分析パターン設定ファイル212を読み込み、分析アプリケーションをコンテナとして分析アプリケーションサーバ105にデプロイする。なお、プロセッサ202は、演算装置或いは制御装置と称してもよい。分析パターン設定ファイル212の詳細は図8を参照して後述する。
入出力装置203は、種々のデータの入力を受け付け及びデータを出力する装置であり、例えば入力を受け付けるキーボードやマウスなどの入力器と、プロセッサ202による処理に関わる情報を可視表示する表示器である。本例では、入力器から分析パターン設定ファイル212を作成するためのデータ(分析パターン)が入力され、表示器に分析アプリケーションサーバのリソースや分析パターンの設定に関する情報が表示される(図19参照)。記憶装置204は、DRAM(Dynamic Access Random Memory)などの揮発性の記憶装置やHDDやSSD等の不揮発性の記憶装置である。
図3は分析アプリケーションイメージ管理サーバ102の構成を示す図である。
分析アプリケーションイメージ管理サーバ102は、入出力回路インタフェース301と、プロセッサ302と、入出力装置303と、記憶装置304と、これらを接続する内部通信線を有する。入出力回路インタフェース301は、通信設備網107と通信するためのインタフェースである。記憶装置304には、分析アプリケーションのプロセスを実行するコンテナまたはVMのイメージである分析アプリケーションイメージ311が保管されている。分析アプリケーションイメージ311の詳細は図4を参照して後述する。入出力装置303は、データの入力を受け付けたり、データを出力したり、あるいはその両方を行うための装置である。記憶装置304は揮発性の記憶装置や不揮発性の記憶装置である。
図4は、分析アプリケーションイメージの構成を示す図である。
分析アプリケーションイメージ311は、分析アプリケーションのプロセスを実行するコンテナまたはVMのイメージであり、分析連携アプリケーション401と、分析フロー402と、分析エンジン403を有する。ここで、分析フロー402は、分析パターンに含まれる分析対象となるフローないしアルゴリズムであり、本例では分析パターン設定ファイル212に定義される。分析フローごとに固有のIDが付与されている。分析エンジン403は分析フローの分析を実行するハードウェアやソフトウェア等の処理手段である。分析連携アプリケーション401は、分析アプリケーションコンテナ内で分析フロー402に従って分析エンジン403の呼び出しなどを行うプログラムである。本例では、分析アプリケーションイメージは、例えばDokerの仮想化イメージである(Dockerはドッカー社の登録商)。
図5は、管理DBサーバ103の構成を示す図である。
管理DBサーバ103は、入出力回路インタフェース501と、プロセッサ502と、入出力装置503と、記憶装置504と、これらを接続する内部通信線を有する。入出力回路インタフェース501は、通信設備網107と通信するためのインタフェースである。プロセッサ502はプログラムを実行する。記憶装置504は管理DB511を有する。入出力装置503はデータの入力を受け付け及びデータを出力する装置である。記憶装置504は揮発性の記憶装置や不揮発性の記憶装置である。
ここで、管理DB511は、分析パターンの実行履歴を管理する分析パターン履歴テーブル1501と、分析の実行ステータスを管理する分析ステータステーブル1502と、分析アプリケーションサーバ105のリソースを管理するサーバ情報テーブル1503と、分析アプリケーションサーバ105の稼働状況を管理する稼働情報テーブル1504とを保持する。分析パターン履歴は図10ステップS1006の結果である。上記各テーブルの構成は、図15乃至図18を参照して後述する。
ここで、図15乃至図18を参照して、各テーブルの構成について説明する。
分析パターン履歴テーブル1501は、図15に示すように、分析パターンを管理するものであり、分析パターンIDと、分析フローIDと、分析パラメータと、割当サーバ数と、割当コア数と、割当メモリ量と、ディスク優先度を登録する。例えば、分析パターンIDが「X」のものは、分析パターンの分析フローIDが「001」であり、その際に用いられる2つの分析パラメータ「P1」及び「P2」がそれぞれ「200」、「100」である。その分析の実行のために割り当てられる「サーバ数」、「コア数」、「メモリ数」がそれぞれ「3」、「2」、「4GB」であり、分析のために用いられるディスクの優先度が「7」であることを示している。
分析ステータステーブル1502は、図16に示すように、分析パターンの実行状況を管理するものであり、分析パターンIDと、分析ステータスを登録する。例えば、分析パターンIDが「X」である分析パターンの分析ステータスが「実行中」であることを示している。
サーバ情報テーブル1503は、図17に示すように、サーバの構成情報を管理するものであり、サーバIDと、総コア数と、総メモリ量、等のリソース情報を登録する。例えば、サーバIDが「001」であるサーバの総コア数、総メモリ量がそれぞれ「2」、「2GB」であることを示している。
稼働情報テーブル1504は、図18に示すように、割当られたサーバにおける分析アプリケーションの稼働状況を管理するものであり、サーバIDと、割当済みCPUコア数と、割当済みメモリ量と、稼働中分析アプリケーションコンテナ数を登録する。例えば、サーバID「001」であるサーバで係る分析の実行のために割当済みであるコア数、メモリ量それぞれが「2」、「1GB」である。「稼働中分析アプリケーションコンテナ数」は、サーバ上で既に稼働しているアプリケーションコンテナ数を意味し、その数が「1」であることを示している。
図6はデータレイクサーバ104の構成を示す図である。
データレイクサーバ104は、入出力回路インタフェース601と、プロセッサ602と、入出力装置603と、記憶装置604と、これらを接続する内部通信線を有する。入出力回路インタフェース601は、通信設備網107と通信するためのインタフェースである。プロセッサ502はプログラムを実行する。記憶装置604にはデータレイク611が格納されている。データレイク611には、IoTのセンサ等から収集されたデータの集合である分析対象データと、分析対象データの分析結果である分析結果データが格納される。入出力装置603はデータの入力を受け付け及びデータを出力する装置である。記憶装置604は揮発性の記憶装置や不揮発性の記憶装置である。
図7は分析アプリケーションサーバ105の構成を示す図である。
分析アプリケーションサーバ105は、入出力回路インタフェース701と、プロセッサ702と、入出力装置703と、記憶装置704と、これらを接続する内部通信線を有する。入出力回路インタフェース701は、通信設備網107と通信するためのインタフェースである。プロセッサ702は、演算装置及び制御装置である。入出力装置703はデータの入力を受け付け及びデータを出力する装置である。記憶装置704は、揮発性の記憶装置や不揮発性の記憶装置である。
プロセッサ702が記憶装置704に格納された分析アプリケーションコンテナ711を実行する。分析アプリケーションコンテナ711は分析アプリケーションイメージ311をプロセスとして実行した形態である。分析アプリケーションコンテナ711の内部では、分析連携アプリケーション401が分析フロー402に従って、分析エンジン403を用いて分析を実行する。なお、分析アプリケーションは必ずしもコンテナである必要はなく、VMであってもよい。
図8は分析パターン設定ファイルの一例を示す図である。
分析パターン設定ファイル212には、複数の分析パターン801の設定が記載される。各分析パターン801の設定には、分析フローID802と、複数の分析パラメータ803と、割当サーバ数804と、サーバ1台あたりの割当コア(CPU)数805と、サーバ1台あたりの割当メモリ量806と、ディスクアクセス優先度807が含まれる。ディスクアクセス優先度807は、一つの分析アプリケーションサーバ上で複数の分析アプリケーションコンテナ711が稼働する場合のディスクアクセスの優先度合を意味し、値が大きいほど優先度が高い。分析パターン設定ファイル212に記述される情報は、図10及び図11を参照する不正値チェック処理の演算に使用される。
次に、図9乃至図14を参照して、分析管理サーバ101におけるプロセッサ202による分析管理プログラム211の実行動作について説明する。
図9において、ステップS901は、記憶装置204に格納された分析パターン設定ファイル212をプロセッサ202に読み込む処理である。ステップS902は、ステップS901の読み込み処理の結果、エラーが発生したか否かを判断する処理である。ステップS902においてエラーが存在すると判断された場合は処理を終了する。一方、エラーが存在しない場合はステップS903に進む。ステップS903は分析アプリケーションをデプロイして分析処理を実行する処理である。なお、ステップS901及びステップ903の詳細は図10及び図12を参照してそれぞれ後述する。
図10は、分析パターン設定ファイルの読込み処理(S901)の詳細を示す図である。
図10において、S1001は分析パターン設定ファイル212を読み込む処理である。ステップS1002は、S1001の読み込み処理が成功したか否かを判断する処理である。ステップS1002において、分析パターン設定ファイル212の読込みが成功と判断された場合はステップS1003へ進み、読込みが失敗した場合は、S1004でエラー応答を行って処理を終了する。
ステップS1003は、分析パターン設定ファイル212の不正値チェックを行う処理である。ステップS1003の詳細は図11を参照して後述する。ステップS1005はステップS1003の結果、不正値が存在するかどうかを判断する処理である。ステップS1005において、不正値が存在すると判断された場合はS1004でエラー応答を行って処理を終了し、不正値が存在しない場合はステップS1006に進む。ステップS1006では、分析パターン設定ファイル212に記載した設定を分析パターン履歴として分析パターン履歴テーブル1501に記録する。
図11は、不正値チェック処理(S1003)の詳細を示す図である。
図11において、ステップS1101は、サーバ情報を取得する処理である。すなわち、プロセッサ202はサーバ情報テーブル1503から分析アプリケーションサーバ105の台数と、各分析アプリケーションサーバ105のコア数と、メモリ量の情報を取得する。ステップS1102は、分析パターン設定ファイル212に設定した分析パターン801の数だけ内部の処理(ステップ1102〜ステップ1108)を繰り返す。ステップS1103は、分析フローID802が不正でないかを判断する処理である。例えば、分析フローID802が存在しないIDであるので、不正であると判断された場合はS1104でエラー応答を行って処理を終了し、不正がない場合はステップS1105に進む。
ステップS1105は、サーバ情報テーブル1503を参照して、サーバ数が不正でないかを判断する処理である。例えば、割当サーバ数804がシステムの全分析アプリケーションサーバ数を超えるので、不正であると判断された場合はS1104でエラー応答を行って処理を終了し、不正がない場合はステップS1106に進む。ステップS1106は、サーバ情報テーブル1503を参照して、割当コア数が不正でないかを判断する処理である。例えば、サーバ1台あたりの割当コア数805が負の数である場合や、設定した割当コア数で割当可能なサーバが存在しない場合等の、不正である場合と判断された場合はS1104でエラー応答を行って処理を終了し、不正がない場合はステップS1107に進む。ステップS1107は、サーバ情報テーブルを参照して、割当メモリ量806が不正でないかを判断する処理である。例えば、割当メモリ量806が負の数である場合や、設定した割当メモリ量で割当可能なサーバが存在しない場合等の、不正である場合と判断された場合はS1104でエラー応答を行って処理を終了し、不正がない場合は繰り返し処理S1102の初めに戻るか、または処理を終了する。
なお、エラー応答処理S1104は、不正の種別に応じて異なる応答になるよう構成してもよい。例えば、一サーバ当たりの割当メモリ量を16GBに設定したが、総メモリ量が16GBのサーバが存在しない場合は、その旨と割当メモリ量を適切な値に設定するように促すエラーメッセージを入出力装置203に出力してもよい。
図12は、デプロイ/分析実行処理(S903)の詳細を示す図である。
図12において、ステップS1201では、分析パターン設定ファイル212に設定した分析パターン801の数だけ内部の処理(ステップS1202〜ステップS1212)を繰り返す。ステップS1202は、分析パターン801を一つ取得する処理である。ステップS1203は、分析ステータステーブル1502を参照して、ステップS1202で取得された分析パターンが既に実行開始済みか(すなわち実行完了か実行中)否かを判断する処理である。実行開始済であればステップS1204に進んで次の分析パターン801を一つ取得してステップS1203に戻り、実行開始済でない場合はステップS1205に進む。
ステップS1205は、各分析アプリケーションサーバ105の使用中コア数と使用中メモリ量を取得する処理である。ステップS1206は、サーバ情報テーブル1503と稼働情報テーブル1504を参照して、総コア数−割当済コア数が割当コア数(805)以上であるサーバを全て選出する処理である。ステップS1207は、サーバ情報テーブル1503と稼働情報テーブル1504を参照して、総メモリ量−割当済メモリ量が割当メモリ量(806)以上であるサーバを全て選出する処理である。ステップS1208は、選出されたサーバ数と割当サーバ数とを比較する処理である。具体的には、ステップS1206とステップS1207で選出したサーバの部分集合の数が分析パターンに設定された割当サーバ数(805)以上であればステップS1209へ進み、割当サーバ数(805)以上でなければS1204に進む。ステップS1209では空リソース量が大きい順に割り当てるサーバを選択する処理である。空リソース量は(総コア数−割当済コア数)/総コア数+(総メモリ量−割当済メモリ量)/総メモリ量で定義される。ステップS1205〜ステップS1209の処理により、リソースに空きがあるサーバに割り当て可能な分析パターンが順次、自動的に割り当てられるため、デプロイに関する作業時間が削減される。さらに、サーバ間の負荷が平準化される。
ステップS1210は、分析パターンのクラスタを作成する処理である。ステップS1211は、分析パターンに設定したパラメータ803を取得する処理である。ステップS1212は、ステップ1211で取得したパラメータを用いて分析実行コマンドを実行する処理である。ステップS1213では分析パターン設定ファイル212に設定した全ての分析パターンが実行開始済みであれば処理を終了し、そうでなければ繰り返し処理の始めに戻る。
図13はステップS1210(クラスタ作成処理)の詳細を示す図である。
ステップS1301は、分析パターン設定ファイル212に設定した割当サーバ数(804)の数だけ内部の処理(ステップS1302〜ステップS1307)を繰り返す。ステップS1302は、割当サーバがステップS1301の繰り返しの先頭サーバであるかどうかを判断する処理である。ステップS1302の判断の結果、先頭のサーバであればステップ1303に進んで分析パターンクラスタ106の作成コマンドを実行し、先頭のサーバでない場合はステップS1304に進んで分析パターンクラスタ106へのクラスタ参加コマンドを実行する。ステップS1305は、稼働情報テーブル1504を参照して、割当サーバにおいて既に他の分析アプリケーションコンテナが稼働しているかどうかを判断する処理である。既に他のアプリケーションコンテナが稼働している場合(すなわち稼働中の分析アプリケーションコンテナ数が「1」以上)はステップS1306に進み、そうでない場合はステップS1301に戻るか、または処理を終了する。
ステップS1306は、分析パターン設定ファイル212に設定したディスクアクセス優先度807に基づいて、分析アプリケーションサーバ105における各分析アプリケーションコンテナ711のディスクアクセス比率を再設定する処理である。各コンテナのディスクアクセス比率は、コンテナのディスクアクセス優先度/同一サーバ上の全コンテナのディスクアクセス優先度の総和で計算される。ステップS1306の処理により、同一サーバ上で複数のコンテナが稼働する場合でも、優先度の高い分析パターンがディスクを優先して使用することが可能になる。
図14は分析パターンクラスタ106における分析実行処理のフローチャートを示す図である。ステップS1401は、分析フローを実行する処理である。ステップS1402は、分析ステータステーブル1502の分析ステータスを実行中に更新する処理である。ステップS1403は、分析フローによる分析が完了したかどうかを判断する処理である。完了である場合はステップS1404に進み、完了でない場合はステップS1403を繰り返す。ステップ1404、分析ステータステーブルの分析ステータスを完了に更新する処理である。
図19は、分析アプリケーションサーバのリソースの表示と、分析パターンの設定を行う表示画面の例を示す。
表示画面1601は、領域1602〜1604から構成される。領域1602は分析アプリケーションサーバ105のリソース情報、例えば、分析パターンが使用するコア数と、メモリ量と、ステップS1306でコンテナに設定されたディスクアクセス比率を表示する。領域1603は分析パターンの設定をする領域である。領域1603の設定は入出力装置203からの入力によるが、分析パターン設定ファイル212の生成によって行うこともできる。領域1604は、ステップS1004の処理によって出力されるエラーの内容をメッセージとして表示する領域である。
なお、この画面は、分析管理サーバ101が有する入出力装置の表示器に表示させずに、分析管理サーバ101以外の他の装置に表示されてもよい。
以上述べたように、本発明の好ましい実施例によれば、1つのサーバ上で複数の分析アプリケーションが稼働する状況でも合理的なリソースの配分が可能となる。これにより、複数の分析パターンを並列実行するためのデプロイが効率化され、単位時間に実施できる分析パターンの数を増やすことができる。
なお、本発明は上記実施例に限定されることなく、種々変形して実施できる。
例えば、図1に示すデータ処理システムでは、分析管理サーバ101、分析アプリケーションイメージ管理サーバ102、管理DBサーバ103、データレイクサーバ106、等をそれぞれ個別のサーバとして構成しているが、変形例によれば、これらのサーバを統合することが可能である。例えば分析アプリケーションイメージ管理サーバ102と管理DBサーバ103を1つのサーバに統合することも可能である。また、他の例として、管理DBサーバ103が持つテーブル類を分析管理サーバ101に持たせてもよい。
更に他の変形例として、分析パターン212が規定する内容は一例であって、種々変形が可能である。例えば、上記分析パターンでは、リソースとして、サーバ1台あたりの割当コア(CPU)数805、割当メモリ量806と、ディスクアクセス優先度807を規定しているが、必ずしもこれら全ての要素を必要としない場合にはその要素を減らすことができる。一方、必要な場合には他の要素を追加してもよい。
更に他の変形例として、分析パターンを作成するための入出力装置は、必ずしも分析管理サーバ101が備えるものに限らず、ネットワークを介して分析管理サーバに繋がる端末装置であってもよい。
101:分析管理サーバ
102:分析アプリケーションイメージ管理サーバ
103:管理DBサーバ
104:データレイクサーバ
105:分析アプリケーションサーバ
106:分析パターンクラスタ
107:通信設備網
211:分析管理プログラム
212:分析パターン設定ファイル
311:分析アプリケーションイメージ
401:分析連携アプリケーション
402:分析フロー
403:分析エンジン
611:データレイク
711:分析アプリケーションコンテナ
801:分析パターン
802:分析フロー
803:分析パラメータ
804:割当サーバ数
805:割当コア数
806:割当メモリ量
807:ディスクアクセス優先度
1501:分析パターンテーブル
1502:分析ステータステーブル
1503:サーバ情報テーブル
1504:稼働情報テーブル

Claims (10)

  1. 複数の分析サーバがデータ分析を実行するデータ処理システムであって、
    分析フローとパラメータの組合せを含む分析パターンを規定する分析パターン設定ファイルを管理する第1の管理サーバと、
    分析アプリケーションのプロセスが動作するコンテナまたはVMのイメージである分析プリケーションイメージを管理する第2の管理サーバと、
    複数の前記分析パターンを並列実行することができる前記複数の分析サーバと、を有し、
    第1の管理サーバは、前記複数の分析サーバに係るリソースと稼働状況に基づいてリソースに空きのある前記複数の分析サーバに、前記第2の管理サーバから前記分析プリケーションイメージをデブロイし、
    前記第1の管理サーバは、前記分析パターン設定ファイルに従い、該リソースに空きがある前記複数の分析サーバに対して、前記分析パターンを割り当てるクラスタを形成し、
    前記分析パターンごとにクラスタを形成した前記複数の分析サーバは、前記第1の管理サーバからの実行命令に従って、前記分析アプリケーションを実行して、前記分析パターン設定ファイルに規定された分析フローを実行する、
    ことを特徴とするデータ処理システム。
  2. 請求項1に記載のデータ処理システムにおいて、
    前記分析サーバが持つリソースを管理するサーバ情報テーブルと、
    分析アプリケーションが割り当てられた前記分析サーバにおける、前記リソース及び割当済みの分析アプリケーションコンテナ数に関する稼働状況を管理する稼働情報テーブルと、を有し、
    前記第1の管理サーバは分析管理プログラムを実行して、前記分析パターン設定ファイルを読み込み、前記サーバ情報テーブルと前記稼働情報テーブルとを参照して、前記分析パターン設定ファイルに記載された不正値をチェックすることを特徴とする
    ことを特徴とする請求項1に記載のデータ処理システム。
  3. 請求項1に記載のデータ処理システムにおいて、
    前記分析サーバが持つリソースを管理するサーバ情報テーブルと、
    前記分析アプリケーションが割り当てられた前記分析サーバにおける、前記リソース及び割当済みの分析アプリケーションコンテナ数に関する稼働状況を管理する稼働情報テーブルと、
    前記分析パターンの実行の状況を管理する分析ステータステーブルと、を有し、
    前記第1の管理サーバは、前記分析パターン設定ファイルに含まれる前記分析パターンに記載されたリソースについて、前記分析ステータステーブルと、前記サーバ情報テーブルと、前記稼働情報テーブルとを参照して、前記分析サーバのリソースに空きがある前記分析サーバにデプロイ可能な分析アプリケーションを順次デプロイする
    ことを特徴とする請求項1に記載のデータ処理システム。
  4. 請求項1に記載のデータ処理システムにおいて、
    前記第1の管理サーバは、前記稼働情報テーブルと、前記分析パターンに規定されたディスクアクセス優先度に基づき、優先度の高い分析に多くのリソースを配分する
    ことを特徴とする請求項1に記載のデータ処理システム。
  5. 前記管理サーバに接続される入出力装置を有し、
    該入出力装置は、前記分析パターンの設定のための、分析フロー、パラメータ、及び必要とする分析サーバのリソースに関する情報を含む画面を表示し、
    前記管理サーバは、該入出力装置からの指示に従って、該画面により指定された情報に基づいて前記分析パターン設定ファイルを作成して、記憶部に保持する
    ことを特徴とする請求項1に記載のデータ処理システム。
  6. 前記分析プリケーションイメージは、分析パターンに含まれる分析フローと、分析フローの分析を実行する処理手段と、分析アプリケーションコンテナ内で前記分析フローに従って前記分析エンジンの呼び出しなどを行う分析連携アプリケーションを含む
    ことを特徴とする請求項1に記載のデータ処理システム。
  7. 前記分析パターンの実行履歴を管理する分析パターン履歴テーブルと、分析の実行ステータスを管理する分析ステータステーブルと、前記分析サーバのリソースを管理するサーバ情報テーブルと、前記分析サーバの稼働状況を管理する稼働情報テーブルと、を保管する第3の管理サーバと、
    分析対象となるデータと、前記分析サーバによる分析処理結果を格納するデータレイクサーバと、を更に有する
    ことを特徴とする請求項1に記載のデータ処理システム。
  8. 複数の分析サーバでデータ分析を実行するデータ分析処理方法であって、
    第1の管理サーバが、分析フローとパラメータの組合せを含む分析パターンを規定する分析パターン設定ファイルを管理する第1ステップと、
    第2の管理サーバが、分析アプリケーションのプロセスが動作するコンテナまたはVMのイメージである分析プリケーションイメージを管理する第2ステップと、
    前記複数の分析サーバに係るリソースと稼働状況に基づいて、リソースに空きのある前記複数の分析サーバに、前記第2の管理サーバから前記分析プリケーションイメージをデブロイする第3ステップと、
    前記第1の管理サーバが、前記分析パターン設定ファイルに従い、前記リソースに空きがある前記複数の分析サーバに対して、前記分析パターンを割り当てるクラスタを形成する第4ステップと、
    前記分析パターンごとにクラスタを形成した前記複数の分析サーバが、前記アプリケーションを実行して、前記分析パターン設定ファイルに規定された分析フローを実行する第5ステップと、を有する
    ことを特徴とするデータ分析処理方法。
  9. 前記第1の管理サーバは、前記第1ステップにおいて、前記分析パターン設定ファイルを記憶部に格納して管理しており、
    前記第1の管理サーバは、前記第3ステップの前に、該記憶部から読み込まれた分析パターン設定ファイルに規定された分析パターンに不正値が含まれるかを判断する第6ステップを有し、
    前記第6ステップにおいて、前記第1の管理サーバが、前記分析パターンに不正値が含まれないと判断した場合、前記第3ステップの処理を行う
    ことを特徴とする請求項8のデータ分析処理方法。
  10. 前記第1の管理サーバは、前記複数の分析サーバに関するリソース及び稼働状況を参照して、前記分析パターン設定ファイルに規定された前記分析サーバのリソースが充足するかの判断を、前記分析パターン設定ファイルに規定された分析パターンの数だけ行い、
    該判断の結果、充足する場合は、前記分析パターン設定ファイルに規定された該分析パターンの履歴をデータベースに記憶する
    ことを特徴とする請求項8のデータ分析処理方法。
JP2017238349A 2017-12-13 2017-12-13 データ処理システム及びデータ分析処理方法 Pending JP2019106031A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017238349A JP2019106031A (ja) 2017-12-13 2017-12-13 データ処理システム及びデータ分析処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017238349A JP2019106031A (ja) 2017-12-13 2017-12-13 データ処理システム及びデータ分析処理方法

Publications (1)

Publication Number Publication Date
JP2019106031A true JP2019106031A (ja) 2019-06-27

Family

ID=67062402

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017238349A Pending JP2019106031A (ja) 2017-12-13 2017-12-13 データ処理システム及びデータ分析処理方法

Country Status (1)

Country Link
JP (1) JP2019106031A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210027024A (ko) * 2019-09-02 2021-03-10 가부시키가이샤 히타치세이사쿠쇼 데이터의 이용·활용을 위한 데이터 준비를 지원하는 시스템, 및 그 방법
CN113094115A (zh) * 2021-03-29 2021-07-09 联想(北京)有限公司 一种部署策略确定方法、系统及存储介质
CN114489957A (zh) * 2022-04-01 2022-05-13 国家卫星海洋应用中心 遥感卫星数据处理方法、装置和电子设备

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210027024A (ko) * 2019-09-02 2021-03-10 가부시키가이샤 히타치세이사쿠쇼 데이터의 이용·활용을 위한 데이터 준비를 지원하는 시스템, 및 그 방법
KR102345302B1 (ko) 2019-09-02 2021-12-31 가부시키가이샤 히타치세이사쿠쇼 데이터의 이용·활용을 위한 데이터 준비를 지원하는 시스템, 및 그 방법
CN113094115A (zh) * 2021-03-29 2021-07-09 联想(北京)有限公司 一种部署策略确定方法、系统及存储介质
CN113094115B (zh) * 2021-03-29 2023-05-02 联想(北京)有限公司 一种部署策略确定方法、系统及存储介质
CN114489957A (zh) * 2022-04-01 2022-05-13 国家卫星海洋应用中心 遥感卫星数据处理方法、装置和电子设备

Similar Documents

Publication Publication Date Title
CN110321329A (zh) 基于大数据的数据处理方法及装置
CN104516769B (zh) 用于验证逻辑分区配置之间的切换的方法、介质及系统
US9886735B2 (en) Hybrid engine for central processing unit and graphics processor
CN109146081B (zh) 一种用于机器学习平台中创建模型项目的方法及装置
JP2010113482A (ja) 資源割付方法、プログラム、及び資源割付装置
JP2019106031A (ja) データ処理システム及びデータ分析処理方法
JP2014059862A (ja) データフローのリソース割り当て装置および方法
CN106445631A (zh) 一种布署虚拟机的方法、系统以及物理服务器
CN113672375B (zh) 资源分配预测方法、装置、设备及存储介质
CN111124644B (zh) 任务调度资源的确定方法、装置及系统
Li et al. Supporting efficient execution of continuous space agent‐based simulation on GPU
JP6796994B2 (ja) 情報処理システム
CN113535087B (zh) 数据迁移过程中的数据处理方法、服务器及存储系统
JP7378990B2 (ja) 構成表示装置、構成表示方法、及び構成表示プログラム
WO2016208178A1 (ja) アクセラレータ制御装置、アクセラレータ制御方法および記憶媒体
CN104866297A (zh) 一种优化核函数的方法和装置
KR102191661B1 (ko) 섹션 지형 편집
CN112130977B (zh) 一种任务调度方法、装置、设备及介质
JP2019125042A (ja) テスト実行順序生成装置、テスト実行順序生成方法及び記憶媒体
CN111984510A (zh) 调度系统的性能测试方法及装置
CN109617954B (zh) 一种创建云主机的方法和装置
CN112988403A (zh) 具有保密功能的集成电路仿真多线程管理并行方法及装置
CN113495876A (zh) 一种基于Spark的影像金字塔分布式切片系统及方法
WO2017001900A1 (en) A data processing method
CN110727600B (zh) 一种自动化测试方法、终端、电子设备及可读存储介质