sparkをノートブックにまとめちゃおう。zeppelinでね!(hadoopソースコードリーディング...

12
1 Copyright © 2015 NTT DATA Corporation to NTTデータ 基盤システム事業本部 OSSプロフェッショナルサービス 土橋 Sparkをノートブックにまとめちゃおう。 Zeppelinでね!

Upload: ntt-data-oss-professional-services

Post on 22-Jul-2015

1.970 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

1 Copyright © 2015 NTT DATA Corporation

to

NTTデータ 基盤システム事業本部 OSSプロフェッショナルサービス 土橋 昌

Sparkをノートブックにまとめちゃおう。Zeppelinでね!

Page 2: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

2 Copyright © 2015 NTT DATA Corporation

氏名

土橋 昌(NTTデータ)

経歴

OSSを使い倒すことをミッションとしたチームに所属

5~6年ほど前からHadoop関連のお仕事をはじめた

3~4年前からストリーム処理とか、オンメモリ処理とか

Spark Summit 2014で発表しました

普段のお仕事

インフラエンジニア

データ処理

自己紹介

Page 3: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

3 Copyright © 2015 NTT DATA Corporation

Apache Zeppelinの簡単なご紹介

(個人的な)所感

動かしてみよう(デモ)

アジェンダ

Page 4: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

4 Copyright © 2015 NTT DATA Corporation

Apache Zeppelinとは?

ウェブベースのインタラクティブなノートブック SQL、Scala、Pythonで処理を書けます

https://zeppelin.incubator.apache.org/

Page 5: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

5 Copyright © 2015 NTT DATA Corporation

ApacheのIncubatorプロジェクト

Lead: Roman Shaposhnik(Apache BigTopのFounder、Pivotal)

開発体制は小さいながらも活発?

まだまだ発展途上のプロダクトです。なので、 ビシバシ やさしく接します。

Apache Zeppelinの開発体制

Leemoonsoo(NFLabs)、anthonycorbacho(NFLabs)

韓国の企業 データ分析関連ツールを提供

主要開発者

Page 6: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

6 Copyright © 2015 NTT DATA Corporation

ここではウェブブラウザのコンソール上に、コードを記述し、ドキュメントを記載し、グラフを描画してビジュアライズするようなものを想定しています

Zeppelinの他にも有名どころではJupyter (IPython Notebook)

数年前からPython界隈ではデファクトあったけれども、Python感を薄めてGeneralな感じになった

Pythonだけではなく、色んな実行基盤と連携できる

https://jupyter.org/

ノートブックとは?

Page 7: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

7 Copyright © 2015 NTT DATA Corporation

ウェブブラウザで気軽に利用できる

試行錯誤の過程も含めて記録できる

実際に試しながらメモ化できる

結果も一緒に残る

実行手順と結果が同じ媒体に残るのが都合よい

気が付いたら、いつの間にかレポートが出来上がる(かも)

理想的には…というお話です

2015/5現在、Zeppelinにはレポーティング機能がないから付けたいところです

ノートブックのここが嬉しい

Page 8: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

8 Copyright © 2015 NTT DATA Corporation

実際のデータ処理、分析作業は、分析アルゴリズムを適用する以外の面倒なところも含めた試行錯誤が泥臭い。色々とツールを使い分けるのも面倒。 様々な作業に適した処理系(SQL、Python、Scala)を一緒に用いれるのが便利。

ひとつのノートブックで複数のインタープリタ(Jupyterでいうとカーネル?)を利用できます

ビルドイン機能で、わりと綺麗にグラフ化します

(でもグラフの種類がまだ少ない…)

みんな大好き、Sparkに標準対応しています

他にもFlinkに対応中

汎用的なフロントエンドに育てる予定のようです

他にも…

ニアリアルタイムのストリーム処理もできます(Spark Streaming利用)

コラボレーションツールとして頑張ろうとしているようです

Zeppelinのここが嬉しい

Page 9: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

9 Copyright © 2015 NTT DATA Corporation

Zeppelinの動かし方

• まだインストールパッケージがありません

• GitクローンしてMVNビルドします

– パッケージ化して再利用できます

• Q)Sparkクラスタは必要?

– デフォルトはローカルモードで単体動作

– 設定すればクラスタに接続できます

• Q)YARNは利用できる?

– 利用できます

– ノートブック起動時にアプリケーションがデプロイされて、アプリケーションが使いまわされます

公式ドキュメント

https://github.com/dobachi/ansible-hadoop

有志がメンテナンスしている、Hadoopなどの環境を 構築・運用するためのAnsibleプレイブック集の例

Page 10: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

10 Copyright © 2015 NTT DATA Corporation

本デモの構成イメージ

こんな感じで動きます(デモ)

ブラウザ Spark インタープリタ

YARN (疑似分散)

事情により 非力な環境ですみません

1)何か処理を投入

2)Spark実行基盤に伝わって AM

3)出力が戻ってきます

HDFS (疑似分散)

もちろんHDFSに対して 入出力できます

Page 11: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

11 Copyright © 2015 NTT DATA Corporation

「試行錯誤しながら考えをまとめていく」用途でノートブックは便利です

Zeppelinを利用すると気軽に分散処理の恩恵を受けられます

わりと綺麗な点が嬉しい

インタープリタが充実してくると面白いことになるかも

- 処理基盤系のインタプリタの他にも、Angularインタプリタが最近追加されました。 インタラクティブなUIも作成可能になりました。 (例: Angularによるフォームからデータを受け取って、Sparkに変数として渡す)

一方で足りない機能や改善したい点もまだまだ見られます。

ノートブックのエクスポート、インポート

グラフ種類 … ビルトインでないビジュアライズ機能を利用したい

まとめ

Page 12: Sparkをノートブックにまとめちゃおう。Zeppelinでね!(Hadoopソースコードリーディング 第19回 発表資料)

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