(57)【要約】【課題】データ分析処理の設計や開発を支援しデータ分析処理におけるデータ分析者等のユーザの負担を軽減する。【解決手段】データ分析処理支援装置は、データアクセス処理、データ分析処理、及び分析結果可視化処理の各処理を実行することにより行われるデータ分析において、上記各処理の間で共通に用いられる変数の設定情報を含む分析処理設定情報と、上記各処理の内容に関する情報である基本情報、上記各処理を実現するプログラムのテンプレートを生成する際のベースとなるプログラムコード、上記分析処理設定情報の変数、及び上記処理間で相互参照する変数に関する記述を含む上記各処理の夫々に対応するプラグインと、を記憶し、上記分析処理設定情報と上記各処理の夫々に対応する上記プラグインとの関係性又は整合性を担保しつつ上記テンプレートを生成する。【選択図】図１１
2019040287.tif 000002
【特許請求の範囲】
【請求項１】
データアクセス処理、データ分析処理、及び分析結果可視化処理の各処理を実行することにより行われるデータ分析を支援するデータ分析処理支援装置であって、
プロセッサ及び記憶装置を有し、
前記各処理の間で共通に用いられる変数の設定情報を含む分析処理設定情報と、前記各処理の内容に関する情報である基本情報、前記各処理を実現するプログラムのテンプレートを生成する際のベースとなるプログラムコード、前記分析処理設定情報の前記変数、及び前記各処理の間で相互参照する変数に関する記述を含む、前記各処理の夫々に対応するプラグインと、を記憶する記憶部と、
前記分析処理設定情報と前記各処理の夫々に対応する前記プラグインとの関係性又は整合性を担保しつつ前記テンプレートを生成する、実行情報生成部と、
を備える、データ分析処理支援装置。
【請求項２】
請求項１に記載のデータ分析処理支援装置であって、
入出力装置を有し、
前記実行情報生成部は、不正箇所や前記各処理の間の不整合に関する情報をユーザに提示しつつ行われる前記入出力装置を介した対話方式で前記分析処理設定情報と前記各処理の夫々に対応する前記プラグインとの関係性又は整合性を担保する、
データ分析処理支援装置。
【請求項３】
請求項１に記載のデータ分析処理支援装置であって、
前記分析処理設定情報は、前記プラグインを特定する情報と前記情報で特定されるプラグインで用いられる変数の設定情報とを含む、
データ分析処理支援装置。
【請求項４】
請求項１に記載のデータ分析処理支援装置であって、
前記プラグインは、前記テンプレートが参照するライブラリに関する記述、前記分析処理設定情報と前記各処理の夫々に対応するプラグインとの間で満たすべきルールに関する記述、前記テンプレートを生成する際のオプション情報に関する記述、前記テンプレートの入出力引数の仕様に関する記述、のうちの少なくともいずれかの記述を含む、
データ分析処理支援装置。
【請求項５】
請求項４に記載のデータ分析処理支援装置であって、
前記プログラムコードは、前記分析処理設定情報に記述されている変数、前記分析処理設定情報に指定されている夫々のプラグインで設定されている変数、及び前記プラグインに記述されている前記ルールから取得される変数、のうちの少なくともいずれかを参照する記述を含む、
データ分析処理支援装置。
【請求項６】
請求項２に記載のデータ分析処理支援装置であって、
前記実行情報生成部は、前記プラグインと前記プラグインが参照するプログラムライブラリとの整合性をユーザに提示しつつ行われる前記対話方式で前記分析処理設定情報と前記各処理の夫々に対応する前記プラグインとの整合性を担保する、
データ分析処理支援装置。
【請求項７】
請求項１に記載のデータ分析処理支援装置であって、
前記各処理の夫々に対応する各プラグインは共通の記法に従って記述されている、
データ分析処理支援装置。
【請求項８】
請求項１に記載のデータ分析処理支援装置であって、
前記分析処理設定情報は、前記テンプレートの配布先の所在を示す情報を含み、
前記実行情報生成部は、前記テンプレートを前記配布先に配信する処理を実現するためのコードを生成する、
データ分析処理支援装置。
【請求項９】
請求項８に記載のデータ分析処理支援装置であって、
前記実行情報生成部は、前記配布先に配信された前記テンプレートを前記配布先において順に実行させる処理を実現するためのコードを生成する、
データ分析処理支援装置。
【請求項１０】
データアクセス処理、データ分析処理、及び分析結果可視化処理の各処理を実行することにより行われるデータ分析を支援する方法であって、
情報処理装置が、
前記各処理の間で共通に用いられる変数の設定情報を含む分析処理設定情報と、前記各処理の内容に関する情報である基本情報、前記各処理を実現するプログラムのテンプレートを生成する際のベースとなるプログラムコード、前記分析処理設定情報の前記変数、及び前記各処理の間で相互参照する変数に関する記述を含む、前記各処理の夫々に対応するプラグインと、を記憶するステップと、
前記分析処理設定情報と前記各処理の夫々に対応する前記プラグインとの関係性又は整合性を担保しつつ前記テンプレートを生成するステップと、
を実行する、データ分析処理支援方法。
【請求項１１】
請求項１０に記載のデータ分析処理支援方法であって、
前記情報処理装置が、不正箇所や前記各処理の間の不整合に関する情報をユーザに提示しつつ行われる、入出力装置を介した対話方式で前記分析処理設定情報と前記各処理の夫々に対応する前記プラグインとの関係性又は整合性を担保するステップを更に実行する、
データ分析処理支援方法。
【請求項１２】
請求項１０に記載のデータ分析処理支援方法であって、
前記分析処理設定情報は、前記プラグインを特定する情報と前記情報で特定されるプラグインで用いられる変数の設定情報とを含む、
データ分析処理支援方法。
【請求項１３】
請求項１０に記載のデータ分析処理支援方法であって、
前記プラグインは、前記テンプレートが参照するライブラリに関する記述、前記分析処理設定情報と前記各処理の夫々に対応するプラグインとの間で満たすべきルールに関する記述、前記テンプレートを生成する際のオプション情報に関する記述、前記テンプレートの入出力引数の仕様に関する記述、のうちの少なくともいずれかの記述を含む、
データ分析処理支援方法。
【請求項１４】
請求項１３に記載のデータ分析処理支援方法であって、
前記プログラムコードは、前記分析処理設定情報に記述されている変数、前記分析処理設定情報に指定されている夫々のプラグインで設定されている変数、及び前記プラグインに記述されている前記ルールから取得される変数、のうちの少なくともいずれかを参照する記述を含む、
データ分析処理支援方法。
【請求項１５】
請求項１１に記載のデータ分析処理支援方法であって、
前記情報処理装置が、前記プラグインと前記プラグインが参照するプログラムライブラリとの整合性をユーザに提示しつつ行われる前記対話方式で前記分析処理設定情報と前記各処理の夫々に対応する前記プラグインとの整合性を担保するステップを更に実行する、
データ分析処理支援方法。
【請求項１６】
請求項１０に記載のデータ分析処理支援方法であって、
前記各処理の夫々に対応する各プラグインは共通の記法に従って記述されている、
データ分析処理支援方法。
【請求項１７】
請求項１０に記載のデータ分析処理支援方法であって、
前記分析処理設定情報は、前記テンプレートの配布先の所在を示す情報を含み、
前記情報処理装置が、前記テンプレートを前記配布先に配信する処理を実現するためのコードを生成するステップを更に実行する、
データ分析処理支援方法。
【請求項１８】
請求項１７に記載のデータ分析処理支援装置であって、
前記分析処理設定情報は、前記配布先に配信された前記テンプレートを前記配布先において順に実行させる処理を実現するためのコードを生成するステップを更に実行する、
データ分析処理支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ分析処理支援装置、及びデータ分析処理支援方法に関する。
【背景技術】
【０００２】
特許文献１には、「情報処理システムは、異なるデータ項目の対応したデータが夫々格納された複数のデータベースと、データを入出力するための入出力手段と、前記入出力手段で入力された１つもしくは複数のデータ項目に対応するデータが格納された夫々のデータベースに対して、夫々接続可能な１つもしくは複数の接続用モジュールを生成し、生成モジュールを前記入出力手段に出力する接続用モジュール生成手段と、前記接続用モジュール生成手段で生成された各接続用モジュールを用いて前記データベースに接続し、当該各接続用モジュールによって取得された情報から、前記データ項目に対応した所望の情報を抽出する情報抽出処理機能を、コンピュータに与えるためのデータ取得用プログラムを生成して、生成プログラムを前記入出力手段に出力するプログラム生成手段と、を備えたものである。」、「分散化されたデータベースに対して、データ利用者が所望のデータを自由に取得できるとともに、データ利用者に高度なデータ処理スキルがなくても、データ利用者が取得データに所望の加工処理を行い、データ利用者が所望のデータを自在に利用することができる。」と記載されている。
【０００３】
特許文献２には、「各種業務における業務分析を効率的に実施する。」、「各種業務を実行する基幹システムにおける各種業務の分析を行う業務分析システムにおいて、基幹システムが有する各種データを抽出し、抽出されたデータを記憶保持するデータベースを有したＤＢテンプレートと、各種業務の分析に必要なデータの収集指示をＤＢテンプレートに指示し、各種業務の分析メニューを表示し、操作指定された分析に対する分析指示を出力する業務分析テンプレートと、業務分析テンプレートから入力された分析指示に基づいてＤＢテンプレートから指示された分析に必要なデータを検索し、検索されたデータを用いて指示された分析を実行し、実行された分析の分析結果を出力する分析結果出力手段とを有するＯＬＡＰテンプレートとを備えている。」と記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２７５９１３号公報
【特許文献２】特開２０００−２８５１２８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＩｏＴデータやビッグデータ等の膨大な量のデータを分析することによりコスト削減や新規サービスの立案等の価値を創出する取り組みが様々な分野で行われている。こうした業務に携わるデータ分析者には、サイエンスやビジネスに関する知識に加え、データの取得や加工等のエンジニアリングに関する知識も要求される。
【０００６】
一般にデータの分析に必要な処理（以下、データ分析処理と称する。）は、ファイルシステム、データレイク、データウェアハウス（ＤＷＨ）等のデータへのアクセスに関するする処理（以下、データアクセス処理と称する。）、分析対象となるデータを分析する処理（以下、データ分析処理と称する。）、データ分析処理によって出力される分析結果を可視化する処理（以下、分析結果可視化処理と称する。）が含まれる。データ分析者は、これらの処理の実現に用いられるソフトウェア（ＯＳＳ（Open Source Software）や商用等）やサービスを組み合わせてデータ分析処理の設計や開発を行うため、多様なソフトウェアやサービスを理解した上で作業を進める必要があり、ソフトウェアやサービスの間の整合性をとることに多大な労力と時間を強いられている。
【０００７】
上記の特許文献１、２はいずれもデータ分析における効率化に関するものであるが、データ分析処理を構成するデータアクセス処理、データ分析処理、分析結果可視化処理の各処理の間の相互の関係性や整合性を担保しつつデータ分析者の負担を軽減する仕組みは開示されていない。
【０００８】
本発明はこうした背景に鑑みてなされたものであり、データ分析処理の設計や開発を支援してデータ分析処理を効率よく進めることを可能とする、データ分析処理支援装置、及びデータ分析処理支援方法を提供することを目的としている。
【課題を解決するための手段】
【０００９】
本発明の一つは、データアクセス処理、データ分析処理、及び分析結果可視化処理の各処理を実行することにより行われるデータ分析を支援するデータ分析処理支援装置であって、プロセッサ及び記憶装置を有し、前記各処理の間で共通に用いられる変数の設定情報を含む分析処理設定情報と、前記各処理の内容に関する情報である基本情報、前記各処理を実現するプログラムのテンプレートを生成する際のベースとなるプログラムコード、前記分析処理設定情報の前記変数、及び前記各処理の間で相互参照する変数に関する記述を含む、前記各処理の夫々に対応するプラグインと、を記憶する記憶部と、前記分析処理設定情報と前記各処理の夫々に対応する前記プラグインとの関係性又は整合性を担保しつつ前記テンプレートを生成する、実行情報生成部と、を備える。
【００１０】
その他、本願が開示する課題、及びその解決方法は、発明を実施するための形態の欄、及び図面により明らかにされる。
【発明の効果】
【００１１】
本発明によれば、データ分析者等のユーザはデータ分析処理を効率よく進めることが可能になる。
【００１２】
上記した以外の課題、構成、及び効果については以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【００１３】
【図１】情報処理システムの概略的な構成を示す図である。
【図２】データ分析装置の主な構成を説明する図である。
【図３】分析結果可視化装置の主な構成を説明する図である。
【図４】データ管理装置の主な構成を説明する図である。
【図５】データ分析処理支援装置の主な構成を説明する図である。
【図６】分析処理設定情報の例である。
【図７】分析プラグインの例である。
【図８】可視化プラグインの例である。
【図９】データアクセスプラグインの例である。
【図１０】データアクセスプラグインの例である。
【図１１】実行情報生成処理を説明するデータフロー図である。
【図１２】実行情報生成処理を説明するフローチャートである。
【図１３】実行情報生成処理を説明するフローチャートである。
【図１４】分析処理開発画面の例である。
【発明を実施するための形態】
【００１４】
以下、実施形態につき図面を参照しつつ説明する。以下の説明において、同一又は類似する構成に同一の符号を付して重複した説明を省略することがある。またデータベースのことを「ＤＢ」と表記することがある。またプログラムのことを「ＰＧ」と表記することがある。また以下の説明において「セット」という場合は同種の情報の集合を意味するものとする。
【００１５】
図１に実施形態として示す情報処理システム１の概略的な構成を示している。同図に示すように、情報処理システム１は、ＩｏＴデータやビッグデータ等のデータ（以下、分析対象データと称する。）を分析するシステム（以下、データ分析システム１０１と称する。）と、データ分析システム１０１を用いたデータ分析に関する処理（以下、データ分析処理と称する。）の設計や開発を支援するデータ分析処理支援装置１０６と、ユーザが操作する装置であるユーザ装置１０７とを含む。データ分析システム１０１は、データ分析装置１０２、分析結果可視化装置１０３、及びデータ管理装置１０４を含む。データ分析装置１０２、分析結果可視化装置１０３、データ管理装置１０４、データ分析処理支援装置１０６、及びユーザ装置１０７は、いずれも情報処理装置（コンピュータ）である。
【００１６】
データ分析装置１０２、分析結果可視化装置１０３、データ管理装置１０４、データ分析処理支援装置１０６、及びユーザ装置１０７は、通信ネットワーク５を介して通信可能に接続されている。通信ネットワーク５は、例えば、有線または無線のＬＡＮ（Local Area Network）、ＷＡＮ（Wide Area Network）、インターネット、イントラネット、専用線等である。
【００１７】
データ分析処理支援装置１０６は、データ分析装置１０２、分析結果可視化装置１０３、及びデータ管理装置１０４の夫々に保持されるプログラムや設定情報の設計や開発を支援する。
【００１８】
データ分析装置１０２は、データ管理装置１０４から取得される分析対象データを入力としてデータ分析処理を実行し、その結果生成されるデータ(以下、分析結果データと称する。）をデータ管理装置１０４及び分析結果可視化装置１０３に送信する。分析対象データは、例えば、インターネットからウェブスクレイピング（Web scraping）等の技術により取得されたデータ、ＳＮＳ（Social Networking Service）から取得されたデータ、センサ等から収集したＩｏＴデータ、ＰＯＳ（point of sale）データ、機械学習用のデータ、アンケートデータ、ビックデータ等である。
【００１９】
分析結果可視化装置１０３は、データ分析処理により生成された分析結果データを可視化（例えば、グラフ、表、Ｗｅｂページ等形式で可視化）してユーザに提供する処理（以下、分析結果可視化処理と称する。）を行う。
【００２０】
データ管理装置１０４は、分析対象データ及び分析結果データを管理する（例えば、データベースへの登録や更新、削除等）。データ管理装置１０４は、分析対象データや分析結果データへのアクセス（入出力）に関する処理（以下、データアクセス処理と称する。）を行う。またデータ管理装置１０４は、分析対象データを生成する際の前処理（データの加工や抽出等）を行う。分析対象データは、例えば、通信ネットワーク５を介してデータ管理装置１０４に取り込まれる。また分析対象データは、例えば、記録媒体（光学式記録媒体、半導体メモリ、外部接続ＨＤＤ等）から読み出すことによりデータ管理装置１０４に取り込まれる。分析対象データの取り込みは，例えば、ＥＴＬツール（ETL:Extract Transform Load）を用いて行われる。
【００２１】
データ分析処理支援装置１０６は、データ分析装置１０２、分析結果可視化装置１０３、及びデータ管理装置１０４の各装置の夫々において実行されるプログラムの雛形（以下、ＰＧテンプレートと称する。）や各種の設定情報、及びプログラムライブラリ（以下、ライブラリと称する。）を生成し、生成したＰＧテンプレート、各種の設定情報、及びライブラリを配信先（データ分析装置１０２、分析結果可視化装置１０３、及びデータ管理装置１０４）に展開（デプロイ）する。
【００２２】
ユーザ装置１０７は、データ分析処理支援装置１０６やデータ分析システム１０１の利用又は運用に際してデータ分析者や情報処理システム１の管理者や運用者等のユーザが操作する装置である。
【００２３】
データ分析装置１０２、分析結果可視化装置１０３、データ管理装置１０４、データ分析処理支援装置１０６、及びユーザ装置１０７は、いずれも物理的なハードウェアで構成された情報処理装置であってもよいし、例えば、クラウドシステムが提供する仮想マシンのように仮想的に実現されるものであってもよい。またこれらの装置は、複数の情報処理装置を用いて構成されていてもよいし、これらの装置の複数を共通の情報処理装置を用いて実現するようにしてもよい。またこれらの装置の機能の夫々を機能単位で複数の情報処理装置に分散して実現するようにしてもよい。
【００２４】
図２はデータ分析装置１０２の主な構成を説明する図である。同図に示すように、データ分析装置１０２は、通信装置２０１、プロセッサ２０２、入出力装置２０３、及び記憶装置２０４を備える。これらは内部通信線（例えば、バス等）を介して互いに通信可能に接続されている。
【００２５】
通信装置２０１は、通信ネットワーク５を介して他の装置との間の通信を実現するインタフェースであり、例えば、ＮＩＣ（Network Interface Card）や無線通信モジュールを用いて構成される。
【００２６】
プロセッサ２０２は、ＣＰＵ（Central Processing Unit）やＭＰＵ（Micro Processing Unit）等を用いて構成される。プロセッサ２０２が記憶装置２０４に格納されているプログラムを実行することによりデータ分析装置１０２の各種の機能が実現される。
【００２７】
入出力装置２０３は、情報の入力の受け付けや情報の出力を行う。入出力装置２０３はキーボードやマウス等から情報の入力を受け付ける。また入出力装置２０３はプロセッサ２０２から送られてくる情報を液晶ディスプレイ等の表示装置に表示する。
【００２８】
記憶装置２０４は、揮発性の記憶装置（ＤＲＡＭ（Dynamic Access Random Memory）等）や不揮発性の記憶装置（ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）、ＮＶＲＡＭ（Non-volatile memory）等）を含む。記憶装置２０４は、分析ＰＧ２１１、分析ＰＧテンプレート２１２、分析ライブラリ２１３、及び分析ＰＧ設定情報２１４を記憶する。
【００２９】
分析ＰＧ２１１は、データ分析処理を実現するためのプログラムである。以下、分析ＰＧ２１１が実行されることにより実現される機能のことを分析処理部と称する。分析ＰＧ２１１は、入出力装置２０３を介してデータ分析者等のユーザが分析ＰＧテンプレート２１２をベースとして編集することができる。
【００３０】
分析処理部は、データ管理装置１０４から提供される分析対象データを入力としてデータ分析処理を行う。分析処理部は、データ分析処理により生成される分析結果データを、分析結果可視化装置１０３やデータ管理装置１０４に送信する。
【００３１】
分析ＰＧテンプレート２１２は、分析ＰＧ２１１の雛形となるプログラムを含む。分析ＰＧテンプレート２１２は、データ分析処理支援装置１０６の後述する実行情報生成部によって生成される。
【００３２】
分析ライブラリ２１３は、分析ＰＧ２１１を実行する際に用いられる一つ以上のライブラリ（プログラム）を含む。
【００３３】
分析ＰＧ設定情報２１４は、分析ＰＧテンプレート２１２が参照する各種の設定情報である。データ分析者等のユーザは、分析ＰＧテンプレート２１２をベースとして分析ＰＧ２１１を作成する際、必要に応じて分析ＰＧ設定情報２１４の変更や設定項目の追加等を行う。
【００３４】
図３は分析結果可視化装置１０３の主な構成を説明する図である。同図に示すように、分析結果可視化装置１０３は、通信装置３０１、プロセッサ３０２、入出力装置３０３、及び記憶装置３０４を備える。これらは内部通信線（例えば、バス等）を介して互いに通信可能に接続されている。
【００３５】
通信装置３０１は、通信ネットワーク５を介して他の装置との間の通信を実現するインタフェースであり、例えば、ＮＩＣや無線通信モジュールを用いて構成される。
【００３６】
プロセッサ３０２は、ＣＰＵやＭＰＵ等を用いて構成される。プロセッサ３０２が記憶装置３０４に格納されているプログラムを実行することにより分析結果可視化装置１０３の各種の機能が実現される。
【００３７】
入出力装置３０３は、情報の入力の受け付けや情報の出力を行う。入出力装置３０３はキーボードやマウス等から情報の入力を受け付ける。また入出力装置３０３はプロセッサ３０２から送られてくる情報を液晶ディスプレイ等の表示装置に表示する。
【００３８】
記憶装置３０４は、揮発性の記憶装置（ＤＲＡＭ等）や不揮発性の記憶装置（ＨＤＤ、ＳＳＤ、ＮＶＲＡＭ等）を含む。記憶装置３０４は、可視化ＰＧ３１１、可視化ＰＧテンプレート３１２、可視化ライブラリ３１３、及び可視化ＰＧ設定情報３１４を記憶する。
【００３９】
可視化ＰＧ３１１は、分析結果可視化処理を実現するためのプログラムである。以下、可視化ＰＧ３１１を実行することにより実現される機能のことを可視化処理部と称する。可視化ＰＧ３１１は、入出力装置３０３を介してデータ分析者等のユーザが可視化ＰＧテンプレート３１２をベースとして編集することができる。可視化ＰＧ３１１は、ＢＩツール（BI:Business Intelligence Tool）、商用のソフトウェア、ＯＳＳ（Open-Source Software）、商用のサービス等によって提供されるものであってもよい。
【００４０】
可視化処理部は、データ管理装置１０４から提供される分析結果データを入力として分析結果可視化処理を行う。
【００４１】
可視化ＰＧテンプレート３１２は、可視化ＰＧ３１１の雛形となるプログラムを含む。可視化ＰＧテンプレート３１２は、データ分析処理支援装置１０６の後述する実行情報生成部によって生成される。
【００４２】
可視化ライブラリ３１３は、可視化ＰＧ３１１を実行する際に用いる一つ以上のライブラリ（プログラム）を含む。
【００４３】
可視化ＰＧ設定情報３１４は、可視化ＰＧテンプレート３１２が参照する各種の設定情報である。データ分析者等のユーザは、可視化ＰＧテンプレート３１２をベースとして可視化ＰＧ３１１を作成する際、必要に応じて可視化ＰＧ設定情報３１４の変更や設定項目の追加等を行う。
【００４４】
図４はデータ管理装置１０４の主な構成を説明する図である。同図に示すように、データ管理装置１０４は、通信装置４０１、プロセッサ４０２、入出力装置４０３、及び記憶装置４０４を備える。これらは内部通信線（例えば、バス等）を介して互いに通信可能に接続されている。
【００４５】
通信装置４０１は、通信ネットワーク５を介して他の装置との間の通信を実現するインタフェースであり、例えば、ＮＩＣや無線通信モジュールを用いて構成される。
【００４６】
プロセッサ４０２は、ＣＰＵやＭＰＵ等を用いて構成される。プロセッサ４０２が記憶装置４０４に格納されているプログラムを実行することによりデータ管理装置１０４の各種の機能が実現される。
【００４７】
入出力装置４０３は、情報の入力の受け付けや情報の出力を行う。入出力装置４０３はキーボードやマウス等から情報の入力を受け付ける。また入出力装置４０３はプロセッサ４０２から送られてくる情報を液晶ディスプレイ等の表示装置に表示する。
【００４８】
記憶装置４０４は、揮発性の記憶装置（ＤＲＡＭ等）や不揮発性の記憶装置（ＨＤＤ、ＳＳＤ、ＮＶＲＡＭ等）を含む。記憶装置４０４は、データアクセスＰＧ４１１、データアクセスＰＧテンプレート４１２、データアクセスライブラリ４１３、及びデータアクセスＰＧ設定情報４１４を記憶する。
【００４９】
記憶装置４０４は、データ管理装置１０４において機能するＤＢＭＳ（Data Base Management System）によって管理されるデータベース４１５に格納される情報を記憶する。データベース４１５には、分析対象データやデータ分析処理で生成される各種の中間データ、及び分析結果データが格納される。尚、本実施形態では、このように分析対象データや中間データ、及び分析結果データをデータベース４１５を利用して管理するものとするが、これらのデータを管理する方法は必ずしも限定されない。例えば、これらのデータをファイルシステムによって管理してもよい。
【００５０】
データアクセスＰＧ４１１は、データアクセス処理を実現するためのプログラムである。以下、データアクセスＰＧ４１１により実現される機能のことをデータアクセス部と称する。データアクセスＰＧ４１１は、入出力装置４０３を介してデータ分析者等のユーザがデータアクセスＰＧテンプレート４１２をベースとして編集することができる。データベース４１５がリレーショナルデータベース（RDB:Relational DataBase）である場合、データアクセスＰＧ４１１は、例えば、ＳＱＬ（Structured Query Language）文により記述される。データアクセス部は、例えば、データベース４１５に対してデータの取得、格納、及び削除等を行う。
【００５１】
データアクセスＰＧテンプレート４１２は、データアクセスＰＧ４１１の雛形となるプログラムを含む。データアクセスＰＧテンプレート４１２は、データ分析処理支援装置１０６の後述する実行情報生成部によって生成される。
【００５２】
データアクセスライブラリ４１３は、データアクセスＰＧ４１１を実行する際に用いられる一つ以上のライブラリ（プログラム）を含む。
【００５３】
データアクセスＰＧ設定情報４１４は、データアクセスＰＧテンプレート４１２が参照する各種の設定情報である。データ分析者等のユーザは、データアクセスＰＧテンプレート４１２をベースとしてデータアクセスＰＧ４１１を作成する際、必要に応じてデータアクセスＰＧ設定情報４１４の変更及び設定項目の追加等を行う。
【００５４】
図５は、データ分析処理支援装置１０６の主な構成を説明する図である。同図に示すように、データ分析処理支援装置１０６は、通信装置５０１、プロセッサ５０２、入出力装置５０３、及び記憶装置５０４を備える。これらは内部通信線（例えば、バス等）を介して互いに通信可能に接続されている。
【００５５】
通信装置５０１は、通信ネットワーク５を介して他の装置との間の通信を実現するインタフェースであり、例えば、ＮＩＣや無線通信モジュールを用いて構成される。
【００５６】
プロセッサ５０２は、ＣＰＵやＭＰＵ等を用いて構成される。プロセッサ５０２が記憶装置５０４に格納されているプログラムを実行することによりデータ分析処理支援装置１０６の各種の機能が実現される。
【００５７】
入出力装置５０３は、情報の入力の受け付けや情報の出力を行う。入出力装置５０３はキーボードやマウス等から情報の入力を受け付ける。また入出力装置５０３はプロセッサ５０２から送られてくる情報を液晶ディスプレイ等の表示装置に表示する。
【００５８】
記憶装置５０４は、揮発性の記憶装置（ＤＲＡＭ等）や不揮発性の記憶装置（ＨＤＤ、ＳＳＤ、ＮＶＲＡＭ等）を含む。
【００５９】
記憶装置５０４は、データ分析処理を実現するための情報である実行情報（分析ＰＧテンプレート２１２、分析ライブラリ２１３、分析ＰＧ設定情報２１４、可視化ＰＧテンプレート３１２、可視化ライブラリ３１３、可視化ＰＧ設定情報３１４、データアクセスＰＧテンプレート４１２、データアクセスライブラリ４１３、データアクセスＰＧ設定情報４１４、デプロイＰＧ５２１、デプロイ設定情報５２２、分析処理一括実行ＰＧ５２３）を生成する処理（以下、実行情報生成処理と称する。）を実現するためのプログラムである実行情報生成ＰＧ５１１を記憶する。以下、実行情報生成ＰＧ５１１によって実現される機能のことを実行情報生成部と称する。実行情報生成ＰＧ５１１は、例えば、ＧＵＩ（Graphical User Interface）やＣＵＩ（Character User Interface）を介してデータ分析者等のユーザとの間で対話方式（インタラクティブ（interactive）な方式）で実行情報生成処理を行う。
【００６０】
また記憶装置５０４は、実行情報生成処理の入力情報（分析処理設定情報５１２、分析プラグインセット５１３、可視化プラグインセット５１４、データアクセスプラグインセット５１５、分析ライブラリセット５１６、可視化ライブラリセット５１７、データアクセスライブラリセット５１８）を記憶する。
【００６１】
また記憶装置５０４は、実行情報生成処理の出力情報（分析ＰＧテンプレート２１２、分析ライブラリ２１３、分析ＰＧ設定情報２１４、可視化ＰＧテンプレート３１２、可視化ライブラリ３１３、可視化ＰＧ設定情報３１４、データアクセスＰＧテンプレート４１２、データアクセスライブラリ４１３、データアクセスＰＧ設定情報４１４、デプロイＰＧ５２１、デプロイ設定情報５２２、分析処理一括実行ＰＧ５２３）を記憶する。
【００６２】
実行情報生成部は、分析処理設定情報５１２に基づき、分析処理設定情報５１２で指定されているプラグインがプラグインセット（分析プラグインセット５１３、可視化プラグインセット５１４、データアクセスプラグインセット５１５）に含まれているか否かを判定する。尚、以下の説明において、分析プラグインセット５１３に含まれるプラグインのことを分析プラグインと、可視化プラグインセット５１４に含まれるプラグインのことを可視化プラグインと、データアクセスプラグインセット５１５に含まれているプラグインのことをデータアクセスプラグインと、夫々称する。
【００６３】
分析処理設定情報５１２に指定されているプラグインがプラグインセットに含まれている場合、実行情報生成部は、指定されているプラグインに記述されている内容に基づき、プログラムテンプレート（分析ＰＧテンプレート２１２、可視化ＰＧテンプレート３１２、データアクセスＰＧテンプレート４１２）及び設定情報（分析ＰＧ設定情報２１４、可視化ＰＧ設定情報３１４、データアクセスＰＧ設定情報４１４）を生成する。また実行情報生成部は、上記プログラムテンプレートが参照するライブラリ（分析ライブラリ２１３、可視化ライブラリ３１３、データアクセスライブラリ４１３）をライブラリセット（分析ライブラリセット５１６、可視化ライブラリセット５１７、データアクセスライブラリセット５１８）から抽出する。
【００６４】
分析処理設定情報５１２は、データ分析処理、分析結果可視化処理、及びデータアクセス処理の実行に際して参照される各種の設定情報を含む。
【００６５】
プラグインセット（分析プラグインセット５１３、可視化プラグインセット５１４、データアクセスプラグインセット５１５）は、プログラムテンプレート（分析ＰＧテンプレート２１２、可視化ＰＧテンプレート３１２、データアクセスＰＧテンプレート４１２）と設定情報（分析ＰＧ設定情報２１４、可視化ＰＧ設定情報３１４、データアクセスＰＧ設定情報４１４）の集合である。
【００６６】
プラグインには、プログラムテンプレートや設定情報の生成に際して必要となる、追加変数の内容、プログラムテンプレートの実行に必要なライブラリ、他のプラグインやライブラリとの間の依存性、及び入力フォーマットの指定等のルールが、所定の記述形式で記述されている。尚、プラグインには、データ分析処理が繰り返し行われことにより過去の内容が蓄積され、データ分析処理が繰り返し行われることによりデータ分析処理の設計や開発にかかるユーザの負担は軽減されていく。
【００６７】
ライブラリセット（分析ライブラリセット５１６、可視化ライブラリセット５１７、データアクセスライブラリセット５１８）は、プログラムテンプレート（分析ＰＧテンプレート２１２、可視化ＰＧテンプレート３１２、データアクセスＰＧテンプレート４１２）の実行に際して用いられる一つ以上のライブラリを含む。実行情報生成部は、プラグインに指定されているライブラリがライブラリセットに含まれているか否かを判定し、含まれている場合は該当のプログラムライブラリ（分析ライブラリ２１３、可視化ライブラリ３１３、データアクセスライブラリ４１３）を抽出する。
【００６８】
プログラムテンプレート（分析ＰＧテンプレート２１２、可視化ＰＧテンプレート３１２、データアクセスＰＧテンプレート４１２）は、夫々、データ分析処理、分析結果可視化処理、及びデータアクセス処理を実現するためのプログラムの雛形である。
【００６９】
プログラム設定情報（分析ＰＧ設定情報２１４、可視化ＰＧ設定情報３１４、データアクセスＰＧ設定情報４１４）は、プログラムテンプレート（分析ＰＧテンプレート２１２、可視化ＰＧテンプレート３１２、データアクセスＰＧテンプレート４１２）が参照する各種の設定情報を含む。
【００７０】
デプロイＰＧ５２１は、実行情報生成ＰＧ５１１が生成した実行情報を各装置（データ分析装置１０２、分析結果可視化装置１０３、データ管理装置１０４）に展開するためのコード（プログラム）を含む。
【００７１】
デプロイ設定情報５２２は、デプロイＰＧ５２１に関する情報（例えば、ファイルと配置先サーバの関係、送信先のＩＰアドレス等）を含む。尚、デプロイ設定情報５２２は必ずしも必須ではなく、例えば、デプロイ設定情報５２２の内容をデプロイＰＧ５２１に含ませてもよい。
【００７２】
分析処理一括実行ＰＧ５２３は、例えば、各装置に配置されたデータアクセス処理、データ分析処理、及び分析結果可視化処理の夫々のテンプレートプログラムを順に呼び出し、データアクセス処理、データ分析処理、及び分析結果可視化処理の各処理を順に実行する。
【００７３】
データ分析者等のユーザは、分析処理設定情報５１２及びプラグインセット（分析プラグインセット５１３、可視化プラグインセット５１４、データアクセスプラグインセット５１５）を適宜編集し、実行情報生成ＰＧ５１１を実行し、生成された情報を各装置（データ分析装置１０２、分析結果可視化装置１０３、データ管理装置１０４）に展開する。尚、ユーザは、例えば、データ分析処理を最初に設計する場合や仕様変更があった場合に分析処理設定情報５１２及びプラグインセットを編集する。
【００７４】
図６は分析処理設定情報５１２の一例である。分析処理設定情報５１２は、環境構築等の共通の設定に関する記述６０１、データアクセス処理の設定に関する記述６０２、データ分析処理に関する記述６０３、及び分析結果可視化処理に関する記述６０４を含む。
【００７５】
環境構築等の共通の設定に関する記述６０１は、例えば、デプロイＰＧ５２１やデプロイ設定情報５２２の生成に際して参照される各装置の所在（ＩＰアドレス、ポート番号等）やプラグインの実行順等の記述を含む。
【００７６】
データアクセス処理の設定に関する記述６０２は、例えば、データアクセス処理の内容に応じたデータアクセスプラグインの識別子（プラグイン名等）、プラグインの中で必要な変数の指定等に関する記述を含む。同図のように記述６０２にデータアクセスプラグイン名として“db_typeA_get_CSV”と“db_typeA_put_CSV”が指定されている場合、実行情報生成部は、データアクセスプラグインセット５１５のうちプラグイン名が“db_typeA_get_CSV”である、例えば、図９に示すデータアクセスプラグイン、及びプラグイン名が“db_typeA_put_CSV”である、例えば、図１０に示すデータアクセスプラグインを取得する。
【００７７】
データ分析処理に関する記述６０３は、例えば、データ分析処理の内容に応じた分析プラグインの識別子（プラグイン名等）やプラグインで用いる変数の指定等に関する記述を含む。
【００７８】
分析結果可視化処理に関する記述６０４は、例えば、分析結果可視化処理の内容に応じた可視化プラグインの識別子（プラグイン名）や、プラグインで用いる変数の指定等に関する記述を含む。
【００７９】
図７は、分析プラグインセット５１３の分析プラグインの例（以下、分析プラグイン５１３Ａと称する。）であり、図８は、可視化プラグインセット５１４の可視化プラグインの例（以下、可視化プラグイン５１４Ａと称する。）であり、図９及び図１０は、データアクセスプラグインセット５１５のデータアクセスプラグインの例（以下夫々、データアクセスプラグイン５１５Ａ、データアクセスプラグイン５１５Ｂと称する。）である。
【００８０】
図７乃至図１０に示すように各プラグインの記法（記述方法）は統一化されており、各プラグインは共通の記法に従って記述されている。例えば、いずれのプラグインについても、“%”から始まる文字列によって記述項目（プラグイン名７０１、基本情報７０２、ルール７０３、オプション７０４、テンプレートプログラムのベースとなるコード７０５、設定ファイルのベースとなる設定７０６）の各記述欄が区別される。またいずれのプラグインにおいても“#”はコメント行を意味する。尚、以下の説明において、プラグインを区別して説明する必要がある場合は各記述項目の符号に「Ａ」〜「Ｄ」の文字を付している。
【００８１】
図６に示す分析処理設定情報５１２では、データ分析処理に関する記述６０３に分析プラグイン名として“analysis_typeA”が記述されている。この場合、実行情報生成部は、分析プラグインセット５１３のうちプラグイン名７０１Ａが“analysis_typeA”である分析プラグイン５１３Ａを読み出す。
【００８２】
図７は、プラグイン名７０１Ａ「%analysis_plugin_name」が“analysis_typeA”である分析プラグイン５１３Ａの例である。同図に示すように、分析プラグイン５１３Ａのプラグイン名７０１には、分析処理設定情報５１２に基づきプラグインを呼び出すときのキーとなる情報が記述されている。
【００８３】
同図において、基本情報７０２「# Info」には、プラグインの間で共通に設定される情報が記述されている。基本情報７０２には、例えば、テンプレートプログラムや設定情報のフォーマット、テンプレートプログラムの入力引数の名前、型、及びサンプル数、テンプレートプログラムの出力の名前、型、サンプル数、テンプレートプログラムが使用するライブラリ名、テンプレートプログラム、設定情報で使用する変数等が記述される。基本情報７０２は、実行情報生成部のサポート範囲の設定であるか否か、分析処理設定情報５１２に必要な設定がされているか否か等の観点で行われる整合性の判定に際して用いられる。例えば、データアクセスプラグイン５１５Ａに、“db_table_get_name”という文字列変数が必要である旨の記述がされていた場合、実行情報生成部は、分析処理設定情報５１２に“db_table_get_name”が記載されているか否かを判定し、記載されていなければ変数が存在しない旨のエラー情報を出力する。
【００８４】
ルール７０３「# Rules」には、実行情報生成部がプラグインを読み込んでテンプレートプログラムや設定情報を生成する際に満たすべき制約条件が記述される。例えば、可視化プラグイン５１４Ａのルール７０３Ｂに記述されている“Inputs_consistency_with_analysis_plugin_outputs”との制約条件は、分析プラグインの出力と可視化プラグインの入力との間で引数の数や型、サンプル数が一貫していない場合には可視化ＰＧテンプレート３１２及び可視化ＰＧ設定情報３１４を生成できないという制約である。またルール７０３には、予約語や予約語ごとの判定項目が記述される。尚、これらの記述を実行情報生成部のプラグインとして記憶装置５０４に別途用意するようにしてもよい。またルール７０３Ａを処理するための機能や設定は、例えば、分析処理設定情報５１２に記述してもよい。
【００８５】
オプション７０４「# Options」には、実行情報生成部がプラグインを読み込んだ後の処理に影響を与える可能性のある設定が記述される。例えば、図９に示すオプション７０４Ｃや図１０に示すオプション７０４Ｄでは、オプション７０４に、分析処理設定情報５１２に指定されている分析プラグインの入力や出力をそのままデータアクセスプラグインの入力として扱うことを規定する“Inputs_refer_analysis_plugin_inputs”及び“Inputs_refer_analysis_plugin_outputs”が記述されている。尚、オプション７０４を処理するための機能や設定は、例えば、実行情報生成部に組み込んでもよい。またオプション７０４に関する設定を分析処理設定情報５１２に記述するようにしてもよい。
【００８６】
コード７０５「# Template codes / filename」には、テンプレート（分析ＰＧテンプレート２１２、可視化ＰＧテンプレート３１２、及びデータアクセスＰＧテンプレート４１２）のベースとなるコード（プログラムコード等）が所定の言語で記述される。コード７０５に記述されたコードは基本情報７０２で与えた変数設定やルール７０３の記述により代入された設定を参照することができる。例えば、図７の分析プラグイン５１３Ａでは、基本情報７０２に記述されている変数“input_file_name”、“output_file_name”、“output_header”をコード７０５Ａに記述されたコードが参照することができる。また例えば、図９のデータアクセスプラグイン５１５Ａでは、オプション７０４で指定した“Inputs_refer_analysis_plugin_inputs”の記述により、図７の分析プラグイン５１３Ａの設定から%ANALYSIS_PLUGIN_INPUTS%に“{(x_axis, int, N), (y_axis, int, N), (t_edge, double, N), (b_edge, double, N), (height, double, N)}”の変数が与えられるが、これらの変数を図７の分析プラグイン５１３Ａのコード７０５Ａに記述されたコードから参照することができる。尚、コード７０５はこのようにプラグインに直接記載してもよく、可視化プラグイン５１４Ａの７０５Ｂのようにコードが記述された外部のデータを参照するようにしてもよい（この例ではファイルパスを指定してコードが記述された外部のファイルを参照している）。
【００８７】
設定７０６「# Template settings / filename」には、コード７０５に記述されるテンプレート（分析ＰＧテンプレート２１２、可視化ＰＧテンプレート３１２、及びデータアクセスＰＧテンプレート４１２）のベースとなるコードの固有の設定が記述される。尚、作業効率を向上する観点からすれば、複数のテンプレート間で共通する設定は、基本設定７０２やルール７０３、オプション７０４における変数を用いて行うことが好ましい。
【００８８】
図１１は、データ分析処理支援装置１０６の実行情報生成部が行う処理（以下、実行情報生成処理Ｓ１１００と称する。）を説明するデータフロー図である。
【００８９】
同図に示すように、実行情報生成部は、分析プラグインセット５１３、可視化プラグインセット５１４、データアクセスプラグインセット５１５、分析ライブラリセット５１６、可視化ライブラリセット５１７、及びデータアクセスライブラリセット５１８を入力として実行情報生成処理Ｓ１１００を実行する。
【００９０】
実行情報生成処理Ｓ１１００が実行されることで、データ分析システム１０１の各装置（データ分析装置１０２、分析結果可視化装置１０３、及びデータ管理装置１０４）へのデプロイ対象（分析ＰＧテンプレート２１２、分析ライブラリ２１３、分析ＰＧ設定情報２１４、可視化ＰＧテンプレート３１２、可視化ライブラリ３１３、可視化ＰＧ設定情報３１４、データアクセスＰＧテンプレート４１２、データアクセスライブラリ４１３、データアクセスＰＧ設定情報４１４）、デプロイＰＧ５２１及びデプロイ設定情報５２２、及び分析処理一括実行ＰＧ５２３、が生成される。尚、このように本実施形態では、デプロイＰＧ５２１やデプロイ設定情報５２２についても実行情報生成部が生成しているが、デプロイＰＧ５２１やデプロイ設定情報５２２については、例えば、商用のソフトウェアやＯＳＳ等の実行情報生成部以外によって生成してもよい。
【００９１】
デプロイＰＧ５２１は、上記デプロイに関する処理（以下、デプロイ処理と称する。）を実現するためのプログラムである。デプロイ処理はデプロイ設定情報５２２に基づき上記のデプロイの対象をデータ分析システム１０１の各装置（データ分析装置１０２、分析結果可視化装置１０３、及びデータ管理装置１０４）に展開する。より具体的には、デプロイ処理は、分析ＰＧテンプレート２１２、分析ライブラリ２１３、及び分析ＰＧ設定情報２１４についてはデータ分析装置１０２に、可視化ＰＧテンプレート３１２、可視化ライブラリ３１３、及び可視化ＰＧ設定情報３１４については分析結果可視化装置１０３に、データアクセスＰＧテンプレート４１２、データアクセスライブラリ４１３、及びデータアクセスＰＧ設定情報４１４についてはデータ管理装置１０４に夫々展開する。
【００９２】
分析処理一括実行ＰＧ５２３は、デプロイ先の装置に展開されたテンプレートの起動に関する記述（コード）を含む。データ分析処理支援装置１０６が分析処理一括実行ＰＧ５２３を実行することにより、例えば、デプロイ先の装置に展開されたテンプレートが分析処理設定情報５１２に指定されている順序で起動される。尚、本実施形態では、実行情報生成部が分析処理一括実行ＰＧ５２３を生成しているが、分析処理一括実行ＰＧ５２３は、例えば、ＯＳＳや商用のソフトウェア等の他のソフトウェアを用いて生成してもよい。
【００９３】
図１２及び図１３は、実行情報生成処理Ｓ１１００を説明するフローチャートである。以下、同図とともに実行情報生成処理Ｓ１１００について説明する。
【００９４】
図１２に示すように、まず実行情報生成部は、分析処理設定情報５１２を読み込む（Ｓ１１０１）。分析処理設定情報５１２を正常に読み込めた場合（Ｓ１１０１：ＹＥＳ）、処理はＳ１１０４に進む。分析処理設定情報５１２を正常に読み込めなかった場合（Ｓ１１０１：ＮＯ）、処理はＳ１１０３に進む。Ｓ１１０３では、実行情報生成部は、分析処理設定情報５１２を正常に読み込めなかった旨のエラー情報を出力してプログラムを終了する。
【００９５】
続いて実行情報生成部は、読み込んだ分析処理設定情報５１２について不正な記述が含まれているか否かを確認する（不正値チェック）（Ｓ１１０４）。不正な記述が含まれていなければ（Ｓ１１０４：ＮＯ）、処理はＳ１１０７に進む。不正な記述が含まれていれば（Ｓ１１０４：ＹＥＳ）、処理はＳ１１０６に進み、不正な記述が存在する箇所を示す情報や対処方法等の情報等を出力してプログラムを終了する。
【００９６】
Ｓ１１０７では、実行情報生成部は、分析処理設定情報５１２に指定されている分析プラグインが分析プラグインセット５１３に含まれており、かつ、分析プラグインの基本情報７０２に指定されている分析ライブラリが分析ライブラリセット５１６に含まれているか否かを判定する。分析処理設定情報５１２に指定されている分析プラグインが分析プラグインセット５１３に含まれており、かつ、分析プラグインの基本情報７０２に指定されている分析ライブラリが分析ライブラリセット５１６に含まれている場合（Ｓ１１０７：ＹＥＳ）、処理はＳ１１０９に進む。分析処理設定情報５１２に指定されている分析プラグインが分析プラグインセット５１３に含まれていないか、もしくは、分析プラグインの基本情報７０２に指定されている分析ライブラリが分析ライブラリセット５１６に含まれていない場合（Ｓ１１０７：ＮＯ）、処理はＳ１１０８に進む。Ｓ１１０８では、実行情報生成部は、分析ＰＧテンプレート２１２を生成するための条件が満たされていない旨の警告や上記条件を満たすための対処方法等の推奨情報を出力する。その後、処理はＳ１１１０に進む。
【００９７】
Ｓ１１０９では、実行情報生成部は、分析ＰＧテンプレート２１２及び分析ＰＧ設定情報２１４を生成対象とすることを示す情報（もしくは生成可能であることを示す情報）を記憶する。その後、処理はＳ１１１０に進む。
【００９８】
Ｓ１１１０では、実行情報生成部は、分析処理設定情報５１２に指定されている可視化プラグインが可視化プラグインセット５１４に含まれており、かつ、可視化プラグインの基本情報７０２に指定されている可視化ライブラリが可視化ライブラリセット５１７に含まれている否かを判定する。
【００９９】
分析処理設定情報５１２に指定されている可視化プラグインが可視化プラグインセット５１４に含まれており、かつ、可視化プラグインの基本情報７０２に指定されている可視化ライブラリが可視化ライブラリセット５１７に含まれている場合（Ｓ１１１０：ＹＥＳ）、処理はＳ１１１２に進む。分析処理設定情報５１２に指定されている可視化プラグインが可視化プラグインセット５１４に含まれていないか、もしくは、可視化プラグインの基本情報７０２に指定されている可視化ライブラリが可視化ライブラリセット５１７に含まれていない場合（Ｓ１１１０：ＮＯ）、処理はＳ１１１１に進む。Ｓ１１１１では、実行情報生成部は、可視化ＰＧテンプレート３１２を生成するための条件が満たされていない旨の警告や上記条件を満たすための対処方法等の推奨情報を出力する。その後、処理はＳ１１１３に進む。
【０１００】
Ｓ１１１２では、実行情報生成部は、可視化ＰＧテンプレート３１２及び可視化ＰＧ設定情報３１４を生成対象とすることを示す情報（もしくは生成可能であることを示す情報）を記憶する。その後、処理はＳ１１１３に進む。
【０１０１】
Ｓ１１１３では、実行情報生成部は、分析処理設定情報５１２に指定されているデータアクセスプラグインがデータアクセスプラグインセット５１５に含まれており、かつ、データアクセスプラグインの基本情報７０２に指定されているデータアクセスライブラリがデータアクセスライブラリセット５１８に含まれているか否かを判定する。分析処理設定情報５１２に指定されているデータアクセスプラグインがデータアクセスプラグインセット５１５に含まれており、かつ、データアクセスプラグインの基本情報７０２に指定されているデータアクセスライブラリがデータアクセスライブラリセット５１８に含まれている場合（Ｓ１１１３：ＹＥＳ）、処理はＳ１１１５に進む。分析処理設定情報５１２に指定されているデータアクセスプラグインがデータアクセスプラグインセット５１５に含まれていないか、もしくは、データアクセスプラグインの基本情報７０２に指定されているデータアクセスライブラリがデータアクセスライブラリセット５１８に含まれていない場合（Ｓ１１１３：ＮＯ）、処理はＳ１１１４に進む。Ｓ１１１４では、実行情報生成部は、データアクセスＰＧテンプレート４１２を生成するための条件が満たされていない旨の警告や上記条件を満たすための対処方法等の推奨情報を出力する。その後、処理はＳ１１１６に進む。
【０１０２】
Ｓ１１１５では、実行情報生成部は、データアクセスＰＧテンプレート４１２及びデータアクセスＰＧ設定情報４１４を生成対象とすることを示す情報（もしくは生成可能であることを示す情報）を記憶する。その後、処理は図１３のＳ１１１６に進む。
【０１０３】
図１３のＳ１１１６では、実行情報生成部は、各プラグインや各設定情報の間で相互参照変数の不備やルール違反があるか否かを判定する。実行情報生成部が不備やルール違反がないと判定した場合（Ｓ１１１６：ＮＯ）、処理はＳ１１１７に進む。いずれかに不備やルール違反があると判定した場合（Ｓ１１１６：ＹＥＳ）、処理はＳ１１１８に進む。
【０１０４】
Ｓ１１１７では、実行情報生成部は、図１２のＳ１１０９、Ｓ１１１２、Ｓ１１１５で生成対象としたテンプレート及び設定情報を一括生成する。その後、処理はＳ１１１９に進む。
【０１０５】
Ｓ１１１８では、実行情報生成部は、図１２のＳ１１０９、Ｓ１１１２、Ｓ１１１５にて生成対象としたテンプレート及び設定情報のうち、生成可能な一部のテンプレート及び設定情報を生成する。その後、処理はＳ１１１９に進む。
【０１０６】
Ｓ１１１９では、実行情報生成部は、Ｓ１１１７又はＳ１１１８で生成したテンプレート及び設定情報を出力する。以上で実行情報生成処理Ｓ１１００は終了する。
【０１０７】
以上に説明したように、本実施形態のデータ分析処理支援装置１０６によれば、データ分析処理の設計や開発を支援しデータ分析処理にかかるデータ分析者等のユーザの負担を軽減することができる。
【０１０８】
例えば、従来、データ分析者は、価値創出のためのデータ分析のアルゴリズムの検討、データレイクから必要なデータを抽出するためのプログラムの整備、ライブラリや設定情報の導入、目的とする可視化を実現するための可視化ツールの調査等に多くの労力と時間を費やしていたが、データ分析処理支援装置１０６を用いることで、こうした作業におけるデータ分析者の負担を軽減することができる。
【０１０９】
またデータアクセス処理、データ分析処理、分析結果可視化処理は相互に密接に関係しており、例えば、分析結果可視化処理のソフトウェアやサービスを選択するとデータ分析処理の分析結果データの格納先が限定され、またデータ分析処理を先に選択した場合にはデータ分析処理が要求する仕様に合わせてデータアクセス処理におけるデータの取得対象やデータの加工の内容や取得するデータのサンプル数などを選択する必要があるが、データ分析処理支援装置１０６を用いることで、こうした処理間の相互の関係を考慮し整合性を担保する作業におけるデータ分析者の負担を軽減することができる。
【０１１０】
また分析内容の変更や分析対象データの形式変更等が発生すると、上記処理間の整合性を担保してデータ分析処理を成立させるために、分析処理全体の設計を見直す必要があるが、データ分析処理支援装置１０６を用いることで、こうした作業におけるデータ分析者の負担を軽減することができ、その分、データ分析者は、データ分析処理のアルゴリズムの検討や分析結果の評価等の主要な作業に集中することができる。
【０１１１】
ところで、以上に説明した実行情報生成処理Ｓ１１００は、ユーザとの間で対話形式で実行することもできる。
【０１１２】
図１４は、実行情報生成処理Ｓ１１００をデータ分析社等のユーザとの間の対話形式で（インタラクティブに）実行する場合に実行情報生成部が入出力装置５０３を介してユーザに提示する画面（以下、分析処理開発画面１４００と称する。）の一例である。尚、ユーザがデータ分析処理支援装置１０６以外の他の装置（ユーザ装置１０７等）を介して実行情報生成処理Ｓ１１００を対話形式で進めていくようにしてもよい。
【０１１３】
同図に示すように、分析処理開発画面１４００は、入力情報の表示欄１４１１、入力情報の内容の表示欄１４１２、警告情報の表示欄１４１３、内訳表示欄１４１４、及び出力情報の表示欄１４１５を有する。ユーザはこのようにして整理された表示欄を利用して効率よく作業を進めることができる。
【０１１４】
入力情報の表示欄１４１１は、実行情報生成処理Ｓ１１００の入力情報（分析プラグインセット５１３、可視化プラグインセット５１４、データアクセスプラグインセット５１５、分析ライブラリセット５１６、可視化ライブラリセット５１７、及びデータアクセスライブラリセット５１８）について、分析処理設定情報５１２の記述をベースとして、プラグインやライブラリ間の参照関係及び読み込み状況、これらの情報を読み込んだ際のエラー情報、不正箇所、警告情報、推奨情報等が表示される。
【０１１５】
本例では、分析処理設定情報５１２と分析プラグインセット５１３との関係について、分析プラグインセット５１３のうち分析処理設定情報５１２に記載されたプラグイン名が“analysis_typeA”の分析プラグインを読み込んだとき、１つの警告（WARNING）があった旨が表示されている。また分析処理設定情報５１２とデータアクセスプラグインセット５１５との間で、プラグイン名が“db_typeA_get_CSV”のデータアクセスプラグインに該当するデータアクセスプラグインが存在しない旨のエラーが表示されている。ユーザは入力情報の表示欄１４１１に表示される内容に基づき、各種の入力情報の相互の関係や整合性を容易に確認することができ、入力情報の編集作業や修正作業を効率よく行うことができる。
【０１１６】
同図において、入力情報の表示欄１４１１に表示されている入力情報の一つをユーザがクリック等の操作を行って選択すると、選択された入力情報の内容が入力情報の内容の表示欄１４１２に表示される。尚、選択中の入力情報が関係するエラー情報、不正箇所、警告情報等があれば、入力情報の表示欄１４１１に表示されている入力情報の内容の関連箇所が強調表示（例えば、アンダーライン等）される。ユーザは、入力情報の内容の表示欄１４１２の内容を直接編集して選択中の入力情報の内容を編集することもできる。またユーザは図示しない更新ボタン等を選択することで、編集後の内容についてエラー情報、不正箇所、警告情報等の有無や整合性の有無等を確認することができる。このように、ユーザは、分析処理開発画面１４００を介した対話形式で実行情報生成処理Ｓ１１００を効率よく進行させることができる。
【０１１７】
警告情報の表示欄１４１３には、選択中の入力情報に関係するエラー情報、不正箇所、警告情報等の詳細が表示される。同図におけるタブ１４１３１（「ＩＮＦＯ」、「ＷＡＲＮ」、「ＥＲＲＯＲ」）のいずれかを選択することで、警告情報の表示欄１４１３に表示される情報の種類を切り替えることもできる。
【０１１８】
入力情報の表示欄１４１１に表示されている入力情報の一つにユーザがカーソルを重ねる等の操作を行うと、ポップアップ等の形式で内訳表示欄１４１４が表示される。この例では、ユーザが分析ライブラリセット５１６にカーソルを重ねることで、分析ライブラリセット５１６に含まれている分析ライブラリの一覧が記載された内訳表示欄１４１４がポップアップ形式で表示されている。この内訳表示欄１４１４の例では、分析処理設定情報５１２から参照されている分析ライブラリ“script_tool 1.0”について、当該分析ライブラリが現在選択中であることも示されている。このようにユーザは内訳表示欄１４１４を利用してライブラリの内容を容易に確認することができるので作業を効率よく進めることができる。
【０１１９】
出力情報の表示欄１４１５には、前述の実行情報生成処理Ｓ１１００により生成可能なテンプレートや設定情報が表示される。ユーザは出力情報の表示欄１４１５の表示内容を確認することで、作業の進捗状況を容易に確認することができ、また修正が必要な入力情報を容易に特定することができる。
【０１２０】
ところで、本発明は以上に説明した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、上記の実施の形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また上記実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１２１】
また上記の各構成、機能部、処理部、処理手段等は、それらの一部又は全部を、例えば、集積回路で設計する等によりハードウェアで実現してもよい。また上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリやハードディスク、ＳＳＤ等の記録装置、又はＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【０１２２】
また上記の各図において、制御線や情報線は説明上必要と考えられるものを示しており、必ずしも実装上の全ての制御線や情報線を示しているとは限らない。例えば、実際にはほとんど全ての構成が相互に接続されていると考えてもよい。
【０１２３】
また以上に説明した各装置の各種機能部、各種処理部、各種データベースの配置形態は一例に過ぎない。各種機能部、各種処理部、各種データベースの配置形態は情報処理システム１が備えるハードウェアやソフトウェアの性能、処理効率、通信効率等の観点から最適な配置形態に変更し得る。
【０１２４】
また前述したデータベースの構成（スキーマ（Schema）等）は、リソースの効率的な利用、処理効率向上、アクセス効率向上、検索効率向上等の観点から柔軟に変更し得る。
【符号の説明】
【０１２５】
１  情報処理システム、５  通信ネットワーク、１０２  データ分析装置、１０３  分析結果可視化装置、１０４  データ管理装置、１０６  データ分析処理支援装置、２１１  分析ＰＧ（分析処理部）、２１２  分析ＰＧテンプレート、２１３  分析ライブラリ、２１４  分析ＰＧ設定情報、３１１  可視化ＰＧ、３１２  可視化ＰＧテンプレート、３１３  可視化ライブラリ、３１４  可視化ＰＧ設定情報、４１１  データアクセスＰＧ、４１２  データアクセステンプレート、４１３  データアクセスライブラリ、４１４  データアクセスＰＧ設定情報、４１５  データベース、５１１  実行情報生成ＰＧ(実行情報生成部）、５１２  分析処理設定情報、５１３  分析プラグインセット、５１４  可視化プラグインセット、５１５  データアクセスプラグインセット、５１６  分析ライブラリセット、５１７  可視化ライブラリセット、５１８  データアクセスライブラリセット、５２１  デプロイＰＧ、５２２  デプロイ設定情報、５２３  分析処理一括実行ＰＧ
【図１】
2019040287.tif 000003
【図２】
2019040287.tif 000004
【図３】
2019040287.tif 000005
【図４】
2019040287.tif 000006
【図５】
2019040287.tif 000007
【図６】
2019040287.tif 000008
【図７】
2019040287.tif 000009
【図８】
2019040287.tif 000010
【図９】
2019040287.tif 000011
【図１０】
2019040287.tif 000012
【図１１】
2019040287.tif 000013
【図１２】
2019040287.tif 000014
【図１３】
2019040287.tif 000015
【図１４】
2019040287.tif 000016