Mais conteúdo relacionado Semelhante a 16.02.08_Hadoop Conferece Japan 2016_データサイエンスにおける一次可視化からのSpark on Elasticsearchの利用 (20) 16.02.08_Hadoop Conferece Japan 2016_データサイエンスにおける一次可視化からのSpark on Elasticsearchの利用3. 事例紹介
n 社内検証NWの (ほぼすべての)データを収集 / 可視化 / 分析
• 新技術の開発検証に使⽤ / ⽣活網の⼀種
ü 部署内200名、他部署数⼗名以上が利⽤
• 全社の検証網であり、NWオペレーションも⽇々発⽣
ü スモールISPだと考えて頂ければ
n ⽬的
• 利⽤状況の⾒える化 / 運⽤者の作業効率化 /(もう少し⾼度
な)NWオペレーション⾃動化の⾜がかり
n 取得データ /レコード数(⽇)
• トラフィック情報(NWフロー・MIB)/ 300K
• アクセスログ /10M
• NMS情報(Syslog やNW Metrics)/ 4M
• 無線LAN接続情報(社員の活動量)/ 25K
• オペレーションログ(チケット情報など)
• その他(Slack, Gitコミットログ)
3
4. アーキテクチャと分析フロー
4
データ蓄積 データ可視化 / 分析
データ発⽣元
ETL処理
うちでよくある話
①Elasticsearch + Kibana でとりあえず⼀次可視化
→ ②ディスカッション → ③統計処理 / 分析
→ ④⼆次可視化 + ダッシュボード化
ストレージ
レポート化
/ ⾒える化
5. いろいろ問題が…
n ⼀次可視化のあとが(あたりまえだけど)⼤変
• Rで分析
ü ⼤量のデータだと⾟い
ü ⼀時的なデータが複数存在し、管理が⼤変
• Elasticsearch のノウハウがチーム内に少なかった
ü データのETL処理に時間を要した
• データの蓄積 / ETLの関係上、Elasticsearchにしかデータ
がないものもある。。
• Kibanaだけだと、集計・統計処理が⾟い
5
Elasticsearch だけで集計作業はなんとか完結できないか…
⇒ elasticsearch-hadoop がある!
6. Elasticsearch-Hadoop
n Elasticsearch for Hadoop
• Elasticssearchをストレージとして利⽤できるようになる
• Spark、Hiveも。ライブラリ群をまとめて呼ぶ名称
n 2016/2/4時点で「ES-Hadoop 2.2」が最新
• Spark 1.6/ Elastcisearch 2.X 系対応
6
Elas%csearch for Hadoop : h1ps://www.elas%c.co/products/hadoop
7. Spark on Elasticsearch ことはじめ1
n インストール
• Spark (省略)
• Elasticsearch(省略)
ü Elasticsearch側が別ノードなら、network.publish_host等の設
定には注意
• ES-Hadoop ダウンロード
7
以上!
8. Spark on Elasticsearch ことはじめ2
n 動かしてみる(pysparkで)
• driver-pathを指定するだけ
• Elasticsearch上のノードとindexとmappingを指定
8
10. Spark on Elasticsearch 性能
n タスク
• レコード数 約1000万のNWフローデータ
ü srcIP, destIP, srcPort, destPort, bps/pps の情報がベース
• ESクラスタ(マスタノード3台, データノード6台)+ Spark(マスタ
ノード1台にローカル起動)
• 「シャーディング数」と「Sparkのスレッド数」をパラメータ
• 送信先AS を key に トラフィックの量の⽇別統計量算出
10
・シャーディング数 = Map数のため、シャーディング数
とスレッド数が同じところがMax。それ以上は伸びない
・シャーディング数が多いほど性能は良くなる?
11. Spark on Elasticsearch 感想
n そもそもHDFS使えば…?
• そのとおり。しかし、Elasticsearchにとりあえず⼊れて可
視化して⾒せれば⼗分なケースがほとんどで…。
n 性能は…?(参考⽂献が⼤変参考になりました)
• Elasticsearchのシャード数に引きづられる
ü Map の数 が シャード数に限定
• ES-Hadoop内で、RESTでESの情報取得処理が⼊る
n Elasticsearchに⼊れてからデータ直したい(⼊れなおしした
い)ってよく起こりませんか?
• そういうときに集計して⼊れるって良いかも
11
参考:Elas%csearch-hadoopをもうちょい調べて遅い理由が少しわかった
参考:Spark on elas%csearch-hadoop トライアル