−−−データ分析の概念例について−−−
図1は、本実施形態において想定するデータ分析の実行過程を概念的に示す図であり、分析対象の起点となる分析データから、最終的に分析者に提示される分析結果に至る分析概念の例である。
本実施形態で想定するデータ分析システムでは、分析の起点となる分析データを入力として所定の分析処理を実行し、その分析処理で得られた出力を入力として異なる分析処理を実行する、といったサイクルを必要に応じて繰り返し、最終的に分析者の望む分析結果を得る、という運用を行う情報処理システムである。
こうした分析過程において、分析データ102および分析データ112は、分析の起点となる分析データである。この分析データ102および分析データ112は、例えば、業務システムやセンサなどのデータソース端末201(図2)から電子ファイルで取得したものを想定できる。一方、上述の分析データ102を入力としたデータ処理161を実行して得られるのが、中間データ122である。このデータ処理161は、一例として「変換1」という処理を想定している。
なお、図1において例示する関連181は、上述のデータ処理161の入力が分析データ102であることを示すリンクであり、また関連182は、データ処理161の出力が中間データ122であることを示すリンクである。
同様にして、分析データ112を入力データとして、データ処理162の実行結果として得られるのが、中間データ132である。ここで、データ処理162は「変換2」という処理を想定している。
また、上述の中間データ122および中間データ132を入力データとして、データ処理163の実行結果として得られるのが、中間データ142である。ここで、データ処理163は「分析アルゴリズムA」を適用した処理を想定している。
また、上述の中間データ142を入力データとして、データ処理164の実行結果として得られるのが、分析結果152である。ここで、データ処理164は「分析アルゴリズムB」を適用した処理を想定している。
こうした一連のデータ分析処理の終端に該当する分析結果152は、分析者にとって有効な情報である。有効な情報とは、分析者が意図した分析結果であり、例えば、商品を店舗販売する小売企業における、店舗での人流データと売上データとの相関関係・因果関係を示す分析データを想定可能である。こうした分析データは、当該企業における企業価値向上につながると期待されている。
なお、上述の分析結果152は、分析者が利用するデータ分析表示クライアント207(図2)に対して必要に応じて配信され、当該分析者による判断の対象となる。分析者による判断、すなわち意図した分析結果であるかを判断するロジックとしては、例えば、上述の相関関係・因果関係における対象事象の間の相関係数が大きいことを検証するといったものが該当する。
本実施形態では、上述の分析データ、中間データ、および、分析結果、のそれぞれに関して、その特性を示すメタデータと該当データを生成するために必要な情報である生成用データとを管理する。なお、こうした分析データ、中間データ、および、分析結果のそれぞれに関して、該当データとそれに対応するメタデータおよび生成用データを、便宜上、データノードと呼称する。
図1に示す例では、データノード101は、分析データ102とメタデータ・生成用データ103(メタデータと生成用データのセット)で構成される。
同様に、データノード111は、分析データ112とメタデータ・生成用データ113で、データノード121は、中間データ122とメタデータ・生成用データ123で、データノード131は、中間データ132とメタデータ・生成用データ133で、データノード141は、中間データ142とメタデータ・生成用データ143で、データノード151は分析結果152とメタデータ・生成用データ153で、それぞれ構成される。
なお、図1における関連171は、中間データ122を生成した際の入力がデータノード101における分析データ102であることを示すリンクである。この、中間データ122を生成した際の入力がデータノード101における分析データ102である、という情報は、メタデータ・生成用データ123に記録されている。また、データ処理161が「変換1」であることも、メタデータ・生成用データ123に記録されている。
同様に、関連172は、中間データ132を生成した際の入力がデータノード111に
おける分析データ112であることを示すリンクである。この、中間データ132を生成した際の入力がデータノード111における分析データ112である、という情報、およびデータ処理162が「変換2」であるという情報は、メタデータ・生成用データ133に記録されている。
また、関連173は、中間データ142を生成した際の入力の1つがデータノード121における中間データ122であること、および、関連174は、中間データ142を生成した際の入力の一つがデータノード131における中間データ132であることを示すリンクである。中間データ142を生成した際の入力がデータノード121における中間データ122およびデータノード131における中間データ132である、という情報、およびデータ処理163が「分析アルゴリズムA」であるという情報は、メタデータ・生成用データ143に記録されている。
また、関連175は、分析結果152を生成した際の入力がデータノード141における中間データ142であることを示すリンクである。この、分析結果152を生成した際の入力がデータノード141における中間データ142である、という情報、およびデータ処理164が「分析アルゴリズムB」であるという情報は、メタデータ・生成用データ153に記録されている。
本実施形態では、中間データのそれぞれに関して、上述のようにメタデータおよび生成用データを管理することにより、対応するデータノードにおける中間データを削除しても、その後に該当中間データを再生成することを可能とする。
例えば、中間データのデータノード(以後、中間データノード)であるデータノード121の中間データ122は、メタデータ・生成用データ123を参照することにより、その生成において入力となったのがデータノード101の分析データ102であり、当該生成に用いたアルゴリズムがデータ処理161の「変換1」であることが分かる。そのため、データノード101の分析データ102を入力とし、メタデータ・生成用データ123から得られる情報をパラメータとしてデータ処理161の「変換1」に与えることで、データノード121の中間データ122を再生成できる。
同様に、中間データノードであるデータノード141の中間データ142は、メタデータ・生成用データ143を参照することにより、その生成において入力となったのがデータノード121の中間データ122およびデータノード131の中間データ132であり、当該生成に用いたアルゴリズムがデータ処理163の「分析アルゴリズムA」であることが分かる。そのため、データノード121の中間データ122およびデータノード131の中間データ132を入力とし、メタデータ・生成用データ143から得られる情報をパラメータとしてデータ処理163の「分析アルゴリズムA」に与えることで、データノード141の中間データ142を再生成できる。
なお、上述のメタデータおよび生成用データの詳細については、図8Aおよび図8Bに基づいて後述する。また、中間データの削除処理の詳細については、図13〜図17に基づいて後述するものとする。
−−−システム構成例−−−
図2は、本実施形態における中間データ管理システム200の構成例を示す図である。この中間データ管理システム200は、データ受信サーバ202、データ格納サーバ203、データ分析サーバ204、中間データ削除サーバ205、データ分析表示サーバ206、および、データ分析表示クライアント207、から構成される。
こうした中間データ管理システム200は、インターネットなどの適宜なネットワーク208を介してデータソース端末201と通信可能に接続されている。同様に、中間データ管理システム200は、LANなどの適宜なネットワーク209を介して、データ分析表示クライアント207と通信可能に接続されている。勿論、上述のデータソース端末201およびデータ分析表示クライアント207の少なくともいずれかが、中間データ管理システム200に含まれるとしてもよい。
なお、上述のネットワーク208は、既に述べたようにインターネットなど、通信キャリアなどによって提供される無線ネットワークまたは有線ネットワークを想定できる。このネットワーク208は、個別の会社などが所有するネットワークを、その一部に含んでもよく、複数種類のプロトコルを通過させるネットワークであってもよい。
また、上述のネットワーク構成のうちデータソース端末201は、所定センサ等による観測対象の観測結果たるデータを当該センサ等から収集する機能、および、こうして収集したデータをネットワーク208経由で中間データ管理システム200のデータ受信サーバ202に送信する機能、を有する装置である。このデータソース端末201は、図1の例における、分析データ102や分析データ112を中間データ管理システム200に配信する装置となる。
また、中間データ管理システム200を構成するデータ受信サーバ202は、ネットワーク208を介してデータソース端末201から送信されるデータを受信し、このデータを分析データとしてデータ格納サーバ203に格納要求するサーバ装置である。データ受信サーバ202の詳細構成については後述する。
また、データ格納サーバ203は、中間データ管理システム200を構成する他のサーバが利用するデータを格納するサーバ装置である。当該データがファイルの場合は共有ファイルサーバ、レコードとして格納しておく場合は構造データベースサーバ、jsonなどの形式で格納しておく場合はキーバリューストアなどの非構造データベースなどのデータを格納するサーバ、が該当する。
こうしたデータ格納サーバ203は、図1の例における分析データ、中間データ、および分析結果と、メタデータ、生成用データ、を格納するための各種記憶部を持つ。データ格納サーバ203が持つ記憶部の詳細は、図8および図9で後述する。
また、データ分析サーバ204は、データ分析表示サーバ206からデータ分析実行要求を受け付け、当該データ分析実行要求の内容に応じて、分析対象の分析データや中間データをデータ格納サーバ203から取得し、取得したデータに対して所定の分析プログラムによりデータ分析を実行するサーバ装置である。データ分析サーバ204は、こうして得た分析結果をデータ格納サーバ203に格納させると共に、データ分析表示サーバ206へ返信する機能を有するサーバである。こうしたデータ分析サーバ204は、図1の例におけるデータ処理161〜164を上述の分析プログラムにより実行する。データ分析サーバ204の詳細は、図6で後述する。
また、中間データ削除サーバ205は、例えば、内蔵するタイマーなどで所定期間毎に到来する中間データ削除タイミングを感知するか、或いは、データ分析表示クライアント207など適宜な端末等から中間データ削除要求を受け付けて、データ格納サーバ203から中間データの削除ポリシー、メタデータ、および、生成用データ、をそれぞれ取得して、当該削除ポリシーに従って削除候補の中間データを選定し、選定した削除対象の中間データの削除依頼をデータ格納サーバ203へ要求する機能を有するサーバ装置である。
この中間データ削除サーバ205は、図1の例では、中間データ122、132、14
2が削除対象か判定する処理を行うこととなる。図1の例では、中間データ122と中間データ142を削除対象と判定した例(図中で“×”が付与され、オブジェクトが破線となっている)を示している。こうした中間データ削除サーバ205の詳細は、図7で後述する。
また、データ分析表示サーバ206は、データ分析表示クライアント207からデータ分析要求などの処理要求を受け付け、受け付けた処理要求に基づき、データ分析サーバ204およびデータ格納サーバ203に処理依頼を行って、その処理結果をデータ分析クライアント207に返信する処理を実行するサーバ装置である。このデータ分析表示サーバ206の詳細は、図5で後述する。
また、データ分析表示クライアント207は、分析者が使用する端末であり、データ分析処理の実行要求等を生成し、これをデータ分析表示サーバ206に送信する端末である。このデータ分析表示クライアント207は、会社や工場におけるパーソナルコンピュータやサーバ、或いは、スマートフォンやタブレット端末など、ネットワーク209の通信プロトコルに応じた通信デバイスを具備した情報処理装置である。
ここでは、上述のサーバらが別々の物理マシンである例を示したが、これらのサーバが同じ物理マシンの別々の仮想マシンであってもよいし、別々の物理マシンの別々の仮想マシンであってもよい。或いは、物理マシンおよび仮想マシンとして混在してもよい。
−−−ハードウェア構成例−−−
図3は、図2で示したデータ受信サーバ202、データ格納サーバ203、データ分析サーバ204、中間データ削除サーバ205、および、データ分析表示サーバ206、における共通の物理的な構成を示す図である。
これらのサーバは、演算装置たるCPU301、メモリ302、補助記憶装置303、および、通信インターフェイス304、を有する計算機によって構成される。
このうちCPU301は、補助記憶装置303からプログラム3031をメモリ302に読み出して実行し、必要な機能を実装する演算装置である。
また、メモリ302は、不揮発性の記憶素子であるROMおよび揮発性の記憶素子であるRAMを含む。ROMは、不変のプログラム(例えば、BIOS)などを格納する。RAMは、DRAM(Dynamic Random Access Memory)のような高速かつ揮発性の記憶素子であり、CPU301が実行するプログラム3031およびプログラム3031の実行時に使用されるデータを一時的に格納する。
また、補助記憶装置303は、例えば、磁気記憶装置(HDD)、フラッシュメモリ(SSD)等の大容量かつ不揮発性の記憶装置であり、CPU301が実行するプログラム3031およびプログラム3031の実行時に使用されるデータを格納する。すなわち、プログラム3031は、補助記憶装置3から読み出されてメモリ302にロードされ、CPU301によって実行される。
また、通信インターフェイス304は、接続するネットワークのプロトコルに従って、他の装置との通信を制御するネットワークインターフェイス装置である。
本実施形態におけるサーバらは、入力インターフェイス305および出力インターフェイス308を有してもよい。入力インターフェイス305は、キーボード306やマウス307などが接続され、オペレータからの入力を受けるインターフェイスである。出力インターフェイス308は、ディスプレイ装置309やプリンタなどが接続され、プログラムの実行結果をオペレータが視認可能な形式で出力するインターフェイスである。
なお、CPU301が実行するプログラム3031は、リムーバブルメディア(CD−ROM、フラッシュメモリなど)又はネットワークを介して当該サーバに提供され、非一時的記憶媒体である不揮発性記憶装置303に格納される。このため、サーバは、リムーバブルメディアからデータを読み込むインターフェイスを有するとよい。
図4は、本実施形態におけるデータ受信サーバ202およびデータ格納サーバ203の機能ブロックを示す図である。データ受信サーバ202は、データ受信処理部401とデータ取得・格納・削除要求部402とを含んで構成される。一方、データ格納サーバ203は、データ取得・格納・削除受付部403と、分析データ記憶部411と、メタデータ記憶部412と、を含んで構成される。
このうちデータ受信サーバ202のデータ受信処理部401は、データソース端末201から送信される分析データを受信し、当該分析データについてそのデータ内容の妥当性確認を適宜なアルゴリズム(例:データ項目とそのデータ形式を予め定めたデータフォーマットに合致するものか判定するアルゴリズム。以下同様)で行い、当該データ内容が妥当であれば、受信した分析データ(中間データ、分析結果も含む。以下同様)に関するメタデータを生成し、受信した分析データおよび生成したメタデータの格納を、データ取得・格納・削除要求部402に依頼する。また、データ受信処理部401は、上述の依頼に応じてデータ取得・格納・削除要求部402から返却される格納結果を受信し、これをデータソース端末201に送信する。
一方、上述のデータ取得・格納・削除要求部402は、データ受信処理部401からの要求を受け付けて、データ格納サーバ203のデータ取得・格納・削除受付部403にデータ格納を依頼する。この場合、データ取得・格納・削除要求部402は、データ格納サーバ203のデータ取得・格納・削除受付部403から返却される格納結果を、データ受信サーバ202のデータ受信処理部401に返信する。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、データ受信サーバ202のデータ取得・格納・削除要求部402から分析データおよびそのメタデータの格納要求を受け付け、当該分析データを分析データ記憶部411に格納し、メタデータをメタデータ記憶部412に格納して、当該分析データおよびメタデータの格納結果をデータ受信サーバ202のデータ取得・格納・要求部402に送信する。
また、データ格納サーバ203の分析データ記憶部411は、データソース端末201から受信した分析データや、データ分析サーバ204による中間データや分析結果を格納する。また、データ格納サーバ203のメタデータ記憶部412は、データソース端末201から受信した分析データや、データ分析サーバ204による中間データや分析結果、の属性情報であるメタデータを格納する。メタデータ記憶部412の詳細については、図9で後述する。
データ受信サーバ202が、データソース端末201から送信された分析データを受信して、該当分析データおよびメタデータをデータ格納サーバ203に格納する動作シーケンスの詳細については、図10で後述する。
図5は、本実施形態における分析データ表示サーバ206およびデータ格納サーバ203の機能ブロックを示す図である。
本実施形態の分析データ表示サーバ206は、表示リクエスト受付部501と、表示情報生成部502と、データ分析実行要求部503と、データ取得・格納・削除要求部504と、を含んで構成される。
一方、データ格納サーバ203は、図4で既に示した分析データ記憶部411およびメタデータ記憶部412の他、生成用データ記憶部511と、分析プログラム情報記憶部512と、を更に含むものとする(図4の構成と記憶部の点で異なるが、ここでの説明に必要な構成のみピックアップして示している)。
上述の分析データ表示サーバ206の表示リクエスト受付部501は、データ分析表示クライアント207から表示情報の取得要求を受け付け、ここで受け付けた取得要求の内容の妥当性を確認し、当該内容が妥当であれば、当該取得要求の内容に応じて表示情報生成部502に表示情報の生成を依頼する。また、表示リクエスト受付部501は、表示情報生成部502から返信された表示情報をデータ分析表示クライアント207へ送信する。
また、分析データ表示サーバ206の表示情報生成部502は、表示リクエスト受付部501からの表示情報の取得要求を受け付け、この要求内容に応じてデータ分析実行要求部503へデータ分析の実行要求を、またはデータ取得・格納・削除要求部504へデータ取得要求を、それぞれ通知し、データ分析実行要求部503とデータ取得・格納・削除要求部504の返信結果から表示情報を生成し、生成した表示情報を表示リクエスト受付部501へ返信する。
また、分析データ表示サーバ206のデータ分析実行要求部503は、表示情報生成部502からデータ分析の実行要求を受け付け、当該実行要求の内容に応じて、データ分析サーバ204のデータ分析実行受付部505へデータ分析実行要求を送信する。また、分析データ表示サーバ206のデータ分析実行要求部503は、データ分析サーバ204のデータ分析実行受付部505から送信される実行結果を表示情報生成部502に返信する。
また、分析データ表示サーバ206のデータ取得・格納・削除要求部504は、表示情報生成部502からデータ取得要求を受け付け、当該要求内容に応じてデータ格納サーバ203のデータ取得・格納・削除受付部403にデータ取得要求を送信して、このデータ取得・格納・削除受付部403から取得したデータを表示情報生成部502に返信する。
また、データ格納サーバ203の生成用データ記憶部511は、データ分析サーバ204の分析プログラム602(後述)が中間データや分析結果を生成する際に必要とする入力情報を格納している。こうした分析プログラム602が中間データや分析結果を生成する際に必要とする入力情報とは、分析処理の対象となる分析データや中間データのリスト、データ生成に使用した分析プログラムの種別、およびデータ生成に際し分析プログラムに適用したパラメータなどが想定可能である。なお、生成用データ記憶部511の詳細については、図8で後述する。
また、データ格納サーバ203の分析プログラム情報記憶部512は、データ分析サーバ204の分析プログラム602の種別や分析プログラム602に設定が必要なパラメータなどの情報を格納する。
なお、分析データ表示サーバ206において、データ分析表示クライアント207から表示情報の取得要求を受け付け、その要求内容に応じて必要とするデータをデータ格納サーバ203より取得して、取得したデータを表示情報に生成し、表示情報をデータ分析表示クライアント207へ送信する動作シーケンスの詳細については、図11で後述する。
また、データ分析サーバ204において、データ分析表示クライアント207からの分
析実行要求を分析データ表示サーバ206を介して受け付け、当該要求内容に応じて必要とするデータをデータ格納サーバ203より取得して、取得したデータを入力として分析プログラム602を実行し、当該分析の実行結果をデータ格納サーバ203に格納し、当該実行結果に関する表示情報を生成し、生成した表示情報をデータ分析表示クライアント207へ送信する動作シーケンスの詳細については、図12で後述する。
図6は、本実施形態におけるデータ分析サーバ204の機能ブロックを示す図である。このデータ分析サーバ204は、データ分析実行受付部505と、分析実行管理部601と、分析プログラム602と、データ取得・格納・削除要求部602と、を含んで構成される。
このうちデータ分析実行受付部505は、データ分析表示サーバ206のデータ分析実行要求部503からデータ分析の実行要求を受信し、この実行要求の内容について妥当性確認を行い、当該実行要求の内容が妥当な場合に、分析実行管理部601にデータ分析実行要求を送信する。また、データ分析実行受付部505は、分析実行管理部601から返信されるデータ分析の実行結果を、データ分析表示サーバ206のデータ分析実行要求部503に返信する。
また、データ分析サーバ204の分析実行管理部601は、上述のデータ分析実行受付部505から送信されるデータ分析の実行要求を受け付け、当該実行要求の内容に基づき分析プログラム602を実行する。
また、分析実行管理部601は、分析プログラム602から返信される分析実行結果たる中間データないし分析結果に関して、その特性を示すメタデータの作成と、および分析実行時の分析プログラム602への入力情報である生成用データの作成とを実行する。
また、分析実行管理部601は、分析プログラム602から出力された中間データないし分析結果と、上述のように作成したメタデータおよび生成用データとを、格納要求と共にデータ取得・格納・削除要求部602に送信し、また、中間データないし分析結果をデータ分析実行受付部505に返信する。
また、データ分析サーバ204の分析プログラム602は、分析実行管理部601から送信されるデータ分析の実行要求を受け付け、当該実行要求の入力情報に基づきデータ分析を実行し、その実行結果である中間データないし分析結果を、分析実行管理部601に返信する。
上述のとおり、一般的にデータ分析システムでは複数のデータ処理を繰り返すことにより分析を行う。そのため、分析プログラム602は複数種類が存在する。図1の例では、データ処理163の「変換1」、データ処理162の「変換2」、データ処理163の「分析アルゴリズムA」、およびデータ処理164の「分析アルゴリズムB」がそれぞれ分析プログラム602の種別に相当する。
また、データ分析サーバ204のデータ取得・格納・削除要求部603は、分析実行管理部601からデータ格納要求を受け付け、データ格納サーバ203のデータ取得・格納・削除受付部403にデータ格納依頼を送信する。また、データ取得・格納・削除要求部603は、データ格納サーバ203のデータ取得・格納・削除受付部403から返却される格納要求結果を分析実行管理部601に返信する。
図7は、本実施形態における中間データ削除サーバ205およびデータ格納サーバ203の機能ブロックを示す図である。本実施形態の中間データ削除サーバ205は、中間デ
ータ削除定期要求部701と、中間データ削除管理部702と、データ取得・格納・削除要求部703と、を含んで構成される。一方、データ格納サーバ203は、既に上述した構成の他に、削除ポリシー記憶部711を含むものとする。
このうち中間データ削除サーバ205の中間データ削除定期要求部701は、サーバ内のタイマーなどにより中間データの削除時期到来を検知し(或いは、ユーザからの指示を受けて)、中間データ削除管理部702に中間データの削除要求を行う。
また、中間データ削除サーバ205の中間データ削除管理部702は、中間データ削除定期要求部701から中間データ削除要求を受け付け、データ取得・格納・削除要求部703に対し、削除ポリシー、メタデータ、および、生成用データ、の取得要求を行って、中間データの削除ポリシー、メタデータ、および、生成用データを取得し、これらに基づいて削除対象の中間データを選定し、当該選定した中間データの削除要求および該当メタデータの更新要求を、データ取得・格納・削除要求部703に送信する。こうした中間データ削除管理部702における処理フローの詳細については、図14〜17にて後述する。
また、中間データ削除サーバ205のデータ取得・格納・削除要求部703は、上述の中間データ削除管理部702から、データの取得、格納、および削除の各要求のいずれかを適宜に受け付け、その要求の内容に応じてデータ格納サーバ203のデータ取得・格納・削除受付部403に該当データの取得、格納、および、削除、のいずれかの依頼を実行して、データ取得・格納・削除受付部403から返却される、取得要求結果、格納要求結果、および、削除要求結果を、中間データ削除管理部702に返信する。
一方、データ格納サーバ203の削除ポリシー記憶部711は、削除対象の中間データを選定する際の規定を定義した情報である削除ポリシーを格納する。この削除ポリシー記憶部711の詳細については、図9で後述する。
なお、中間データ削除サーバ205の中間データ削除管理部702において、中間データ削除定期要求部701から中間データ削除要求を受けて、データ格納サーバ203から削除ポリシーを取得し、当該データ削除ポリシーに基づき削除対象となる中間データを選定してデータ格納サーバ203に対して削除要求を行い、該当中間データのメタデータをデータ格納サーバ203にて更新させる動作シーケンスの詳細については、図13で後述する。
−−−データ構成例−−−
続いて、本実施形態の中間データ管理システム200が用いるテーブル類について説明する。図8Aは、本実施形態のデータ格納サーバ203に保持されているメタデータ記憶部412のテーブル構成例を示す図である。
本実施形態のメタデータ記憶部412には、分析データ、中間データ、および、分析結果、のそれぞれの特性を示すデータすなわちメタデータが記憶される。
図8Aに例示するメタデータ記憶部412のテーブルは、データノードを一意に特定するためのデータノードIDカラム1601と、対象データ(分析データ、中間データ、および、分析結果のいずれか。以下同様)のデータサイズを格納するデータサイズカラム1602と、対象データが格納されている場所を格納するデータ格納パスカラム1603と、分析者から対象データにアクセスした最終時刻を格納する最終アクセス時刻カラム1604と、対象データが生成された時刻を格納するデータ生成時刻カラム1605と、対象データをデータ処理にて生成するのに要した時間を格納するデータ生成時間カラム1606と、対象データを逆変換することでデータ処理前の対象データを再生成するのにかかる
推定時間を格納するデータ逆変換生成推定時間カラム1607と、該当データノードと関連する生成用データの外部キーを格納する生成用データIDカラム1608と、を含み構成される。
また図8Bは、本実施形態のデータ格納サーバ203に保持されている生成用データ記憶部511のテーブル構成例を示す図である。
本実施形態の生成用データ記憶部511には、分析処理にて生成された対象データがどのような入力とデータ処理にて生成されたかを示すデータ、すなわち生成用データが記憶される。図8Bに例示する生成用データ記憶部511のテーブルは、当該生成用データを一意に特定するための生成用データIDカラム1609と、当該対象データの生成に際して入力となった元データのデータノードIDを格納する元データリストカラム1610と、当該対象データを生成するために使用したデータ処理の種別を格納する処理アルゴリズムカラム1611と、当該対象データを生成する際にデータ処理のパラメータとして使用した値を格納する順方向データ生成パラメータカラム1612と、当該対象データから逆変換データ処理で元データを生成する際に必要とされるパラメータの値を格納する逆方向データ生成パラメータカラム1613と、を含み構成される。
また図9は、本実施形態のデータ格納サーバ203に保持されている削除ポリシー記憶部711のテーブル構成例を示す図である。
図9に例示する削除ポリシー記憶部711のテーブルは、中間データの削除ポリシーを一意に特定するためのポリシーIDカラム1701と、削除対象とする中間データのデータサイズの最小値を表すデータサイズ下限カラム1702と、削除対象とする中間データの分析者によるアクセスアイドル時間の最小値を表す最終アクセス時間下限カラム1703と、削除対象とする中間データの生成時刻からの経過時間最小値を表す生成経過時間下限カラム1704と、削除対象とする中間データの再生時間の最大値を表す再生成時間上限カラム1705と、を含み構成される。
−−−−中間データ管理方法の手順例−−−
以下、本実施形態における中間データ管理方法の実際手順について図に基づき説明する。以下で説明する中間データ管理方法に対応する各種動作は、中間データ管理システム200を構成する各サーバらがメモリ等に読み出して実行するプログラムによって実現される。そして、このプログラムは、以下に説明される各種の動作を行うためのコードから構成されている。
図10は、本実施形態における中間データ管理方法のシーケンス例1を示す図であり、具体的には、データソース端末201が分析データをデータ受信サーバ202に送信し、データ受信サーバ202が当該分析データに関するメタデータを生成し、データ格納サーバ203が当該分析データおよび上述のメタデータを格納する、一連の動作シーケンスの例を示す図である。
この場合まず、データソース端末201が、データ受信サーバ202のデータ受信処理部401に対し、分析対象となる分析データを送信する(S801)。
ここでデータソース端末201が送信する分析データは、データ分析の起点となるデータである。この分析データは、図1における分析データ102および分析データ112に相当する。
一方、データ受信サーバ202のデータ受信処理部401は、データソース端末201が送信してきた分析データを受信し、その内容が妥当なものであるか所定の確認を行い、当該確認の結果、内容が妥当であると判定した場合、当該分析データの特性を示すメタデータを生成する。このメタデータの生成は、例えば、分析データのプロパティ情報からデ
ータサイズを読み取る処理など、メタデータ記憶部412のテーブル項目ごとに予め規定したアルゴリズムによって実行されるものとする(その手法について限定はしない)。
例えば、分析データ102を受信した際にデータ受信サーバ202が生成するメタデータは、図1におけるデータノード101におけるメタデータ103に相当する。上述の図8Aのメタデータ記憶部412のテーブルにおけるデータノードIDの値が、データノード101のレコードに相当する。
同様に、分析データ102を受信した際にデータ受信サーバ202が生成するメタデータは、図1におけるデータノード111におけるメタデータ113に相当する。上述の図8Aのメタデータ記憶部412のテーブルにおけるデータノードIDの値が、データノード111のレコードに相当する。
続いて、データ受信サーバ202のデータ取得・格納・削除要求部402が、データ格納サーバ203のデータ取得・格納・削除受付部403に対し、情報格納要求を送信する(S802)。
このデータ受信サーバ202のデータ取得・格納・削除要求部402が送信する情報格納要求には、データソース端末201から受信した分析データと、データ受信サーバ202のデータ受信処理部401が生成した該当分析データのメタデータと、を含む。
一方、データ格納サーバ203のデータ取得・格納・削除受付部403は、上述のデータ受信サーバ202のデータ取得・格納・削除要求部402が送信してきた情報格納要求に基づき、当該分析データを分析データ記憶部411に格納する(S803)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、上述のデータ受信サーバ202のデータ取得・格納・削除要求部402が送信してきた情報格納要求に基づき、当該メタデータをメタデータ記憶部412に格納する(S804)。
他方、データ格納サーバ203のデータ取得・格納・削除受付部403は、データ受信サーバ202のデータ取得・格納・削除要求部402に対し、分析データおよびメタデータの格納結果を送信する(S805)。
また、データ受信サーバ202のデータ受信処理部401は、上述の分析データおよびメタデータの格納結果の受信を受けて、データソース端末201に対し、当該分析データの受信結果を送信し(S806)、処理を終了する。
図11は、本実施形態のデータ分析表示クライアント207がデータ分析表示サーバ206に対して表示情報取得要求を送信し、データ分析サーバ206がその要求内容に応じて必要とするデータをデータ格納サーバ203より取得し、また、当該取得したデータを表示情報に生成し、さらに、当該表示情報をデータ分析表示クライアント207へ送信する動作シーケンスの例である。
この場合、データ分析表示クライアント207が、データ分析表示サーバ206の表示リクエスト受付部501に対し、表示情報要求を送信する(S901)。
ここでデータ分析表示クライアント207が送信する表示情報要求には、表示情報の種別と、表示情報の入力パラメータと、を含む。また、表示情報の種別には、分析者にて提供するユーザインタフェースとして、データ情報表示画面、データ分析結果表示画面、分析プログラム選択画面、データ分析実行画面などを想定できる。
続いて、データ分析表示サーバ206のデータ取得・格納・削除要求部504が、上述のデータ分析表示クライアント207から送信された表示情報要求に基づき、データ格納サーバ203のデータ取得・格納・削除受付部403に対し、分析データ、メタデータ、および、生成用データ、の情報取得要求を送信する(S902)。
一方、データ格納サーバ203のデータ取得・格納・削除受付部403は、上述の情報取得要求にしたがって、分析データ記憶部411から分析データを取得する(S903)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、上述の情報取得要求にしたがって、メタデータ記憶部412からメタデータを取得する(S904)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、上述の情報取得要求にしたがって、生成用データ記憶部511から生成用データを取得する(S905)。
続いて、データ格納サーバ203のデータ取得・格納・削除受付部403は、データ分析表示サーバ206のデータ取得・格納・削除要求部504に対し、分析データ、メタデータ、および、生成用データ、を送信する(S906)。
一方、データ分析表示サーバ206のデータ取得・格納・削除要求部504は、データ分析表示クライアント207から送信された表示情報要求に基づき、データ格納サーバ203のデータ取得・格納・削除受付部403に対し、分析プログラム情報の情報取得要求を送信する(S907)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、分析プログラム情報記憶部512から分析プログラム情報を取得する(S908)。
続いて、データ格納サーバ203のデータ取得・格納・削除受付部403は、データ分析表示サーバ206のデータ取得・格納・削除要求部504に対し、分析プログラム情報を送信する(S909)。
また、データ分析表示サーバ206のデータ取得・格納・削除要求部504は、データ格納サーバ203のデータ取得・格納・削除受付部403に対し、情報更新要求を送信する(S910)。
上述の、データ分析表示サーバ206のデータ取得・格納・削除要求部504が送信する情報更新要求は、表示対象となるデータノードにおけるメタデータにおける最終アクセス時刻カラム1604を現在時刻で更新する要求を含む。例えば、分析者が図1の中間データ122の表示要求を時刻「2016/10/11 10:03」に実行した場合、図8で例示したメタデータ記憶部412のテーブルのデータノードIDカラム1601の値が「データノード121」であるレコードにおいて、最終アクセス時刻カラム1604の値を「20161001−1003」として更新要求を行う。
続いて、データ格納サーバ203のデータ取得・格納・削除受付部403は、データ分析表示サーバ206のデータ取得・格納・削除要求部504が送信する情報更新要求に基づき、メタデータ記憶部412のメタデータを更新する(S911)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、データ分析表示サーバ206のデータ取得・格納・削除要求部504に対し、メタデータの更新結果
を送信する(S912)。
続いて、データ分析表示サーバ206の表示情報生成部502は、データ分析表示クライアント207から送信された表示情報要求と、データ格納サーバ203のデータ取得・格納・削除受付部403から取得した各種情報とに基づき、表示情報を生成する(S913)。
また、データ分析表示サーバ206の表示リクエスト受付部501は、データ分析表示サーバ206の表示情報生成部502が生成した表示情報を、データ分析表示クライアント207に送信し(S914)、処理を終了する。
図12は、本実施形態のデータ分析表示クライアント207が分析実行要求をデータ分析サーバ204に送信し、当該データ分析サーバ204が当該要求内容に応じて必要とするデータをデータ格納サーバ203より取得し、データ分析サーバ204が当該取得したデータを入力として分析プログラム602を実行し、その分析実行結果をデータ格納サーバ203が格納し、データ分析表示サーバ206が当該分析実行結果に関する表示情報を生成し、データ分析表示サーバ206が当該表示情報をデータ分析表示クライアント207へ送信する、一連の動作シーケンスの例を示す図である。なお、削除した中間データを再生成する際にも、同じシーケンスにて動作するものとする。
この場合、データ分析表示クライアント207は、データ分析表示サーバ206の表示リクエスト受付部501に対し、データ分析実行要求を送信する(S1001)。
ここでデータ分析表示クライアント207が送信するデータ分析実行要求は、分析者がデータ分析表示クライアント207のユーザインタフェースを介して入力したパラメータなどを含むものとする。
一方、データ分析表示サーバ206の表示リクエスト受付部501は、上述のデータ分析表示クライアント207から送信されたデータ分析実行要求を受信し、この内容の妥当性を確認する。その内容が妥当であった場合、データ分析表示サーバ206のデータ分析実行要求部503が、データ分析実行要求をデータ分析サーバ204のデータ分析実行受付部505へ送信する(S1002)。
一方、データ分析サーバ204のデータ取得・格納・削除要求部602は、上述のデータ分析実行要求を受けて、データ格納サーバ203のデータ取得・格納・削除受付部403に対し、分析データ、メタデータ、および、生成用データ、の情報取得要求を送信する(S1003)。
この場合、データ格納サーバ203のデータ取得・格納・削除受付部403は、分析データ記憶部411から分析データを取得する(S1004)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、メタデータ記憶部412からメタデータを取得する(S1005)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、生成用データ記憶部511から生成用データを取得する(S1006)。
続いて、データ格納サーバ203のデータ取得・格納・削除受付部403は、データ分析サーバ204のデータ取得・格納・削除要求部602に対し、上述のS1004〜S1006で得た、分析データ、メタデータ、および生成用データ、を送信する(S1007)。
なお、生成用データが存在しない場合、データ分析サーバ204の分析実行管理部60
1が、データ分析表示サーバ206のデータ分析実行要求部503から送信されたデータ分析実行要求の内容に基づき、生成用データを生成する。
例えば、図1の中間データ122の場合、入力となったのがデータノード101の分析データ111であり、データ処理161は「変換1」であり、データ処理の入力パラメータとして「P_11=8,P12=2」という値を用いたとする。その場合、上述の図8Bの生成用データ記憶部511のテーブルにおける生成用データIDカラム1609の値が「生成用データ01」で、元データリストカラム1610の値が「データノード101」で、処理アルゴリズムカラム1611の値が「変換1」で、順方向データ生成パラメータカラム1612の値が「P_11=8,P12=2」となるレコードを生成する。
続いて、データ分析サーバ204の分析プログラム603は、データ分析表示クライアント207から送信されたデータ分析実行要求と、データ格納サーバ203のデータ取得・格納・削除受付部403から取得した分析データ、メタデータ、および生成用データとに基づき、データ分析を実行する(S1008)。この処理により、中間データを生成することとなる。
また、データ分析サーバ204のデータ取得・格納・削除要求部602は、データ格納サーバ203のデータ取得・格納・削除受付部403に対し、情報格納要求および情報更新要求を送信する(S1009)。
上述の、データ分析サーバ204のデータ取得・格納・削除要求部602が送信する情報格納要求には、データ分析実行処理(S1008)の実行結果である中間データないし分析結果と、データ分析サーバ204の分析実行管理部601が生成した該当中間データないし分析結果の生成用データとを含む。
また、データ分析サーバ204のデータ取得・格納・削除要求部602が送信する情報更新要求には、データ分析サーバ204の分析実行管理部601が生成したメタデータを含む。例えば、図1の中間データ122がデータ生成時間「33[min]」を要して時刻「2016/9/12 03:42」に生成され、そのデータサイズが「20[Gbyte]」であった場合は、上述の図8のメタデータ記憶部412におけるテーブルのデータノードIDカラム1601の値が「データノード121」であるレコードにおいて、データサイズカラム1602の値を「20」とし、データ生成時刻カラム1605の値を「20160912−0342」とし、データ生成時間カラム1606の値を「33」として更新要求を行う。
続いて、データ格納サーバ203のデータ取得・格納・削除受付部402は、データ分析サーバ204のデータ取得・格納・削除要求部602が送信してきた情報格納要求に基づき、中間データないし分析結果を分析データ記憶部411に格納する(S1010)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、データ分析サーバ204のデータ取得・格納・削除要求部602が送信してきた情報更新要求に基づき、メタデータ記憶部412のメタデータを更新する(S1011)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、データ分析サーバ204のデータ取得・格納・削除要求部602に対し、中間データないし分析結果およびその生成用データの格納結果と、当該メタデータの更新結果を送信する(S1013)。
なお、分析対象が複数ある場合、上述の処理S1003から処理S1013までの処理が、対象データの数だけ繰り返し実行されることとなる。
続いて、データ分析サーバ204のデータ分析実行受付部505は、データ分析表示サーバ206のデータ分析実行要求部503に対し、データ分析結果を送信する(S1014)。
また、データ分析表示サーバ206の表示情報生成部502は、データ分析表示クライアント207から送信されてきたデータ分析実行要求と、データ分析サーバ204のデータ分析実行受付部505から送信されてきたデータ分析結果とに基づき、表示情報を生成する(S1015)。
また、データ分析表示サーバ206の表示情報生成部502は、上述の生成した表示情報をデータ分析表示クライアント207に送信し(S1016)、処理を終了する。
図13は、本実施形態の中間データ削除サーバ205がデータ格納サーバ203から中間データの削除ポリシーを取得し、中間データ削除サーバ205が当該削除ポリシーに基づいて削除対象となる中間データを選定し、データ格納サーバ203が削除対象に選定された中間データを削除し、データ格納サーバ203が該当中間データのメタデータを更新する、一連の動作シーケンスの例を示す図である。
この場合、中間データ削除サーバ205のデータ取得・格納・削除要求部703は、データ格納サーバ203のデータ取得・格納・削除受付部403に対し、中間データの削除ポリシーの情報取得要求を送信する(S1101)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、削除ポリシー記憶部711から削除ポリシーを取得する(S1102)。
続いて、データ格納サーバ203のデータ取得・格納・削除受付部403は、中間データ削除サーバ205のデータ取得・格納・削除要求部703に対し、S1102で得た削除ポリシーを送信する(S1103)。
次に、中間データ削除サーバ205のデータ取得・格納・削除要求部703は、データ格納サーバ203のデータ取得・格納・削除受付部403に対し、メタデータおよび生成用データの情報取得要求を送信する(S1104)。
一方、データ格納サーバ203のデータ取得・格納・削除受付部403は、上述の情報取得要求を受けて、メタデータ記憶部412からメタデータを取得する(S1105)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、生成用データ記憶部511から生成用データを取得する(S1106)。
続いて、データ格納サーバ203のデータ取得・格納・削除受付部403は、中間データ削除サーバ205のデータ取得・格納・削除要求部703に対し、S1105およびS1106でそれぞれ得た、メタデータおよび生成用データを送信する(S1107)。
一方、中間データ削除サーバ205の中間データ削除管理部702は、上述の取得情報処理(S1103)を介して得た削除ポリシーと、取得情報処理(S1107)を介して得たメタデータおよび生成用データとに基づき、削除対象の中間データを選定する(S1108)。また、この処理に際し、中間データ削除サーバ205のデータ取得・格納・削除要求部703は、上述で選定した中間データについて、その削除要求およびメタデータの更新要求をデータ格納サーバ203のデータ取得・格納・削除受付部403に送信する。
上述のS1108にて削除対象の中間データを探索する処理は、分析データが含まれるノードすなわち起点データノード(図1の場合、データノード101およびデータノード111)のそれぞれについて行うものとする。また、上述のS1108において削除対象の中間データを選定する際、起点データノードから終端データノード(分析結果を含むノードであり、図1の場合、データノード151)に至る方向に探索を行う。このS1108の処理内容の詳細については、図14および図15で後述する。
続いて、中間データ削除サーバ205のデータ取得・格納・削除要求部703は、データ格納サーバ203のデータ取得・格納・削除受付部403に対し、S1108で選定した中間データの削除要求およびメタデータの更新要求を送信する(S1109)。
上述の、中間データ削除サーバ205のデータ取得・格納・削除要求部703が送信する削除要求では、処理(S1108)にて選定された中間データを削除対象として指定する。また、中間データ削除サーバ205のデータ取得・格納・削除要求部703が送信する更新要求では、処理(S1108)にて選定された中間データのメタデータを更新対象として指定する。
例えば、図1の中間データ122が削除対象として選定された場合、上述の図8のメタデータ記憶部412におけるテーブルのデータノードIDカラム1601の値が「データノード121」であるレコードにおいて、データ格納パスカラム1603の値を「−」として更新要求を行う。なお、メタデータ記憶部412におけるテーブルのデータ格納パスカラム1603において、その値が「−」というのは、該当データが削除されていることを示す。
続いて、データ格納サーバ203のデータ取得・格納・削除受付部403は、中間データ削除サーバ205のデータ取得・格納・削除要求部703から送信された削除要求に基づき、対応する中間データを分析データ記憶部411から削除する(S1110)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、中間データ削除サーバ205のデータ取得・格納・削除要求部703から送信された更新要求に基づき、メタデータ記憶部412のメタデータを更新する(S1111)。
続いて、データ格納サーバ203のデータ取得・格納・削除受付部403は、中間データ削除サーバ205のデータ取得・格納・削除要求部703に対し、上述の中間データの削除結果およびメタデータの更新結果を送信する(S1112)。
一方、中間データ削除サーバ205の中間データ削除管理部702は、上述の取得情報処理(S1103)を介して得た中間データ削除ポリシー情報と、取得情報処理(S1107)を介して得たメタデータおよび生成用データとに基づき、削除対象の中間データを選定する(S1113)。また、このS1113において、中間データ削除サーバ205のデータ取得・格納・削除要求部703は、S1113で選定した中間データについて、その削除要求およびメタデータの更新要求をデータ格納サーバ203のデータ取得・格納・削除受付部403に送信する。
なお、上述のS1113での削除対象を探索する処理は、全ての終端データノード(図1の例の場合、データノード151)に対して行うものとする。また、S1113において削除対象の中間データを選定する際、S1108の場合とは異なり、終端データノードから起点データノードに至る方向で探索を行う。こうしたS1113の処理内容の詳細については、図16および図17で後述する。
続いて、中間データ削除サーバ205のデータ取得・格納・削除要求部703は、データ格納サーバ203のデータ取得・格納・削除受付部403に対し、該当中間データの削除要求およびメタデータの更新要求を送信する(S1114)。
なお、上述の中間データ削除サーバ205のデータ取得・格納・削除要求部703が送信する削除要求では、処理(S1113)にて選定された中間データを削除対象として指定する。同様に、中間データ削除サーバ205のデータ取得・格納・削除要求部703が送信する更新要求では、処理(S1113)にて選定された中間データのメタデータを更新対象として指定する。
続いて、データ格納サーバ203のデータ取得・格納・削除受付部403は、中間データ削除サーバ205のデータ取得・格納・削除要求部703から送信されてきた上述の削除要求に基づき、対応する中間データを分析データ記憶部411から削除する(S1115)。
また、データ格納サーバ203のデータ取得・格納・削除受付部403は、中間データ削除サーバ205のデータ取得・格納・削除要求部703から送信されてきた上述の更新要求に基づき、対応する中間データのメタデータに関してメタデータ記憶部412にて更新する(S1116)。
続いて、データ格納サーバ203のデータ取得・格納・削除受付部403は、中間データ削除サーバ205のデータ取得・格納・削除要求部703に対し、上述の中間データの削除結果およびメタデータの更新結果を送信し(S1117)、処理を終了する。
図14は、本実施形態における中間データ削除サーバ205の中間データ削除管理部702が、指定された起点データノードを始点として探索を行って削除対象の中間データを選定し、中間データ削除サーバ205のデータ取得・格納・削除要求部705が、上述のように選定した中間データの削除要求とそのメタデータの更新要求とをデータ格納サーバ203に送信する、一連の動作フローの例である。
なお、図14で示すフローは、中間データ削除サーバ205の中間データ削除管理部702が処理主体となり実行する処理である。ここでは、中間データの削除対象探索において始点となる起点データノードを「n」とする。
この場合、中間データ削除サーバ205の中間データ削除管理部702は、メモリ302等に実装したループカウンタiに「1」を代入する(S1201)。
なお、中間データ削除サーバ205の中間データ削除管理部702は、後述する処理(S1204)の条件が成立するまで、処理(S1203)から処理(S1212)の実行を繰り返し行うものとする(S1202)。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、起点データノード「n」から見てループカウンタi番目の階層のデータノードのリストを取得する情報取得要求を、データ格納サーバ203のデータ取得・格納・削除受付部403に送信し、該当データノードのリストを取得する(S1203)。ここでは、取得されたデータノードのリストを「l」とする。
例えば、図1において、起点データノード「n」が「データノード101」でループカウンタiが「1」の場合、取得されるデータノードのリストは「データノード101」からみて1階層目のデータノードである「データノード121」となる。同様に、起点データノード「n」が「データノード101」でループカウンタiが「2」の場合、取得され
るデータノードのリストは「データノード101」からみて2階層目のデータノードである「データノード141」となる。起点データノード「n」が「データノード101でループカウンタiが「3」の場合、取得されるデータノードのリストは「データノード101」からみて3階層目のデータノードである「データノード151」となる。起点データノード「n」が「データノード101」でループカウンタiが「4」の場合、取得されるデータノードのリストは「データノード101」からみて4階層目のデータノードであるが該当するデータノードないのでデータリストは空となる。
次に、中間データ削除サーバ205の中間データ削除管理部702は、データノードリスト「l」が空であるか判定を行う(S1204)。
上述の判定の結果、データノードリスト「l」が空でない場合(S1204:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1205)に進む。他方、上述の判定の結果、データノードリスト「l」が空の場合(S1204:No)、中間データ削除サーバ205の中間データ削除管理部702は処理を終了する。
上述のとおり、例えば図1において、起点データノード「n」が「データノード101」でループカウンタiが「5」の場合、取得されるデータノードのリストは「データノード101」からみて5階層目のデータノードであるが、該当するデータノードないのでデータリストは空となり、本処理が終了する。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、上述の処理(S1203)で取得したデータリスト「l」の各データノードについて、処理(S1206から処理(S1211)を行うループ処理(S1205)を実行する。
ここでは、ループ処理中で対象としているデータノードを「j」とする。また、データリスト「l」の全てのデータノードについて処理(S1206)から処理(S1211)が完了すると処理(S1212)に進むものとする。
ここで中間データ削除サーバ205の中間データ削除管理部702は、時間tにデータノード「j」のデータ生成時間を計算する処理関数の計算結果T1(j)を代入する(S1206)。ここでは、データノード「n」のデータ生成時間を計算する処理関数を「T1(n)」とする。
なお、データノード「n」のデータ情報生成時間を計算する処理関数「T1(n)」は、データノード「n」を起点データノードから再生成する場合にかかる時間を算出する関数である。この処理(S1206)の詳細については、図15で後述する。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、上述の処理(S1206)で得られた時間tが図13の処理(S1103)で取得した削除ポリシーの再生時間上限以下であるか判定を行う(S1207)。
上述の判定の結果、時間tが削除ポリシーの再生時間上限以下の場合(S1207:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1208)に進む。一方、上述の判定の結果、時間tが削除ポリシーの再生時間上限値より大きい場合(S1207:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1205)に進む。
本処理(S1207)により、中間データの再生時間が所定の時間以上かかるデータノードは、そのデータ再生に時間がかかり過ぎて分析者の利便性を低下させるため、中間データの削除対象から除外することを可能とする。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、データノード「j」のメタデータのデータサイズ値が処理(S1103)で取得した削除ポリシーのデータサイズ下限値以上であるか判定を行う(S1208)。
上述の判定の結果、データサイズ値がデータサイズ下限値以上の場合(S1208:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1209)に進む。
他方、上述の判定の結果、データサイズ値がデータサイズ下限値より小さい場合(S1208:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1205)に進む。
本処理(S1208)により、中間データのデータサイズが所定の大きさ以下であるデータノードは、当該中間データを削除しても削除効率が低いという方針のもとに、中間データの削除対象から除外することを可能とする。
次に、中間データ削除サーバ205の中間データ削除管理部702は、データノード「j」のメタデータにおけるデータへの最終アクセス時刻カラム1604の値が、処理(S1103)で取得した削除ポリシーの最終アクセス時間上限値を超過しているか判定を行う(S1209)。
上述の判定の結果、データへの最終アクセス時刻が、現在時刻から最終アクセス時間上限値を引いた値より以前の場合(S1209:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1210)に進む。
一方、上述の判定の結果、データへの最終アクセス時刻が、現在時刻から最終アクセス時間上限値を引いた値より以後の場合(S1209:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1205)に進む。
本処理(S1209)により、中間データへの最終アクセス時刻が所定の時間以上経過していないデータノードを、分析者が再度参照する可能性が高い中間データであるという方針のもと、中間データの削除対象から除外することを可能とする。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、データノード「j」のメタデータにおけるデータ生成時刻カラム1605の値が、処理(S1103)で取得した削除ポリシーの生成経過時間下限以上であるか判定を行う(S1210)。
上述の判定の結果、データ生成時刻値が、現在時刻から生成経過時間下限値を引いた値より以前の場合(S1210:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1211)に進む。
一方、上述の判定の結果、データ生成時刻値が、現在時刻から生成経過時間下限値を引いた値より以後の場合(S1210:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1205)に進む。
本処理(S1210)により、中間データのデータ生成時刻が所定の時間以上経過していないデータノードを、生成されて間もない中間データは分析者が利用する可能性が高いという方針のもと、中間データの削除対象から除外することを可能とする。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、これまでに選定した、データノード「j」の中間データの削除要求とデータノード「j」のメタデータの更新要求を、データ格納サーバ203のデータ取得・格納・削除受付部403に送信する(S1211)。この処理により、データストレージの使用容量を減らすことが可能となる。また、中間データ削除サーバ205の中間データ削除管理部702は、ループカウンタ「i」に「1」を加算する(S1212)。
ここで、図1のデータ分析経路概念図、図8Aのメタデータ記憶部412のテーブル、および図9の削除ポリシー記憶部711のテーブルを用いて、図14の動作フローの具体例について説明する。なお、ここで適用する削除ポリシーを削除ポリシー記憶部711のテーブルにおけるポリシーIDカラム1701が「ポリシー01」のレコードとする。また、図14の処理を実行した時刻を「2017/3/1 00:00」とする。
この場合、中間データ削除サーバ205の中間データ削除管理部702は、「起点データノード101」でループカウンタ「i」が「1」の時、処理(S1204)より「データノード121」を含むリスト「l」が取得される。
また、処理(S1206)にて「データノード121」の「中間データ122」のデータ情報生成時間は「33[min]」と算出される。「中間データ122」のデータ情報生成時間の「33[min]」が、上述で適用を想定した削除ポリシー(以下、適用ポリシー)の再生成時間上限カラム1705の値の「60[min]」より小さいので、処理(S1207)の判定にて処理(S1208)に進む。
また、「データノード121」のデータサイズカラム1602の値の「80[Gbyte]」が、上述の適用ポリシーのデータサイズ下限カラム1702の値の「1[Gbyte]」より大きいので、処理(S1208)の判定にて、処理(S1209)に進む。
また、「データノード121」のデータへの最終アクセス時刻カラム1604の値の「20161001−1003」と現在時刻とを比較して、適用ポリシーの最終アクセス時間下限カラム1703の値の「24*30*2[hour]」以上経過しているので、処理(S1209)の判定にて、処理(S1210に進む。
また、「データノード121」のデータ生成時刻カラム1605の値の「20160912−0342」と現在時刻とを比較して、適用ポリシーの生成経過時間下限カラム1704の値の「24*30[hour]」以上経過しているので、処理(S1210)の判定にて処理(S1211)に進み、処理(S1211)にて「データノード121」の「中間データ122」は削除される。
次に、「起点データノード101」でループカウンタ「i」が「2」の時、処理(S1204)より「データノード141」を含むリスト「l」が取得される。
処理(S1206)にて「データノード141」の「中間データ142」のデータ情報生成時間は「33+90=113[min]」と算出される。
「中間データ142」のデータ情報生成時間の「113[min]」が、適用ポリシーの再生成時間上限カラム1705の値の「60[min]」より大きいので、処理(S1207)の判定にて、処理(S1212)に進み、「中間データ142」は適用ポリシーに非該当となって削除対象から外れる。以降のデータノードについても、同処理により適用ポリシーに非該当となり削除対象から外れる。
よって本例では、図14の処理により、中間データノードのデータサイズ総量「80+110+90=280[Gbyte]」に対して、「80[Gbyte]」の中間データ
情報を所定の削除ポリシーに従って削除し、中間データを格納するための領域を約29%削減することが可能となる。
図15は、中間データ削除サーバ205の中間データ削除管理部702にて、順方向観点で該当中間データの生成時間を計算する動作フローの例である。図15の処理は、中間データ削除サーバ205の中間データ削除管理部702が処理主体となり実行する処理である。
この場合、まず中間データ削除サーバ205の中間データ削除管理部702は、データノード「n」の元データリストを取得する情報取得要求を、データ格納サーバ203のデータ取得・格納・削除受付部403に送信し、該当データノードのリストを取得する(S1301)。
ここでは、取得されたデータノードのリストを「l」とする。例えば、図1において、データノード「n」が「データノード121」の場合、取得される元データリストは「データノード101」を含む。同様に、データノード「n」が「データノード141」の場合、取得される元データリストは「データノード121」と「データノード131」とを含む。データノード「n」が「データノード151」の場合、取得される元データリストは「データノード141」を含む。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、上述の処理(S1301)で取得したデータリスト(l)の各データノードについて、処理(S1303)から処理(S1306)を行うループ処理(S1302)を実行する。
ここでは、ループ処理中で対象としているデータノードを「k」とする。データリスト「l」の全てのデータノードについて処理(S1303)から処理(S1306)が完了すると処理(S1307)に進む。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、データノード「k」が起点データノードでないか判定を行う(S1303)。この判定の結果、データノード「k」が起点データノードでない場合(S1303:Yes)、処理(S1304)に進む。一方、上述の判定の結果、データノード「k」が起点データノードである場合(S1303:No)、処理(S1302)に進む。
この起点データノードの判定には、図8Aのメタデータ記憶部412におけるテーブルの生成用データIDカラム1608の値を用いる。メタデータ記憶部412におけるテーブルの生成用データIDカラム1608の値がない場合、該当データノードは起点データノードである。一方、メタデータ記憶部412におけるテーブルの生成用データIDカラム1608の値がある場合、該当データノードは起点データノードでない。
例えば、図1の「データノード101」は起点データノードであることを示し、図8Aのメタデータ記憶部412のテーブルにおいて、「データノード101」の生成用データIDカラム1608には値がない。同様に、図1の「データノード102」は起点データノードを示し、図8Aのメタデータ記憶部412のテーブルにおいて、「データノード102」の生成用データIDカラム1608には値がない。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、データノード「k」に中間データが存在するか判定を行う(S1304)。この判定の結果、データノード「k」に中間データが存在する場合(S1304:Yes)、処理(S1305)に進む。他方、データノード「k」に中間データが存在しない場合(S1304:No)、
処理(S1302)進む。
この中間データの存在判定には、メタデータ記憶部412におけるテーブルのデータ格納パスカラム1303の値を用いる。メタデータ記憶部412におけるテーブルのデータ格納パスカラム1303に値がある場合、該当データノードの中間データは存在し、メタデータ記憶部412におけるテーブルのデータ格納パスカラム1303に値がない場合、該当データノードの中間データは存在しない。
例えば、図1の「データノード122」は中間データがないことを示し、図8Aにおいて「データノード122」のデータ格納パスカラム1303には値がない。同様に、図1の「データノード142」は中間データがないことを示し、図8Aにおいて「データノード142」のデータ格納パスカラム1303には値がない。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、時間tにデータノード「k」のメタデータのデータ生成時間を加算する(S1305)。
また、中間データ削除サーバ205の中間データ削除管理部702は、時間tに、データノード「k」のデータ情報生成時間を計算する処理関数の計算結果「T1(k)」を加算する(S1306)。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、時間tに、データノード「n」のメタデータのデータ生成時間を加算する(S1307)。
また、中間データ削除サーバ205の中間データ削除管理部702は、データ生成時間Trに、ここまで算定してきた時間tの値を代入する(S1308)。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、上述の計算で得られたデータ生成時刻Trを関数の呼び元に返却(S1309)し、処理を終了する。
図16は、本実施形態の中間データ削除サーバ205の中間データ削除管理部702にて、指定された終端データノードを始点として探索を実行して、削除対象の中間データを選定し、選定した中間データの削除要求とそのメタデータの更新要求とをデータ格納サーバ203に送信する、一連の動作フローの例を示す図である。なお、図16の処理は、中間データ削除サーバ205の中間データ削除管理部702が処理主体となり実行する処理である。ここでは、中間データの削除対象探索において始点となる終端データノードを「n」とする。
この場合まず、中間データ削除サーバ205の中間データ削除管理部702は、ループカウンタiに1を代入する(S1401)。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、後述する処理(S1404)の条件が成立するまで、処理(S1403)から処理(S14112)を繰り返し行うループ処理を実行する(S1402)。
また、中間データ削除サーバ205の中間データ削除管理部702は、終端データノード「n」から見てループカウンタi番目の階層のデータノードのリストを取得する情報取得要求を、データ格納サーバ203のデータ取得・格納・削除受付部403に送信し、該当データノードのリストを取得する(S1403)。ここでは、取得されたデータノードのリストを「l」とする。
例えば、図1において、終端データノード「n」が「データノード151」でループカウンタiが「1」の場合、取得されるデータノードのリストは「データノード151」か
らみて1階層目のデータノードである「データノード141」となる。同様に、終端データノード「n」が「データノード151」でループカウンタiが「2」の場合、取得されるデータノードのリストは「データノード151」からみて2階層目のデータノードである「データノード121」と「データノード131」とを含む。終端データノード「n」が「データノード151」でループカウンタiが「3」の場合、取得されるデータノードのリストは「データノード151」からみて3階層目のデータノードである「データノード101」と「データノード111」とを含む。終端データノード「n」が「データノード151」でループカウンタiが「4」の場合、取得されるデータノードのリストは「データノード151」からみて4階層目のデータノードであるが該当するデータノードないのでデータリストは空となる。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、データノードリスト「l」が空であるか判定を行う(S1404)。この判定の結果、データノードリスト「l」が空でない場合(S1404:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1405に進む。
一方、上述の判定の結果、データノードリスト「l」が空の場合(S1404:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理を終了する。
上述の通り、例えば図1において、終端データノード「n」が「データノード151」でループカウンタiが「5」の場合、取得されるデータノードのリストは「データノード151」からみて5階層目のデータノードであるが該当するデータノードないのでデータリストは空となり、本処理が終了する。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、上述の処理(S1403)で取得したデータリスト「l」の各データノードについて、処理(S1406)から処理(S1411)を行うループ処理(S1405)を実行する。ここでは、ループ処理中で対象としているデータノードを「j」とする。
データリスト「l」の全てのデータノードについて処理(S1406)から処理(S1411)が完了すると処理(S1412)に進む。
次に、中間データ削除サーバ205の中間データ削除管理部702は、時間tに、データノード「j」のデータ情報生成時間を計算する処理関数の計算結果T2(j)を代入する(S1406)。
ここでは、データノード「n」のデータ情報生成時間を計算する処理関数を「T2(n)」とする。データノード「n」のデータ情報生成時間を計算する処理関数「T2」は、データノード「n」を終端データノードから再生成する場合にかかる推定時間を算出する関数である。こうした処理(S1406)の詳細については、図17で後述する。
次に、中間データ削除サーバ205の中間データ削除管理部702は、上述の処理(S1406)で得られた時間tが、図13の処理(S1103)で取得した削除ポリシーにおけるデータ再生時間下限値以下であるか判定する(S1407)。
上述の判定の結果、時間tが削除ポリシーのデータ再生時間下限値以下の場合(S1407:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1408)に進む。
一方、上述の判定の結果、時間tが削除ポリシーのデータ再生時間下限値より大きい場合(S1407:No)、中間データ削除サーバ205の中間データ削除管理部702は
、処理(S1405)に進む。
本処理(S1407)により、中間データの再生時間が所定の時間以上かかるデータノードを、データ再生に時間がかかり過ぎるため分析者の利便性を低下させるという方針のもと、中間データの削除対象から除外することを可能とする。
次に、中間データ削除サーバ205の中間データ削除管理部702は、データノード「j」のメタデータのデータサイズ値が、処理(S1103)で取得した削除ポリシーにおけるデータサイズ下限値以上であるか判定する(S1408)。
上述の判定の結果、データサイズ値がデータサイズ下限値以上の場合(S1408:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1409)に進む。
他方、上述の判定の結果、データサイズ値がデータサイズ下限値より小さい場合(S1408:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1405)に進む。
本処理(S1408)により、中間データのデータサイズが所定の大きさ以下であるデータノードを、中間データの削除を行っても削除効率が低いという方針のもとに、中間データの削除対象から除外することを可能とする。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、データノード「j」のメタデータにおける最終アクセス時刻値が、処理(S1103)で取得した削除ポリシーにおけるデータへの最終アクセス時間上限値より経過しているか判定する(S1409)。
上述の判定の結果、最終アクセス時刻値が、現在時刻からデータへの最終アクセス時間上限値を引いた値より以前の場合(S1409:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1410)に進む。
他方、上述の判定の結果、データへの最終アクセス時刻値が、現在時刻からデータへの最終アクセス時間上限値を引いた値より以後の場合(S1409:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1405)に進む。
本処理(S1409)により、中間データへの最終アクセス時刻が所定の時間以上経過していないデータノードを、分析者が再度参照する可能性が高いという方針のもと、中間データの削除対象から除外することを可能とする。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、データノード「j」のメタデータのデータ生成時刻値が、処理(S1103)で取得した削除ポリシーにおける生成経過時間下限以上であるか判定を行う(S1410)。
上述の判定の結果、データ生成時刻値が、現在時刻から生成経過時間下限を引いた値より以前の場合(S1410:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1411)に進む。
他方、上述の判定の結果、データ生成時刻値が、現在時刻から生成経過時間下限を引いた値より以後の場合(S1410:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理(S1405)に進む。
本処理(S1410)により、中間データのデータ生成時刻が所定の時間以上経過していないデータノードを、生成されて間もない中間データは分析者が利用する可能性が高いという方針のもと、中間データの削除対象から除外することを可能とする。
次に、中間データ削除サーバ205の中間データ削除管理部702は、データノード「j」の中間データの削除要求とデータノード「j」のメタデータの更新要求とを、データ格納サーバ203のデータ取得・格納・削除受付部403に送信する(S1411)。この処理により、データストレージの使用容量を減らすことが可能となる。また、ループカウンタ「i」に「1」を加算する(S1412)。
ここで、図1のデータ分析経路概念図、図8Aのメタデータ記憶部412におけるテーブル、および図9の削除ポリシー記憶部711のテーブルを用いて、図16の動作フローの具体例について説明する。ここで適用する削除ポリシー(以下、適用ポリシー)を削除ポリシー記憶部711におけるテーブルのポリシーIDカラム1701が「ポリシー01」のレコードとし、また、図16の処理を実行した時刻を「2017/3/1 03:00」とする。
この場合、「終端データノード151」でループカウンタiが「1」の時、処理(S1403)より「データノード141」を含むリスト「l」が取得される。
処理(S1406)にて「データノード141」の「中間データ142」の生成時間は「77*0.25≒19[min]」と算出される。「中間データ142」の生成時間の「」19[min]」が適用ポリシーの再生成時間上限カラム1705の値の「60[min]」より小さいので、処理(S1407)の判定にて処理(S1408)に進む。
また、「データノード141」のデータサイズカラム1602の値の「90[Gbyte]」が、適用ポリシーのデータサイズ下限カラム1702の値の「1[Gbyte]」より大きいので、処理(S1408)の判定にて処理(S1409)に進む。
また、「データノード141」の最終アクセス時刻カラム1604の値の「20161206−1608」と現在時刻とを比較して適用ポリシーの最終アクセス時間下限カラム1703の値の「24*30*2[hour]」以上経過しているので、処理(S1409)の判定にて処理(S1410)に進む。
また、「データノード141」のデータ生成時刻カラム1605の値の「20160913−0759」と現在時刻とを比較して、適用ポリシーの生成経過時間下限カラム1704の値の「24*30[hour]」以上経過しているので、処理(S1410)の判定にて処理(S1411)に進み、処理(S1411)にて「データノード141」の「」中間データ142」は削除実行される。
次に、「終端データノード151」でループカウンタiが「2」の時、処理(S1403)より「データノード121」と「データノード131」とを含むリスト「l」が取得される。処理(S1406)にて、「データノード121」の「中間データ122」のデータ情報生成時間は「−1[min]」と算出される。
「中間データ122」のデータ情報生成時間の「−1[min]」が、適用ポリシーの再生成時間上限カラム1705の値の「60[min]」より小さいので、処理(S1407)の判定にて処理(S1405)に進む。また、「中間データ122」は適用ポリシーに非該当となり削除対象から外れる。以降のデータノードについても、同処理により適用ポリシーに非該当となり削除対象から外れる。
よって本例では、上述の図14および図16の処理により、中間データノードのデータサイズ総量「80+110+90=280[Gbyte]」に対して「80+90=110[Gbyte]」の中間データを所定の削除ポリシーに従って削除し、中間データを格納するための領域を約61%削減することが可能となる。
図16の終端データノードから削除対象の中間データを探索する処理により、図14の処理のみと比較して中間データを格納するための領域をより削減することが可能となる。
図17は、本実施形態の中間データ削除サーバ205の中間データ削除管理部702にて、逆方向観点で該当中間データの再生成推定時間を計算する動作フローの例である。図17の処理は、中間データ削除サーバ205の中間データ削除管理部702が処理主体となり実行する処理である。
この場合まず、中間データ削除サーバ205の中間データ削除管理部702は、データ生成時間Trに初期値の「−1」を代入する(S1501)。
また、中間データ削除サーバ205の中間データ削除管理部702は、データノード「n」を元データノードとするデータノードのリストを取得する、情報取得要求をデータ格納サーバ203のデータ取得・格納・削除受付部403に送信し、該当データノードのリストを取得する(S1502)。ここでは、取得されたデータノードのリストを「l」とする。
例えば、図1において、データノード「n」が「データノード141」の場合、「データノード141」を元データノードとしている「データノード151」が該当するため、取得されるデータリストは「データノード151」を含む。
同様に、データノード「n」が「データノード121」の場合、「データノード121」を元データノードとしている「データノード141」が該当するため、取得されるデータリストは「データノード141」を含む。データノード「n」が「データノード101」の場合、「データノード101」を元データノードとしている「データノード121」が該当するため、取得されるデータリストは「データノード121」を含む。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、上述の処理S1502で取得したデータリスト「l」の各データノードについて、処理S1504から処理S1512を行うループ処理(S1503)を実行する。ここでは、ループ処理中で対象としているデータノードを「k」とする。データリスト「l」の全てのデータノードについて処理S1504から処理S1512が完了すると処理S1513に進む。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、データノード「k」のデータ逆変換生成推定時間が負でないか判定を行う(S1504)。
上述の判定の結果、データノード「k」のデータ逆変換生成推定時間が負でない場合(S1504:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理S1505に進む。
一方、上述の判定の結果、データノード「k」のデータ逆変換生成推定時間が負の場合(S1504:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理S1503に進む。
データノードのデータ逆変換生成推定時間の値は、図8Aのメタデータ記憶部412におけるテーブルのデータ逆変換生成推定時間カラム1607の値を用いる。メタデータ記憶部412におけるテーブルのデータ逆変換生成推定時間カラム1607の値が負の場合、該当中間データは、一旦失われると元の中間データへの逆変換、すなわち再生成が不可であることを示す。一方、メタデータ記憶部412におけるテーブルのデータ逆変換生成推定時間カラム1607の値が負でない場合、該当中間データは元のデータ情報へ逆変換が可能、すなわち再生成可能であることを示す。
例えば、図8Aにおいて「データノード151」のデータ逆変換生成推定時間は「77*0.25[hour]」で負の値でないので、この「データノード151」の「分析結果152」から「分析結果152」の元データ情報である「データノード141」の「中間データ142」へ逆変換が可能であることを示す。
一方、図8Aにおいて「データノード141」のデータ逆変換生成水時間は「−1」で負の値であるので、この「データノード141」の「中間データ142」から、「中間データ142」の元データ情報である「データノード121」の「中間データ122」および「データノード131」の「中間データ132」への逆変換は不可であることを示す。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、時間tに、データノード「k」のメタデータのデータ逆変換生成推定時間を加算する(S1505)。
また、中間データ削除サーバ205の中間データ削除管理部702は、データノード「k」が終端データノードでないか判定を行う(S1506)。
上述の判定の結果、データノード「k」が終端データノードでない場合(S1506:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理S1507に進む。
他方、上述の判定の結果、データノード「k」が終端データノードである場合(S1506:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理S1512に進む。
なお、上述の終端データノードの判定には、図8Bの生成用データ記憶部511におけるテーブルの元データリストカラム1610の値を用いる。生成用データ記憶部511のテーブルの元データリストカラム1610に元データノードとして登録されていない場合、該当データノードは終端データノードである。一方、生成用データ記憶部511におけるテーブルの元データリストカラム1610に元データノードとして登録されている場合、該当データノードは終端データノードでない。
例えば、図1の「データノード151」は終端データノードであることを示し、図8Bの生成用データ記憶部511におけるテーブルにて「データノード151」は元データノードとして登録さていない。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、データノード「k」に中間データが存在するか判定を行う(S1507)。
この判定の結果、データノード「k」に中間データが存在しない場合(S1507:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理S1508に進む。
他方、上述の判定の結果、データノード「k」に中間データが存在する場合(S150
7:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理S1512に進む。
また、中間データ削除サーバ205の中間データ削除管理部702は、時間t’に、データノード「k」のデータ情報生成時間を計算する処理関数の計算結果「T2(k)」を代入する(S1508)。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、時間t’が0より大きい値であるか判定を行う(S1509)。
上述の判定の結果、時間t’が0より大きい値の場合(S1509:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理S1510に進む。
他方、上述の判定の結果、時間t’が0以下の値である場合(S1509:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理S1503に進む。
次に、中間データ削除サーバ205の中間データ削除管理部702は、データ生成時間候補Tr’に、時間tと時間t’とを加算する(S1510)。
また、中間データ削除サーバ205の中間データ削除管理部702は、データ生成時間候補Tr’に、時間tを代入する(S1511)。
続いて、中間データ削除サーバ205の中間データ削除管理部702は、データ生成時間Trが0より小さい値か、またはデータ生成時間Trがデータ生成時間候補Tr’より大きい値かの判定を行う(S1512)。
上述の判定の結果、データ生成時間Trが0より小さい値か、またはデータ生成時間Trがデータ生成時間候補Tr’より大きい値の場合(S1512:Yes)、中間データ削除サーバ205の中間データ削除管理部702は、処理S1513に進む。
上述の判定の結果、それ以外の場合(S1512:No)、中間データ削除サーバ205の中間データ削除管理部702は、処理S1503に進む。
また、中間データ削除サーバ205の中間データ削除管理部702は、データ生成時間Trに、データ生成時間候補Tr’の値を代入する(S1513)。
また、中間データ削除サーバ205の中間データ削除管理部702は、ここまでの計算で得られたデータ生成時刻Trを関数の呼び元に返却し(S1514)、処理を終了する。
なお、中間データの復元、すなわち再生成は、例えば、データ格納サーバ203、データ分析サーバ204、中間データ削除サーバ205、および、データ分析表示サーバ206のいずれかが、復元対象としてデータ分析表示クライアント207から指定された中間データに関して、その生成に利用された元データたる中間データないし分析データを、生成用データ記憶部511の元データリストカラム1610で特定し、この元データに対し、対応する処理アルゴリズムカラム1611の値が示すアルゴリズムを、順方向データ生成パラメータカラム1612ないし逆方向データ生成パラメータカラム1613の値が示すパラメータと共に適用することで実行できる。
以上、本発明を実施するための最良の形態などについて具体的に説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
こうした本実施形態によれば、中間データの効果的な削除によるデータストレージの利用低減を図るとともに、一旦削除した中間データであっても以降の再生成が可能となる。
この中間データ削除に際しては、削除対象となる中間データを、分析処理に対する影響の良否といった観点で適宜に選定するため、上述のデータストレージの利用効率改善と、分析処理の効率改善とを両立しうることとなる。このことは、従来と比較して単位時間あたりに実行可能な分析の試行回数を増大させることにつながり、短時間の分析により、分析者の望む良好な分析結果を導くことが期待できる。また上述のような各効果は、分析用リソースの効率化につながるため、そうした分析システムの導入・運用のコスト低減にもつながりうる。
すなわち、中間データの効果的な管理を図り、ひいては当該中間データを用いる分析処理の効率等を良好なものとできる。
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち、本実施形態の中間データ管理システムにおいて、前記記憶装置は、前記中間データの削除ポリシーを更に格納しており、前記演算装置は、前記メタデータおよび前記生成用データを前記削除ポリシーに適用して、削除すべき中間データを選定し、当該中間データの削除処理を実行するものである、としてもよい。
これによれば、上述の削除ポリシーに従って、削除対象の中間データの選定を効率的かつ精度良好に行うことができる。
また、本実施形態の中間データ管理システムにおいて、前記記憶装置は、前記中間データの削除ポリシーとして、データサイズ、最終アクセス時期、生成からの経過時間、および、データ復元に要する時間、の少なくともいずれかの項目に関する規定情報を格納しており、前記演算装置は、前記メタデータおよび前記生成用データを前記削除ポリシーに適用して、前記規定情報にマッチする中間データを、削除すべき中間データとして選定し、当該中間データの削除処理を実行するものである、としてもよい。
これによれば、削除対象となる中間データとして、データサイズが規定以下、最終アクセス時期が相応に古く利用頻度が少ない、生成からの経過時間が相応に長く古い、および、データ復元に相応の時間を要する、といった存在意義が低いと認識しうる中間データを精度良くかつ効率良く選定可能となる。
また、本実施形態の中間データ管理システムにおいて、前記演算装置は、所定の中間データに関する、前記分析データ、前記メタデータ、および、前記生成用データに基づいて、当該中間データの復元処理を更に実行するものである、としてもよい。
これによれば、一旦削除した中間データであっても、後に必要となった時点で復元が可能となり、当該中間データを用いた分析処理をあらためて行うことも可能となる。
また、本実施形態の中間データ管理方法において、前記情報処理システムが、前記記憶装置において、前記中間データの削除ポリシーを更に格納して、前記メタデータおよび前記生成用データを前記削除ポリシーに適用して、削除すべき中間データを選定し、当該中間データの削除処理を実行する、としてもよい。
また、本実施形態の中間データ管理方法において、前記情報処理システムが、前記記憶装置において、前記中間データの削除ポリシーとして、データサイズ、最終アクセス時期、生成からの経過時間、および、データ復元に要する時間、の少なくともいずれかの項目に関する規定情報を格納して、前記メタデータおよび前記生成用データを前記削除ポリシーに適用して、前記規定情報にマッチする中間データを、削除すべき中間データとして選定し、当該中間データの削除処理を実行する、としてもよい。
また、本実施形態の中間データ管理方法において、前記情報処理システムが、所定の中
間データに関する、前記分析データ、前記メタデータ、および、前記生成用データに基づいて、当該中間データの復元処理を更に実行する、としてもよい。