SlideShare a Scribd company logo
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
2017年3月15日
ヤフー株式会社 クエリエンジンチーム 曾臻
Prestoクエリログの保存/
分析機能の構築
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
Agenda
2
1. 自己紹介
2. 現在の課題
3. Prestoログの保存
4. Prestoログの分析
5. アーキテクチャ
6. まとめ
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
Agenda
3
1. 自己紹介
2. 現在の課題
3. Prestoログの保存
4. Prestoログの分析
5. アーキテクチャ
6. まとめ
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
1.自己紹介
4
名前 : 曾 臻
所属 :ヤフー株式会社 D&Sソリューション
統括本部 クエリエンジン
経歴 :
Presto開発・運用
広告システム開発
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
Agenda
5
1. 自己紹介
2. 現在の課題
3. Prestoログの保存
4. Prestoログの分析
5. アーキテクチャ
6. まとめ
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
2.現在の課題
6
 Prestoを再起動したらクエリログが消える
 クエリ情報の保存は上限がある
 JVMのMetrics分析が難しい
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
Agenda
7
1. 自己紹介
2. 現在の課題
3. Prestoログの保存
4. Prestoログの分析
5. アーキテクチャ
6. まとめ
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
3.Prestoログの保存:クエリログ
8
最初の試み
• SYSTEMコネクターでクエリの履歴を取得
• 定期的にクエリ情報をほかのデータベースに保存
参考:https://prestodb.io/docs/current/connector/system.html
SELECT
*
FROM
system.runtime.queries;
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
3.Prestoログの保存:クエリログ
9
データの保存はまだ課題:
• 保存前にクラスターを再起動したら、クエリログが消える
• 頻繁すぎると、クラスターの負担になる
解決方法:
• クエリ実行でトリガーする
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
3.Prestoログの保存:クエリログ
10
去年からTeradata、日本テラデータとCoDevを行っている
アメリカ出張でBootcampを実施
Prestoの内部構成、開発手法等を教えてもらった
ハーバード大学も見学(頭が少し良くなった気がする)
日本に戻った後でも活発的に交流している
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
3.Prestoログの保存:クエリログ
11
コミュニティのエンジニアと意見を交換
1. EventListenerでクエリログ保存
2. JMXコネクターでJVMのMetrics保存
EventListener: https://prestodb.io/docs/current/develop/event-listener.html
JMX: https://prestodb.io/docs/current/connector/jmx.html
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
3.Prestoログの保存:クエリログ
12
PrestoのPluginを開発し、
クエリ情報をJSONファイルに保存
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
3.Prestoログの保存:クエリログ
13
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
3.Prestoログの保存:クエリログ
14
クエリログの保存:
Frontend
UI
Presto
Coordinator
Presto
Worker
Presto
Worker
Presto
Worker
Object
storage
(2) Run queries and write logs
(3)Use Fluentd plugin
to send logs(1) HTTP requests
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
3.Prestoログの保存:JMX
15
JVM情報もPresto JMXコネクターを
利用して、簡単に取れた。
しかしどうやって保存?
参考:https://prestodb.io/docs/current/connector/jmx.html
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
3.Prestoログの保存:JMX
16
JMX情報保存の流れ:
JVM Metrics
→Fluentd plugin + Presto JMX Connector
→ Fluentd s3 plugin
→ 社内Object Storage
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
3.Prestoログの保存:JMX
17
JMX情報の保存:
Presto
Coordinator
Presto
Worker
Presto
Worker
Presto
Worker
Object
storage
(2) Run queries and write logs
(3)Use Fluentd plugin
to send logs
(1) JMX Connector(HTTP requests)
select * from "java.lang:type=operatingsystem"
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
Agenda
18
1. 自己紹介
2. 現在の課題
3. Prestoログの保存
4. Prestoログの分析
5. アーキテクチャ
6. まとめ
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
4.Prestoログの分析
19
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
4.Prestoログの分析
20
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
4.Prestoログの分析
21
分析
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
4.Prestoログの分析
22
• JSONをObject Storageに保存
• Hive MetastoreでTableを作成
• SQL文で、Slow Query/リソース利
用の分析
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
Agenda
23
1. 自己紹介
2. 自己紹介現在の課題
3. Prestoログの保存
4. Prestoログの分析
5. アーキテクチャ
6. まとめ
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
5.アーキテクチャ
24
Frontend
UI
Presto
Coordinator
Presto
Worker
Presto
Worker
Presto
Worker
Object
storage
(2) Run queries and write logs
(3)Use Fluentd plugin
to send logs
(1-1) SQL Query(HTTP requests)
(1-2)SQL with JMX Connector (HTTP requests)
Hive
metastore
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
Agenda
25
1. 自己紹介
2. 現在の課題
3. Prestoログの保存
4. Prestoログの分析
5. アーキテクチャ
6. まとめ
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
6.まとめ
26
1)課題解決
• クエリ保存:Presto plugin 開発
• JMX情報保存:
JMX connector + fluentd plugin活用
2)OSSコミュニティとの交流
• 機能追加が順調にできた
• コミュニティへの還元もしていきたい
Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.
EOP

