SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

「Cloudera Quick Start VM」を活用したビッグデータ分析の学習環境構築

フリーのビッグデータ分析学習環境を使って、全文検索アプリケーションを構築してみる

「Cloudera Quick Start VM」を活用したビッグデータ分析の学習環境構築 第4回

  • X ポスト
  • このエントリーをはてなブックマークに追加

 前回の記事では、Sparkを使ってバスケット分析を行いました。最終回では、Apache Solrベースの全文検索エンジン「Cloudera Search」を使って全文検索アプリケーションを構築します。

  • X ポスト
  • このエントリーをはてなブックマークに追加

 サーバのログは常に生成され続けます。一日に一回アップロードするという運用では、直近で発生しているイベントを検索することができません。Cloudera Searchを使えば、生成されるログメッセージをほぼリアルタイムで検索できるようになります(NRT=ニアリアルタイム)。

チュートリアル5:Cloudera Searchを使ってサーバログの全文検索を行う

 Solrを使うには、まず設定ファイルの作成とスキーマの定義を行わないといけませんが、このチュートリアルではすでに用意されているため、このフェーズは省略します。

 まず、Solrの設定をアップロードします。

$ cd /opt/examples/flume
$ solrctl --zk quickstart.cloudera:2181/solr instancedir --create live_logs ./solr_configs

 ログ検索用のコレクションを作成します。

$ solrctl --zk quickstart.cloudera:2181/solr collection --create live_logs -s 1

 コレクションとは論理的な検索インデックスのことです。詳細は『Apache Solr入門』のp.263以降を参照してください。

 次に、ダミーデータ生成ツールを起動します。

$ start_logs

 このツールは、擬似ログデータを少しずつ生成していきます。

 どのようなログが出力されているかを確認したい場合は以下のコマンドを入力します。

$ tail_logs

 ツールを停止させる場合は以下のコマンドを入力します。

$ stop_logs

 次に、Apache Flumeというログ収集ソフトウェアを起動し、生成されていくログメッセージをストリームでHadoopに取り込んでいきます。

flume-ng agent --conf /opt/examples/flume/conf --conf-file /opt/examples/flume/conf/flume.conf --name agent1 -Dflume.root.logger=DEBUG,INFO,console

テスト検索

 「http://<VMのIPアドレス>:8888/indexer」にアクセスし、「live_logs」をクリックすると、インデックスを表示する画面になります。

 左の「検索」をクリックすると、検索画面に移ります。

live_logsインデックス画面
live_logsインデックス画面

 Googleなどの検索ウィンドウとは違い、Solr単体では検索用のクエリをきちんと記述しないといけません。検索ウィンドウに、以下のクエリを入力してみてください。

action:checkout

 このクエリは、「action」フィールドから「checkout」という文字を含むドキュメントを検索します。

 AND検索する場合は、下記のようにクエリを記述します。

((action:"view department") AND (department:apparel))
検索結果画面
検索結果画面

 このようにしてログデータの検索を行うことができます。しかし、もう少し工夫して見やすくしてみましょう。

次のページ
チュートリアル ボーナスステージ:検索ダッシュボードを作る

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
「Cloudera Quick Start VM」を活用したビッグデータ分析の学習環境構築連載記事一覧

もっと読む

この記事の著者

嶋内 翔(Cloudera株式会社)(シマウチ ショウ)

2011年、Clouderaの最初の日本人社員として入社。サポートエンジニアとして3年務めた後、セールスエンジニアとして働いている。監訳書に「Apache Sqoop クックブック」。ライフワークで技術系ポッドキャスティング garsue.fm のファシリテーターを務めている。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/8654 2015/06/19 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング