1 Copyright © 2015 NTT DATA Corporation
to
NTTデータ 基盤システム事業本部 OSSプロフェッショナルサービス 土橋 昌
Sparkをノートブックにまとめちゃおう。Zeppelinでね!
2 Copyright © 2015 NTT DATA Corporation
氏名
土橋 昌(NTTデータ)
経歴
OSSを使い倒すことをミッションとしたチームに所属
5~6年ほど前からHadoop関連のお仕事をはじめた
3~4年前からストリーム処理とか、オンメモリ処理とか
Spark Summit 2014で発表しました
普段のお仕事
インフラエンジニア
データ処理
自己紹介
3 Copyright © 2015 NTT DATA Corporation
Apache Zeppelinの簡単なご紹介
(個人的な)所感
動かしてみよう(デモ)
アジェンダ
4 Copyright © 2015 NTT DATA Corporation
Apache Zeppelinとは?
ウェブベースのインタラクティブなノートブック SQL、Scala、Pythonで処理を書けます
https://zeppelin.incubator.apache.org/
5 Copyright © 2015 NTT DATA Corporation
ApacheのIncubatorプロジェクト
Lead: Roman Shaposhnik(Apache BigTopのFounder、Pivotal)
開発体制は小さいながらも活発?
まだまだ発展途上のプロダクトです。なので、 ビシバシ やさしく接します。
Apache Zeppelinの開発体制
Leemoonsoo(NFLabs)、anthonycorbacho(NFLabs)
韓国の企業 データ分析関連ツールを提供
主要開発者
6 Copyright © 2015 NTT DATA Corporation
ここではウェブブラウザのコンソール上に、コードを記述し、ドキュメントを記載し、グラフを描画してビジュアライズするようなものを想定しています
Zeppelinの他にも有名どころではJupyter (IPython Notebook)
数年前からPython界隈ではデファクトあったけれども、Python感を薄めてGeneralな感じになった
Pythonだけではなく、色んな実行基盤と連携できる
https://jupyter.org/
ノートブックとは?
7 Copyright © 2015 NTT DATA Corporation
ウェブブラウザで気軽に利用できる
試行錯誤の過程も含めて記録できる
実際に試しながらメモ化できる
結果も一緒に残る
実行手順と結果が同じ媒体に残るのが都合よい
気が付いたら、いつの間にかレポートが出来上がる(かも)
理想的には…というお話です
2015/5現在、Zeppelinにはレポーティング機能がないから付けたいところです
ノートブックのここが嬉しい
8 Copyright © 2015 NTT DATA Corporation
実際のデータ処理、分析作業は、分析アルゴリズムを適用する以外の面倒なところも含めた試行錯誤が泥臭い。色々とツールを使い分けるのも面倒。 様々な作業に適した処理系(SQL、Python、Scala)を一緒に用いれるのが便利。
ひとつのノートブックで複数のインタープリタ(Jupyterでいうとカーネル?)を利用できます
ビルドイン機能で、わりと綺麗にグラフ化します
(でもグラフの種類がまだ少ない…)
みんな大好き、Sparkに標準対応しています
他にもFlinkに対応中
汎用的なフロントエンドに育てる予定のようです
他にも…
ニアリアルタイムのストリーム処理もできます(Spark Streaming利用)
コラボレーションツールとして頑張ろうとしているようです
Zeppelinのここが嬉しい
9 Copyright © 2015 NTT DATA Corporation
Zeppelinの動かし方
• まだインストールパッケージがありません
• GitクローンしてMVNビルドします
– パッケージ化して再利用できます
• Q)Sparkクラスタは必要?
– デフォルトはローカルモードで単体動作
– 設定すればクラスタに接続できます
• Q)YARNは利用できる?
– 利用できます
– ノートブック起動時にアプリケーションがデプロイされて、アプリケーションが使いまわされます
公式ドキュメント
https://github.com/dobachi/ansible-hadoop
有志がメンテナンスしている、Hadoopなどの環境を 構築・運用するためのAnsibleプレイブック集の例
10 Copyright © 2015 NTT DATA Corporation
本デモの構成イメージ
こんな感じで動きます(デモ)
ブラウザ Spark インタープリタ
YARN (疑似分散)
事情により 非力な環境ですみません
1)何か処理を投入
2)Spark実行基盤に伝わって AM
3)出力が戻ってきます
HDFS (疑似分散)
もちろんHDFSに対して 入出力できます
11 Copyright © 2015 NTT DATA Corporation
「試行錯誤しながら考えをまとめていく」用途でノートブックは便利です
Zeppelinを利用すると気軽に分散処理の恩恵を受けられます
わりと綺麗な点が嬉しい
インタープリタが充実してくると面白いことになるかも
- 処理基盤系のインタプリタの他にも、Angularインタプリタが最近追加されました。 インタラクティブなUIも作成可能になりました。 (例: Angularによるフォームからデータを受け取って、Sparkに変数として渡す)
一方で足りない機能や改善したい点もまだまだ見られます。
ノートブックのエクスポート、インポート
グラフ種類 … ビルトインでないビジュアライズ機能を利用したい
まとめ
Copyright © 2011 NTT DATA Corporation
Copyright © 2015 NTT DATA Corporation
お問い合わせ先: 株式会社NTTデータ 基盤システム事業本部 OSSプロフェッショナルサービス URL: http://oss.nttdata.co.jp/hadoop メール: [email protected] TEL: 050-5546-2496