presto in yahoo! japan #yjdsnight

Post on 21-Mar-2017

223 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

2017年3月15日

岡田 幸大

Presto in Y!J

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

自己紹介

• 岡田幸大, #新卒2009

• github: @yuokada

• Like: #golang #python

• よく使うY!のサービス: #ヤフオク

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

自己紹介

• 2009/07~2013/03コメント機能 BE開発

• 2013/04~2016/09Web ビーコン 運用・開発

• 2016/10~Presto Cluster 構築・運用

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

アジェンダ

• Yahoo! Japanのマルチビッグデータ

• Prestoとは? - 事例紹介

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

Y!J is Multi Big Data Company

サービス数は100以上

メディア、コマース、金融・決済など、幅広くサービスを展開

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

Y!J is Multi Big Data Company

データのバラエティも100以上

検索キーワード、ビュー/クリック、コンテンツ、購買情報、など、多様なデータを活用可能

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

Y!J is Multi Big Data Company

8

月間674億PV / 1日9,000万UB

PC + その他

281億 PV

Smart Phone

393億 PVFY16-3Q事業指標 http://ir.yahoo.co.jp/jp/archives/present/2016q3/index.html

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

Y!J is Multi Big Data Company

NoSQLHadoop RDB

7,000 nodes

150 PB

800DBs

2,000nodes

Object

Storage

1,500nodes

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

Y!J is Multi Big Data Company

様々なPFにあるデータをインタラクティブに分析する必要がある

これらのマルチビッグデータを活かすには?

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

Y!J is Multi Big Data Company

そこで選んだのは、

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

What is Presto?

• Facebook製OSS

• 分散クエリエンジン

• インタラクティブなクエリに最適化されたアーキテクチャ

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

What is Presto?

Presto Users

• Facebook

• Netflix

• Amazon

• etchttps://github.com/prestodb/presto/wiki/Presto-Users

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

What is Presto?

source: https://prestodb.io/overview.html

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

What is Presto?

✅ Pros• コネクターを追加することで多種多様なデータPFと接続出来る

• データをメモリ上で処理するためクエリの実行が高速

• ANSI SQL サポート• UDF(ユーザー定義関数) サポート

https://prestodb.io/docs/current/connector.html

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

What is Presto?

• データがメモリから溢れた場合、クエリの実行に失敗

• ノードの障害時もクエリが失敗• 失敗時、自動での再実行無し

❌ Cons

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

Prestoクラスターの導入例

• Object Storage上のログの分析• 障害発生時の調査を目的

• ログの形式はjson+gz

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

Prestoクラスターの導入例

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

Prestoクラスターの導入例

このクラスターを構築/運用したことでPrestoの課題が見えてきた

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

Prestoクラスターの導入例

• 原因1. クエリ実行の度にファイルを取得2. jsonフォーマットの場合、

ファイル全体を取得

課題: ネットワーク帯域の圧迫

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

Prestoクラスターの導入例

もちろん、コミュニティと協力して!

さらに、Pull-Requestで!

この課題をどう解決するのか?

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

まとめ

• インタラクティブなクエリはPresto

• クラスター運用するための課題はまだまだ沢山

• 課題を解決するためにヤフーは積極的にOSSへコントリビュート

Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved .

EOP

top related