More Related Content

PDF
LINE LIVE のチャットが
30,000+/min のコメント投稿を捌くようになるまで
LINE Corporation
 
PDF
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
Y Watanabe
 
PDF
Dockerイメージの理解とコンテナのライフサイクル
Masahito Zembutsu
 
PDF
マイクロサービスバックエンドAPIのためのRESTとgRPC
disc99_
 
PDF
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
onozaty
 
PDF
Laravel × レイヤードアーキテクチャを実践して得られた知見と反省 / Practice of Laravel with layered archi...
Shohei Okada
 
PDF
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
Yahoo!デベロッパーネットワーク
 
PDF
Riverpodでテストを書こう
Shinnosuke Tokuda
 
LINE LIVE のチャットが
30,000+/min のコメント投稿を捌くようになるまで
LINE Corporation
 
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
Y Watanabe
 
Dockerイメージの理解とコンテナのライフサイクル
Masahito Zembutsu
 
マイクロサービスバックエンドAPIのためのRESTとgRPC
disc99_
 
今からでも遅くないDBマイグレーション - Flyway と SchemaSpy の紹介 -
onozaty
 
Laravel × レイヤードアーキテクチャを実践して得られた知見と反省 / Practice of Laravel with layered archi...
Shohei Okada
 
実運用して分かったRabbit MQの良いところ・気をつけること #jjug
Yahoo!デベロッパーネットワーク
 
Riverpodでテストを書こう
Shinnosuke Tokuda
 

What's hot (20)

PPTX
RLSを用いたマルチテナント実装 for Django
Takayuki Shimizukawa
 
PDF
コンテナにおけるパフォーマンス調査でハマった話
Yuta Shimada
 
PDF
[AKIBA.AWS] VGWのルーティング仕様
Shuji Kikuchi
 
PDF
各種データベースの特徴とパフォーマンス比較
株式会社オプト 仙台ラボラトリ
 
PDF
Serf / Consul 入門 ~仕事を楽しくしよう~
Masahito Zembutsu
 
PPTX
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
NTT DATA Technology & Innovation
 
PPTX
Amazon EKS によるスマホゲームのバックエンド運用事例
gree_tech
 
PDF
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
 
PDF
マーブル図で怖くないRxJS
bitbank, Inc. Tokyo, Japan
 
PDF
TIME_WAITに関する話
Takanori Sejima
 
PDF
俺のTerraform CI/CD ライフサイクル
HonMarkHunt
 
PDF
PostgreSQLの関数属性を知ろう
kasaharatt
 
PPTX
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
 
PDF
クラウド環境下におけるAPIリトライ設計
Kouji YAMADA
 
PDF
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
都元ダイスケ Miyamoto
 
PDF
Spring Data RESTを利用したAPIの設計と、作り直しまでの道のり
Rakuten Group, Inc.
 
PDF
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
Yuji Kubota
 
PDF
initramfsについて
Kazuhiro Nishiyama
 
PDF
PlaySQLAlchemy: SQLAlchemy入門
泰 増田
 
PDF
初心者向けCTFのWeb分野の強化法
kazkiti
 
