Dockerコンテナとして動作する,全文検索サービス生成プログラムを開発した.このプログラムは,Webアプリケーションまたはコマンド実行により動作する.Webアプリケーションでは,Webブラウザ上の画面より,検索対象文書群のディレクトリ名,および諸情報を入力することで,全文検索サービスをDockerで稼働させるためのファイルを生成する.生成したファイルには,全文検索エンジン(Elasticsearch)およびWebサーバ(nginx)に関する設定ファイルのほか,検索対象文書群のインデックス情報が含まれている.Docker Composeを用いてビルドおよびサーバ起動を行えば,利用者はWebブラウザを介した全文検索が使用可能となる. 6万件超の防災ブログ記事テキストデータを検索対象文書群とし,稼働の可否を検証するとともにデータサイズや処理時間の比較を行った.そのままでは全文検索エンジンのビルド(インデックス生成)時に失敗したが,1万件ごとに分割して登録すればDockerイメージが作られ,全文検索サービスとしての動作を確認した.件数を減らしてサービスを生成したところ,2万件以下であればエラーなくビルドできること,Dockerイメージのファイルサイズが,検索対象文書のサイズの線形関数となり,推定できることなどを確認した. ビルドには外部との通信を要するが,その間も,検索対象文書群およびそのインデックスは流出しない.本システムは,本文の公開が望まれないコンテンツを対象とした全文検索サービスの試作や,瞬時に漏れのない検索結果の提供,アクセスログを通した詳細な分析といった機能を持つ独自サービスの構築に,有用であると考えられる.
|