Zoomdataを試してみよう（ビッグデータ編：１）

前回は、複数のデータソースを一つに纏めて取り扱う事が出来る、**フュージョン**機能についてご紹介しました。**マイクロクエリー**を最大限に活用し、ネットワーク上に散在する貴重なデータソースを、一つのデータソースとして透過的に取り扱う事により、データの持つ価値や可能性をより一層向上させると同時に、データソースに関わる仕組み自体の発想を、より効率的で柔軟な方向に進化させることが出来るという事をご理解頂けたかと思います。

さて、今回からは**Zoomdata**の本領発揮である、**ビッグデータ**との連携についてご紹介していこうと思います。

既に、**Kitase**さんが書かれた[ZoomdataとHadoop（Hive on Tez）の連携（Azure編）](http://qiita.com/kkitase/items/47cb0516e48e23916541)といった記事も公開されていますので、実際に連携検証を行われた方もいらっしゃるかもしれませんが、今回は一般に公開されている著名な**ビッグデータ・ソリューション**を、それぞれのSandboxを仮想空間で使わせて頂くことで、Zoomdataとローカルに連携させながら、その基本的な設定手順等を説明して行きたいと思います。

#（１）まずは環境の準備
**ビッグデータ**の環境としては、今回の一連の作業を仮想環境上で行っている関係もあり、Sandboxと呼ばれる構築済みの仮想イメージを活用する方向で作業を進めさせて頂きたいと思います。
検索エンジンで探して頂けば、すぐに幾つかの試用環境に関する情報が手に入るかと思いますが、第1回目の今回は、**[Cloudera](http://jp.cloudera.com/)**社様より提供されているSandboxを使わせて頂き、**Zoomdata**との接続検証を行ってみる事にします。

[Cloudera社のホームページ](http://jp.cloudera.com/)より**Download**を選択し、**QuickStarts**にある**[DOWNLOAD NOW](https://www.cloudera.com/downloads/quickstart_vms/5-12.html)**を選択して頂くと、現在配布されている仮想イメージのダウンロード登録が出来るかと思いますので（執筆時点）、**所定の情報を正確に登録頂いて**目的の仮想イメージを入手してみてください。また、今回からは**Zoomdata**以外に接続検証を行うビッグデータ環境用のメモリ空間や、要求されるCPUリソース等が必要になりますので、場合によっては稼働用のハードウエアを分けて立ち上げるなどの工夫（ネットワーク等の整合性を合わせるなど）が必要になるかもしれませんが、それぞれの環境構築は、自己責任でお願い致します。また本件に関するCloudera社様へのお問合せ等はお控え頂ければ幸いです。

無事にダウンロードが終了し、起動が成功すればデスクトップ画面が表示されると思います。（注：画面が日本語化されていますが（あくまでも個人的な興味で設定しています・・）、オリジナルの環境は英語版になります。もちろん、英語環境でも問題なく検証できますので、そのまま進めてください）

![c1.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/88a0d53b-2122-6f84-7960-501ed4804693.jpeg)

まず最初に、検証用データの設定をします。ブラウザ上の上の方に**Hue**という表示が有りますので、それを選択してみてください。表示が変わり、**Step 1**の作業が開始されると思いますが、暫くすると画面に環境のチェック内容が表示されます。

![c2.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/a260b2f7-7da2-b9a9-7233-2fe7e6bc9767.jpeg)

次に**Step 2**の**Examples**を選択します。

![c3.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/1b4d0003-9f90-31b2-47a7-dbe3ded258c5.jpeg)

今回の検証で使うデータを選択します。今回は**Impala**と検索系の**Solr Search**の接続検証を行うと思いますので、順番に選択してインストールしておきます。

念のためにデータの生成を確認しておきます。
ブラウザ画面の上部にある**家**（My Documents）のアイコンを選択します。

![c4.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/839066f0-b921-a721-9ea1-c2b7f8774378.jpeg)

検証用のデータが無事にセットアップされた事が確認できると思いますので、併せて仮想マシンのIPアドレスを調べておいてください。

#（２）Zoomdataとの接続
さて、ビッグデータソース側の準備が出来ましたので、これから**Zoomdata**との接続設定を始めたいと思います。
まずは**admin**で入って頂き、コンソール画面上部の歯車アイコンを選択し、**Sources**を選択してください。

![c5.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/ba9406cf-6a21-bec7-f0fc-d90b69c9d1b6.jpeg)

次に**Cloudera Impala**のアイコンを選択します。

![c6.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/2f17c9f8-d05f-50c8-33b4-74f50331a950.jpeg)

必要事項を設定し左側下部にある**Next**を選択します。

![c7.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/b82364fb-f900-4435-373c-767f50e73ef0.jpeg)

新規のコネクター設定を選択し、必要なパラメータを設定します。コネクター毎にユニークな名前を設定し、**JdbcUrl**の情報を以下の様に入力してみてください。

**jdbc:hive2://xxx.xxx.xxx.xxx:21050/;auth=noSasl**

**xxx.xxx.xxx.xxx**については、先程確認したIPアドレスを設定し、ポート番号は各データソースによって事前に定義されていますので、基本的にそれらの数値をそのまま使ってください。また、その他の項目については、そのままで結構です。（この辺の情報については、提供元のドキュメントをご確認ください）

基本設定が終わったら**Validate**を選択すると接続検証が行われますので暫くお待ちください。

![c8.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/95f62df0-6a86-753e-bb77-14e560d77208.jpeg)

画面上部に緑色の接続完了を占めるポップアップが表示されれば、無事にデータソースとの接続設定は完了です。
次に取り扱うデータの選択に入ります。画面右下にある**Next**を選択してください。

![c9.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/72ca3b49-5be9-6551-f97f-4e8fc56122e6.jpeg)

事前に設定されているサンプルが幾つか出てきますので、今回は一番沢山のデータの項目が有りそうな、**web_logs**を選択してみます。

![c10.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/10bb1830-1ee7-fa74-798a-c29b633ba665.jpeg)

各データの詳細が表示されますので、右下の**Next**を選択します。
今回は、サクッと試すという事ですので、基本的には以降の画面についてもそのまま進行してください。ただし、データを**Time Bar**と連携させるために、以前説明させて頂いたデータ項目の属性を一部変更しておいてください。（具体的には、**day**の属性を**TIME**に変更し、カスタム設定を**yyyy-MM-dd**に置き換えた後、次項目を**DAY**にしておけばOKです）

**day**の属性変更が首尾よく終了し、全体のパラメータ設定が完了すると**Zoomdata**側から、得意のマイクロクエリーで**Impala**へアクセスできるようになります。

![C11.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/d13d1dcb-869f-affd-665c-887ffd1589e8.jpeg)

#（３）ダッシュボードの作成して接続を検証
では、接続を検証するために簡単なダッシュボードを作成してみましょう。手順は前回までと同じになりますので、**サクッと進行**していきます。

![c12.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/17bca901-2ab2-54b0-1bd2-a7a162e9dda8.jpeg)

左上のアイコンからダッシュボードの作成から今回設定した**Cloudera Impala**を選択します。

![c13.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/4ada199e-2ada-713a-a7bd-ede2a5c2fe9e.jpeg)

利用可能なチャートが出てきますので**Bars**を選択し、チャート下側の**Group**を**City**にします。

![c14.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/fb600c29-26f2-4114-7ae0-46ec1d46bd49.jpeg)

チャート下部にある**Time Bar**をスライドして、表示が同期するか確認してみてください。
次に、**ドーナッツ・チャート**を作成してみます。手順は依然と同じですので、ここでは流れのみのご紹介とさせて頂きます。

![c15.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/aed9cc10-5276-ee2d-196e-662f01f8bf54.jpeg)

![C16.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/e9831716-b4d3-d73b-93e3-cdca48edb584.jpeg)

![c18.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/d6d818dc-548e-1aab-922c-f2a53f792c1d.jpeg)

**ドーナッツ・チャート**の表示データは、データ項目に**OS**の利用割合が有りましたので、それを**Group**で選択しています。

最後に、今回作成したダッシュボードを保存しておきたいと思います。
必要であれば、各チャート・タイトルとダッシュボード・タイトルを変更（例によって”なんちゃってタイトル”ですが・・）した後、コンソール画面右上の**Save**を選択して必要事項を入力してから、ポップアップ右下の**Save**を選択すれば、コンソールのホーム画面に表示されますので、次回以降はここからスタートできるようになります。

![c19.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/a5b788cb-b7d2-52a7-8a70-7caf1800cfd1.jpeg)

![c20.jpg](https://qiita-image-store.s3.amazonaws.com/0/197589/c9a944d9-3ecb-077a-f668-cf2eea57467c.jpeg)

#（４）今回のまとめ
今回は、**ビッグデータ**と**Zoomdata**の連携について、**Cloudera Impala**を例に仮想環境を使った検証を行いました。適切に構築されたビッグデータ環境への接続が、実は非常にシンプルに実現できることがご理解頂けたかと思います（この点については、今後予定されている各**ビッグデータ・ソリューション**も同様です）もちろん検証環境ですので、ビッグではないという制限は存在しますが、もとより**スケールアウト**を前提の各ソリューションに対して、**マイクロクエリー**接続と**インメモリ・テクノロジー**による**効率的＆高速な接続を実現**できますので、実際の巨大な”**リアル・ビッグデータ**”環境においても、同様に**シンプルかつ柔軟な利用・運用を実現**する事が可能になります。

次回は、冒頭の設定でデモデータの存在を確認できた、**Solr**での接続を行ってみたいと思います。

#（５）謝辞
今回の記事作成に関し、ビッグデータソースのエンジンとして、**[Cloudera](http://jp.cloudera.com/)**社様が公開されているSandboxを活用させて頂きました。この場をお借りして厚く御礼申し上げます。