RLSを用いたマルチテナント実装 for Django
Takayuki Shimizukawa
 
コンテナにおけるパフォーマンス調査でハマった話
Yuta Shimada
 
[AKIBA.AWS] VGWのルーティング仕様
Shuji Kikuchi
 
各種データベースの特徴とパフォーマンス比較
株式会社オプト 仙台ラボラトリ
 
Serf / Consul 入門 ~仕事を楽しくしよう~
Masahito Zembutsu
 
AWS Organizations連携サービスの罠(Security JAWS 第26回 発表資料)
NTT DATA Technology & Innovation
 
Amazon EKS によるスマホゲームのバックエンド運用事例
gree_tech
 
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
 
マーブル図で怖くないRxJS
bitbank, Inc. Tokyo, Japan
 
TIME_WAITに関する話
Takanori Sejima
 
俺のTerraform CI/CD ライフサイクル
HonMarkHunt
 
PostgreSQLの関数属性を知ろう
kasaharatt
 
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
 
クラウド環境下におけるAPIリトライ設計
Kouji YAMADA
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
都元ダイスケ Miyamoto
 
Spring Data RESTを利用したAPIの設計と、作り直しまでの道のり
Rakuten Group, Inc.
 
Garbage First Garbage Collection (G1 GC) #jjug_ccc #ccc_cd6
Yuji Kubota
 
initramfsについて
Kazuhiro Nishiyama
 
PlaySQLAlchemy: SQLAlchemy入門
泰 増田
 
初心者向けCTFのWeb分野の強化法
kazkiti
 
Ad

Viewers also liked (20)

PDF
Presto in Yahoo! JAPAN #yjdsnight
Yahoo!デベロッパーネットワーク
 
PDF
Yahoo! JAPANが持つデータ分析ソリューションの紹介 #yjdsnight
Yahoo!デベロッパーネットワーク
 
PDF
Yahoo! JAPANを支えるビッグデータプラットフォーム技術
Yahoo!デベロッパーネットワーク
 
PDF
Yahoo! JAPANのデータ基盤とHadoop #dbts2016
Yahoo!デベロッパーネットワーク
 
PDF
Apache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreading
Yahoo!デベロッパーネットワーク
 
PDF
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
Recruit Technologies
 
PDF
Rakutenとsreと私 yanagimoto koichi
Rakuten Group, Inc.
 
PDF
What i learned from translation of the sre ryuji tamagawa
Rakuten Group, Inc.
 
PDF
Kafka Connect(Japanese)
Roman Shtykh
 
PDF
銀行ロビーアシスタント
Recruit Technologies
 
PDF
新卒2年目が鍛えられたコードレビュー道場
Recruit Technologies
 
PPTX
ビックデータ処理技術の全体像とリクルートでの使い分け
Tetsutaro Watanabe
 
PDF
Yahoo! JAPANにおけるオンライン機械学習実例 #streamctjp
Yahoo!デベロッパーネットワーク
 
PDF
IT業界のリーディングカンパニーとして描く「少し先の未来」〜Yahoo! JAPANの事例を通して〜#a11yfuture
Yahoo!デベロッパーネットワーク
 
PDF
Life of an enginner in rakuten osaka diarmaid lindsay
Rakuten Group, Inc.
 
PDF
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Recruit Technologies
 
PDF
ユーザー企業内製CSIRTにおける対応のポイント
Recruit Technologies
 
PDF
LT(自由)
Recruit Technologies
 
PDF
Tableau活用4年の軌跡
Recruit Technologies
 
PDF
COBOL to Apache Spark
Rakuten Group, Inc.
 
Presto in Yahoo! JAPAN #yjdsnight
Yahoo!デベロッパーネットワーク
 
Yahoo! JAPANが持つデータ分析ソリューションの紹介 #yjdsnight
Yahoo!デベロッパーネットワーク
 
Yahoo! JAPANを支えるビッグデータプラットフォーム技術
Yahoo!デベロッパーネットワーク
 
Yahoo! JAPANのデータ基盤とHadoop #dbts2016
Yahoo!デベロッパーネットワーク
 
