ページの先頭行へ戻る
Big Data Integration ServerV1.7.0 利用ガイド

7.3.2 大量データを検索する

加工したデータのうち、膨大な履歴や過去データなどの大量なデータから必要な情報を検索する場合は、ディスク検索を使用してアプリケーションを開発します。数十ギガバイトからテラバイト以上の大量データを検索する業務に適しています。
本機能は、XML文書またはCSVファイルを入力とし、コマンドや関数などを使用することで、アプリケーションからデータ検索できます。また、検索結果をソートまたは集計もできます。

利用者が開発する必要のあるアプリケーションは、以下です。

7.3.2.1 ディスク検索アプリケーション

ディスク検索を使用するためには、以下の方法があります。

ディスク検索のコマンドを実行するアプリケーションを作成する方法

ディスク検索のコマンドを使用して検索実行アプリケーションを作成することで、大量データから高速にデータを抽出できます。

本機能は、XML文書またはCSVファイルを入力とし、条件にあったXML文書またはCSVファイルを出力します。
また、ディスク検索を実現するインターフェースは、以下を提供しています。

統合コマンドの使用

ディスク検索の統合コマンドを使用する場合、以下の処理を実装することで検索実行アプリケーションを実現できます。

  1. 統合定義ファイルの生成

    アプリケーションの入力情報などを元に、統合コマンド用の統合定義ファイルを生成します。

  2. 統合コマンドの実行

    手順1.で生成したファイルと処理名/シナリオ名を引数とした統合コマンドを実行します。

  3. 結果出力

    出力ファイルの内容を読込み、追加の整形処理をしてアプリケーションの結果を出力します。

基本コマンドの使用

統合コマンドの代わりに、抽出コマンド・連結コマンド・集計コマンド・ソートコマンドを組み合わせて実装することで、ディスク検索を実現もできます。

関数の使用

コマンドの代わりにC API(抽出関数・連結関数・集計関数・ソート関数)を組み合わせて実装することで、ディスク検索を実現もできます。

PostgreSQLを導入してファイルを検索する方法

PostgreSQLの外部テーブル機能を使用して、検索用データ領域にあるスキーマレス加工の結果ファイルをSQLから簡単に検索できます。
外部テーブル機能とは、PostgreSQLの外部にあるデータに対して、通常のテーブルと同様にアクセスできる機能です。
外部テーブル機能を使用するには外部データの種類に応じた外部データラッパを用意し、PostgreSQLに適用する必要があります。PostgreSQL本体同梱の外部データラッパであるfile_fdw(注)を使用した、PostgreSQLの外部テーブル機能によるディスク検索の導入方法を以下で説明します。

注) file_fdwは、タブ区切りやCSV形式のファイルを外部テーブルとして読み込むための外部データラッパです。

file_fdwの有効化

PostgreSQLのデータベースに対して、file_fdwを有効化します。

file_fdwはPostgreSQL本体同梱のextensionとして提供されているため、file_fdwを有効化するには下記のSQL実行のみで可能です。

=# CREATE EXTENSION file_fdw;
=# CREATE SERVER file_server FOREIGN DATA WRAPPER file_fdw;
外部テーブルの定義

ファイルと外部テーブルを1対1でマッピングする、以下のようなDDLで外部テーブルを定義することで、SQLからのファイル検索が可能になります。

=# CREATE FOREIGN TABLE pglog (
  log_time timestamp(3) with time zone,
  user_name text,
  database_name text,
) SERVER file_server
OPTIONS ( filename '/home/josh/9.1/data/pg_log/pglog.csv', format 'csv' );

OPTION句では入力ファイルの情報(ファイルパスや区切り文字、ヘッダ有無など)を指定します。

同一形式の複数ファイルのデータをすべて検索対象にする場合は、それぞれのファイルで外部テーブルを作成した後、ビューですべての外部テーブルを結合することで実現できます。

ポイント

PostgreSQLは本製品に含まれていませんので、別途手配してください。
連携可能なPostgreSQLについては“3.2.3.4.3 検索サーバ上のPostgreSQLを使用したファイル検索の情報”を参照してください。

7.3.2.2 ディスク検索Webアプリケーション

利用者のクライアント端末からの検索要求を受け付けて、ディスク検索サーバへの検索実行を依頼し、検索結果を応答するアプリケーションを作成する必要があります。必要に応じて、以下の機能も作成する必要があります。


参照

ディスク検索を使用してアプリケーションを開発するには、“加工編 導入・運用ガイド”を参照してください。