Storm の新機能について @HSCR #hadoopreading

>100 Views

March 08, 17

スライド概要

2017.03.03 Hadoopソースコードリーディング 第22回
https://www.eventbrite.com/e/hadoop-22-tickets-31987821435

profile-image

2023年10月からSpeaker Deckに移行しました。最新情報はこちらをご覧ください。 https://speakerdeck.com/lycorptech_jp

シェア

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

Storm の新機能について @ HSCR 2017年3月8日 ヤフー株式会社 小野和輝 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

2.

自己紹介 小野 和輝 (おのかずき) - 入社1年目 リアルタイム分散処理基盤の運用 / 保守 安定したリアルタイム分散処理基盤の提供 カッパとアザラシ推しの街に住んでいます 写真:アフロ 2 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

3.

今日お話する内容 Apache Storm 1.x 系の新機能 - 処理性能の向上 (レイテンシ60%軽減 / スループット 16倍) ! ファイルをトポロジーと一緒にデプロイしなくても ok ! デフォルトで HA に対応したよ ! ログの操作が簡単になったよ ! 2017/2/14 storm 1.0.3 release … 特に大きな変化は無いはず… 3 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

4.

Agenda Distributed Cache API Highly Available Nimbus Distributed Log Search Dynamic Log Level Settings 4 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

5.

Agenda Distributed Cache API Highly Available Nimbus Distributed Log Search Dynamic Log Level Settings 5 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

6.

Storm 0.9 系… トポロジーで読み込むデータの サイズが大きすぎる… (´・ω・`) トポロジーをクラスタに投入するまでに めっちゃ時間かかる… (´・ω・`) \(^o^)/ 6 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

7.

Distributed Cache API | 概要 ファイルを HDFS などに登録して外から呼び出す機能 概要 - BlobStore と呼ばれるインタフェースを使用 - Supervisor 起動時に BlobStore の Map を取得 BlobStore へ登録するファイル レプリケーション数の設定 $ storm blobstore create --file <登録するファイル> --acl o::rwa --replication-factor 4 key1 ACL の設定 - Secure な Storm クラスタでのみ有効 7 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

8.
[beta]
Distributed Cache API | 使ってみる
key1 で README.markdown を BlobStore へ登録
$ storm blobstore create --file README.markdown --acl o::rwa --replication-factor 4 key1
…

3283 [main] INFO o.a.s.c.blobstore - Creating key1 with ACL ("o::rwa")
3912 [main] INFO o.a.s.c.blobstore - Successfully created key1
BlobStore へ登録したファイルの確認
$ less ${storm.local.dir}/blobs/729/data_key1/data
Master Branch: [![Travis CI](https://travis-ci.org/apache/storm.svg?branch=master)] …
Storm is a distributed realtime computation system…
8

Co p yrig ht © 2 0 1 7

Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

9.

Distributed Cache API | 実装してみる 実装 内容 WordCountTopology へ単語のフィルタリング機能を実装 - BlobStore へ 単語のブラックリストを登録 - じゃぱりぱーく Java でつくりました RandomSentenceSpout WordCount SplitSentence - BlobStore からブラックリストを取得してフィルタリング - The / cow / jumped / over / moon をブラックリストへ登録 9 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

10.

Distributed Cache API | 実装してみる 送信する文章 blacklist に登録した単語は カウントしていない 6 the cow jumped over the moon / an apple a day keeps the doctor away four score and seven years ago / snow white and seven dwarfs 単語 出現数 単語 出現数 単語 出現数 the 0 ago 50 a 57 cow 0 four 51 day 57 jumped 0 snow 52 keeps 57 over 0 white 52 doctor 57 moon 0 dwarfs 54 away 57 score 50 an 57 and 101 year 50 apple 57 seven 101 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

11.

Agenda Distributed Cache API Highly Available Nimbus Distributed Log Search Dynamic Log Level Settings 11 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

12.

Storm 0.9 系… Nimbus が SPOF \(^o^)/ 12 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

13.

Highly Available Nimbus | 概要 概要 Nimbus での障害発生時にシステムの可用性が低下することを抑制 他 Nimbus トポロジーの投入 リーダー Nimbus - メタファイルをダウンロード - 投入されたトポロジーに関するメタファイルを生成 - 他 Nimbus へメタファイルを生成したことを通知 13 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

14.

Highly Available Nimbus | 検証 検証項目 検証結果 リーダーを再起動 リーダーが切り替わる リーダーを停止 リーダーが切り替わる リーダー停止 → トポロジーを操作 操作可能 リーダー停止 → トポロジー操作 → リーダー再起動 トポロジー操作後の状態を維持 新しいリーダーからトポロジーを投入 投入可能 全ての Nimbus を停止してリーダ以外の Nimbus を起動 Storm UI で Internal Server Error!!! 最後にリーダーだった Nimbus を起動する必要がある 14 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

15.

Agenda Distributed Cache API Highly Available Nimbus Distributed Log Search Dynamic Log Level Settings 15 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

16.

Storm 0.9 系… トポロジーのログが探しづらい \(^o^)/ 16 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

17.

Distributed Log Search | 概要 概要 Storm UI 上で特定のトポロジーのログを全 Worker から検索する機能 Worker A 上に存在する 検索対象のログ Worker B 上に存在する 検索対象のログ 17 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

18.

Distributed Log Search | 使い方 (1/2) 虫眼鏡アイコンを選択 18 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

19.

Distributed Log Search | 使い方 (2/2) 虫眼鏡アイコンを選択 - Topology Id : 検索したいトポロジーの ID - Search : 検索対象の文字列 19 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

20.

おまけ | Worker ごとのログ検索 Worker A 上で動作する wordcount に関するログ一覧 20 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

21.

Agenda Distributed Cache API Highly Available Nimbus Distributed Log Search Dynamic Log Level Settings (おまけ) 21 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

22.

Dynamic Log Level Setting | 概要 概要 22 トポロジーを起動したままログレベルを変更できる機能 - Storm UI / Storm CLI から変更可能 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

23.

Dynamic Log Level Setting | UI から変更 23 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

24.

Dynamic Log Level Setting | CLI で変更 ログレベルの設定を行う Storm CLI $ storm set_log_level <topology> -l <logger>=<Level>:<Timeout> $ storm set_log_level kazono-wordcount -l ROOT=ERROR:30 設定したログレベルの削除を行う Storm CLI $ storm set_log_level <topology> -r <logger> $ storm set_log_level kazono-wordcount -r ROOT 24 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

25.

まとめ 25 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

26.

まとめ Storm の新機能をしってるフレンズなんだね! 写真:アフロ 26 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .

27.

EOP 27 Co p yrig ht © 2 0 1 7 Yaho o Jap an Co rp o ratio n. All Rig hts Reserved .