Apache Big Data Miami 2017 - Hadoop Source Code Reading #23 #hadoopreading
Yahoo!デベロッパーネットワーク
 
Company Recommendation for New Graduates via Implicit Feedback Multiple Matri...
Recruit Technologies
 
Rakutenとsreと私 yanagimoto koichi
Rakuten Group, Inc.
 
What i learned from translation of the sre ryuji tamagawa
Rakuten Group, Inc.
 
Kafka Connect(Japanese)
Roman Shtykh
 
銀行ロビーアシスタント
Recruit Technologies
 
新卒2年目が鍛えられたコードレビュー道場
Recruit Technologies
 
ビックデータ処理技術の全体像とリクルートでの使い分け
Tetsutaro Watanabe
 
Yahoo! JAPANにおけるオンライン機械学習実例 #streamctjp
Yahoo!デベロッパーネットワーク
 
IT業界のリーディングカンパニーとして描く「少し先の未来」〜Yahoo! JAPANの事例を通して〜#a11yfuture
Yahoo!デベロッパーネットワーク
 
Life of an enginner in rakuten osaka diarmaid lindsay
Rakuten Group, Inc.
 
Struggling with BIGDATA -リクルートおけるデータサイエンス/エンジニアリング-
Recruit Technologies
 
ユーザー企業内製CSIRTにおける対応のポイント
Recruit Technologies
 
LT(自由)
Recruit Technologies
 
Tableau活用4年の軌跡
Recruit Technologies
 
COBOL to Apache Spark
Rakuten Group, Inc.
 
Ad

Similar to Prestoクエリログの保存/分析機能の構築 #yjdsnight (20)

PDF
Dataworks Summit 2017 SanJose StreamProcessing - Hadoop Source Code Reading #...
Yahoo!デベロッパーネットワーク
 
PDF
Storm の新機能について @HSCR #hadoopreading
Yahoo!デベロッパーネットワーク
 
PDF
市場で勝ち続けるための品質とテストの技術①
Yahoo!デベロッパーネットワーク
 
PDF
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo!デベロッパーネットワーク
 
PDF
ヤフーの広告レポートシステムをSpring Cloud Stream化するまで #jjug_ccc #ccc_a4
Yahoo!デベロッパーネットワーク
 
PDF
Yahoo! JAPANのサービス開発を10倍早くした社内PaaS構築の今とこれから
Yahoo!デベロッパーネットワーク
 
PPTX
ヤフーのロギングSDKの挑戦〜データドリブン企業を目指して〜 #yjdsnight
Yahoo!デベロッパーネットワーク
 
PDF
Design pattern in presto source code
Yahoo!デベロッパーネットワーク
 
PDF
Dataworks Summit SJ QueryEngine - Hadoop Source Code Reading #23 #hadoopreading
Yahoo!デベロッパーネットワーク
 
PDF
ヤフオク!の快適なカスタマー体験を支えるモバイルアプリのライブアップデート技術
Yahoo!デベロッパーネットワーク
 
PDF
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)セッション①
Yahoo!デベロッパーネットワーク
 
PPTX
大規模インフラで考える インフラチームの未来
Masayuki Ueda
 
PDF
Go + Pulsar WebSocket APIの利用事例 #pulsarjp
Yahoo!デベロッパーネットワーク
 
PDF
僕とヤフーと時々Teradata #prestodb
Yahoo!デベロッパーネットワーク
 
PDF
Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017)
Yahoo!デベロッパーネットワーク
 
PPTX
Elasticsearch 5.2とJava Clientで戯れる #elasticsearchjp
Yahoo!デベロッパーネットワーク
 
PDF
AMPと広告とOpenRTBと #yjmu
Yahoo!デベロッパーネットワーク
 
PDF
Automation of Rolling Upgrade of Hadoop Cluster without Data Lost and Job Fai...
Yahoo!デベロッパーネットワーク
 
PDF
行列ができるECサイトの悩み~ショッピングや決済の技術的問題と処方箋
Yahoo!デベロッパーネットワーク
 
PDF
Hive on Tezのベストプラクティス
Yahoo!デベロッパーネットワーク
 
Dataworks Summit 2017 SanJose StreamProcessing - Hadoop Source Code Reading #...
Yahoo!デベロッパーネットワーク
 
Storm の新機能について @HSCR #hadoopreading
Yahoo!デベロッパーネットワーク
 
市場で勝ち続けるための品質とテストの技術①
Yahoo!デベロッパーネットワーク
 
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
Yahoo!デベロッパーネットワーク
 
ヤフーの広告レポートシステムをSpring Cloud Stream化するまで #jjug_ccc #ccc_a4
Yahoo!デベロッパーネットワーク
 
Yahoo! JAPANのサービス開発を10倍早くした社内PaaS構築の今とこれから
Yahoo!デベロッパーネットワーク
 
ヤフーのロギングSDKの挑戦〜データドリブン企業を目指して〜 #yjdsnight
Yahoo!デベロッパーネットワーク
 
Design pattern in presto source code
Yahoo!デベロッパーネットワーク
 
Dataworks Summit SJ QueryEngine - Hadoop Source Code Reading #23 #hadoopreading
Yahoo!デベロッパーネットワーク
 
ヤフオク!の快適なカスタマー体験を支えるモバイルアプリのライブアップデート技術
Yahoo!デベロッパーネットワーク
 
Yahoo! JAPAN MeetUp #8 (インフラ技術カンファレンス)セッション①
Yahoo!デベロッパーネットワーク
 
大規模インフラで考える インフラチームの未来
Masayuki Ueda
 
Go + Pulsar WebSocket APIの利用事例 #pulsarjp
Yahoo!デベロッパーネットワーク
 
僕とヤフーと時々Teradata #prestodb
Yahoo!デベロッパーネットワーク
 
Dragon: A Distributed Object Storage at Yahoo! JAPAN (WebDB Forum 2017)
Yahoo!デベロッパーネットワーク
 
Elasticsearch 5.2とJava Clientで戯れる #elasticsearchjp
Yahoo!デベロッパーネットワーク
 
AMPと広告とOpenRTBと #yjmu
Yahoo!デベロッパーネットワーク
 
Automation of Rolling Upgrade of Hadoop Cluster without Data Lost and Job Fai...
Yahoo!デベロッパーネットワーク
 
行列ができるECサイトの悩み~ショッピングや決済の技術的問題と処方箋
Yahoo!デベロッパーネットワーク
 
Hive on Tezのベストプラクティス
Yahoo!デベロッパーネットワーク
 

More from Yahoo!デベロッパーネットワーク (20)

PDF
ゼロから始める転移学習
Yahoo!デベロッパーネットワーク
 
PDF
継続的なモデルモニタリングを実現するKubernetes Operator
Yahoo!デベロッパーネットワーク
 
PDF
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
Yahoo!デベロッパーネットワーク
 
PDF
オンプレML基盤on Kubernetes パネルディスカッション
Yahoo!デベロッパーネットワーク
 
PDF
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
Yahoo!デベロッパーネットワーク
 
PDF
Persistent-memory-native Database High-availability Feature
Yahoo!デベロッパーネットワーク
 
PDF
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
Yahoo!デベロッパーネットワーク
 
PDF
eコマースと実店舗の相互利益を目指したデザイン #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
ビッグデータから人々のムードを捉える #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
サイエンス領域におけるMLOpsの取り組み #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
「新しいおうち探し」のためのAIアシスト検索 #yjtc
Yahoo!デベロッパーネットワーク
 
PDF
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
Yahoo!デベロッパーネットワーク
 
ゼロから始める転移学習
Yahoo!デベロッパーネットワーク
 
継続的なモデルモニタリングを実現するKubernetes Operator
Yahoo!デベロッパーネットワーク
 
ヤフーでは開発迅速性と品質のバランスをどう取ってるか
Yahoo!デベロッパーネットワーク
 
オンプレML基盤on Kubernetes パネルディスカッション
Yahoo!デベロッパーネットワーク
 
オンプレML基盤on Kubernetes 〜Yahoo! JAPAN AIPF〜
Yahoo!デベロッパーネットワーク
 
Persistent-memory-native Database High-availability Feature
Yahoo!デベロッパーネットワーク
 
データの価値を最大化させるためのデザイン~データビジュアライゼーションの方法~ #devsumi 17-E-2
Yahoo!デベロッパーネットワーク
 
eコマースと実店舗の相互利益を目指したデザイン #yjtc
Yahoo!デベロッパーネットワーク
 
ヤフーを支えるセキュリティ ~サイバー攻撃を防ぐエンジニアの仕事とは~ #yjtc
Yahoo!デベロッパーネットワーク
 
Yahoo! JAPANのIaaSを支えるKubernetesクラスタ、アップデート自動化への挑戦 #yjtc
Yahoo!デベロッパーネットワーク
 
ビッグデータから人々のムードを捉える #yjtc
Yahoo!デベロッパーネットワーク
 
サイエンス領域におけるMLOpsの取り組み #yjtc
Yahoo!デベロッパーネットワーク
 
ヤフーのAIプラットフォーム紹介 ~AIテックカンパニーを支えるデータ基盤~ #yjtc
Yahoo!デベロッパーネットワーク
 
Yahoo! JAPAN Tech Conference 2022 Day2 Keynote #yjtc
Yahoo!デベロッパーネットワーク
 
新技術を使った次世代の商品の見せ方 ~ヤフオク!のマルチビュー機能~ #yjtc
Yahoo!デベロッパーネットワーク
 
PC版Yahoo!メールリニューアル ~サービスのUI/UX統合と改善プロセス~ #yjtc
Yahoo!デベロッパーネットワーク
 
モブデザインによる多職種チームのコミュニケーション改善 #yjtc
Yahoo!デベロッパーネットワーク
 
「新しいおうち探し」のためのAIアシスト検索 #yjtc
Yahoo!デベロッパーネットワーク
 
ユーザーの地域を考慮した検索入力補助機能の改善の試み #yjtc
Yahoo!デベロッパーネットワーク
 

Recently uploaded (7)

PDF
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
PDF
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
PDF
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
PDF
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
PPTX
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
PDF
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
PDF
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 
20250729_Devin-for-Enterprise
Masaki Yamakawa
 
【学会聴講報告】CVPR2025からみるVision最先端トレンド / CVPR2025 report
Sony - Neural Network Libraries
 
20250730_QiitaBash_LT登壇資料_PDC_Kurashina.pdf
pdckurashina
 
20250726_Devinで変えるエンプラシステム開発の未来
Masaki Yamakawa
 
baserCMS『カスタムコンテンツ』徹底活用術〜あなただけの管理画面を自由自在に〜
Ryuji Egashira
 
TaketoFujikawa_ComicComputing12th_inKumamoto
Matsushita Laboratory
 
MahiroYoshida_セリフに着目したキャラクタロール推定に関する基礎検討_sigcc12th2025
Matsushita Laboratory
 

Prestoクエリログの保存/分析機能の構築 #yjdsnight

  • 1. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 2017年3月15日 ヤフー株式会社 クエリエンジンチーム 曾臻 Prestoクエリログの保存/ 分析機能の構築
  • 2. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. Agenda 2 1. 自己紹介 2. 現在の課題 3. Prestoログの保存 4. Prestoログの分析 5. アーキテクチャ 6. まとめ
  • 3. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. Agenda 3 1. 自己紹介 2. 現在の課題 3. Prestoログの保存 4. Prestoログの分析 5. アーキテクチャ 6. まとめ
  • 4. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 1.自己紹介 4 名前 : 曾 臻 所属 :ヤフー株式会社 D&Sソリューション 統括本部 クエリエンジン 経歴 : Presto開発・運用 広告システム開発
  • 5. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. Agenda 5 1. 自己紹介 2. 現在の課題 3. Prestoログの保存 4. Prestoログの分析 5. アーキテクチャ 6. まとめ
  • 6. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 2.現在の課題 6  Prestoを再起動したらクエリログが消える  クエリ情報の保存は上限がある  JVMのMetrics分析が難しい
  • 7. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. Agenda 7 1. 自己紹介 2. 現在の課題 3. Prestoログの保存 4. Prestoログの分析 5. アーキテクチャ 6. まとめ
  • 8. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 3.Prestoログの保存:クエリログ 8 最初の試み • SYSTEMコネクターでクエリの履歴を取得 • 定期的にクエリ情報をほかのデータベースに保存 参考:https://prestodb.io/docs/current/connector/system.html SELECT * FROM system.runtime.queries;
  • 9. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 3.Prestoログの保存:クエリログ 9 データの保存はまだ課題: • 保存前にクラスターを再起動したら、クエリログが消える • 頻繁すぎると、クラスターの負担になる 解決方法: • クエリ実行でトリガーする
  • 10. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 3.Prestoログの保存:クエリログ 10 去年からTeradata、日本テラデータとCoDevを行っている アメリカ出張でBootcampを実施 Prestoの内部構成、開発手法等を教えてもらった ハーバード大学も見学(頭が少し良くなった気がする) 日本に戻った後でも活発的に交流している
  • 11. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 3.Prestoログの保存:クエリログ 11 コミュニティのエンジニアと意見を交換 1. EventListenerでクエリログ保存 2. JMXコネクターでJVMのMetrics保存 EventListener: https://prestodb.io/docs/current/develop/event-listener.html JMX: https://prestodb.io/docs/current/connector/jmx.html
  • 12. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 3.Prestoログの保存:クエリログ 12 PrestoのPluginを開発し、 クエリ情報をJSONファイルに保存
  • 13. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 3.Prestoログの保存:クエリログ 13
  • 14. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 3.Prestoログの保存:クエリログ 14 クエリログの保存: Frontend UI Presto Coordinator Presto Worker Presto Worker Presto Worker Object storage (2) Run queries and write logs (3)Use Fluentd plugin to send logs(1) HTTP requests
  • 15. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 3.Prestoログの保存:JMX 15 JVM情報もPresto JMXコネクターを 利用して、簡単に取れた。 しかしどうやって保存? 参考:https://prestodb.io/docs/current/connector/jmx.html
  • 16. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 3.Prestoログの保存:JMX 16 JMX情報保存の流れ: JVM Metrics →Fluentd plugin + Presto JMX Connector → Fluentd s3 plugin → 社内Object Storage
  • 17. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 3.Prestoログの保存:JMX 17 JMX情報の保存: Presto Coordinator Presto Worker Presto Worker Presto Worker Object storage (2) Run queries and write logs (3)Use Fluentd plugin to send logs (1) JMX Connector(HTTP requests) select * from "java.lang:type=operatingsystem"
  • 18. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. Agenda 18 1. 自己紹介 2. 現在の課題 3. Prestoログの保存 4. Prestoログの分析 5. アーキテクチャ 6. まとめ
  • 19. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 4.Prestoログの分析 19
  • 20. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 4.Prestoログの分析 20
  • 21. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 4.Prestoログの分析 21 分析
  • 22. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 4.Prestoログの分析 22 • JSONをObject Storageに保存 • Hive MetastoreでTableを作成 • SQL文で、Slow Query/リソース利 用の分析
  • 23. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. Agenda 23 1. 自己紹介 2. 自己紹介現在の課題 3. Prestoログの保存 4. Prestoログの分析 5. アーキテクチャ 6. まとめ
  • 24. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 5.アーキテクチャ 24 Frontend UI Presto Coordinator Presto Worker Presto Worker Presto Worker Object storage (2) Run queries and write logs (3)Use Fluentd plugin to send logs (1-1) SQL Query(HTTP requests) (1-2)SQL with JMX Connector (HTTP requests) Hive metastore
  • 25. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. Agenda 25 1. 自己紹介 2. 現在の課題 3. Prestoログの保存 4. Prestoログの分析 5. アーキテクチャ 6. まとめ
  • 26. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. 6.まとめ 26 1)課題解決 • クエリ保存:Presto plugin 開発 • JMX情報保存: JMX connector + fluentd plugin活用 2)OSSコミュニティとの交流 • 機能追加が順調にできた • コミュニティへの還元もしていきたい
  • 27. Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved.Copyrig ht © 2017 Yahoo Japan Corporation. All Rig hts Reserved. EOP