SlideShare a Scribd company logo
Google BigQueryを 
つかってみた! 
PerlCasual#06 
2014/10/24 
Yusuke Wada a.k.a. yusukebe
2つの問題意識
1. 開発サイドから 
• 例えばアクセスログが膨らんで活用できない 
1.サイズが大きい 
2.分散されている 
3.量が多いので解析するのが難しい 
• 何か困った時に過去のログが使えない... 
大きなログを簡単に追いたい!
2. ビジネスサイドから 
• 例えば行動ログ的な細かい指標が無い 
1.データベース上の静的な情報のみ 
2.Google Analyticsは非常に優秀だが... 
3.ユーザーに紐付く情報を解析したい 
指定したログを貯めてディレクターの人 
でも解析・分析でできるようにしたい!
と、その時... 
巷でビッグクエリーという言葉を 
聞くようになる...
とか!
Google BigQueryは巨大なデータを様々 
なフォーマットで放り込めてSQLライ 
クなクエリで問い合わせが可能でチョー 
高速!120億レコードに対するクエリ 
を5秒でフルスキャン!ステキー しか 
も利用料も安いと来たもんだっ!
ってことで 
Google BigQueryを使ってみた話+α
データを用意する 
業務で使っているログの場合 
• RPCへのアクセス+ユーザー識別子 
• 一旦JSON形式でファイルへ書き出す 
• 集約サーバーに投げる 
• fluent-plugin-bigquery で BigQuery へ挿入
Google BigQuery 
集約サーバ 
APIサーバAPIサーバAPIサーバ
データを用意する 
デモのためにTwitter APIを利用する 
• Streaming APIの「statuses/sample」を利用 
• publicなツィートのほんの一部を取得可能 
• fluent-plugin-twitter で簡単に 
• 最後はやはり fluent-plugin-bigquery を使う
Google BigQuery 
Tweet収集サーバ
スキーマは必要
Google BigQueryを使ってみた!
Google BigQueryは 
ブラウザから色々できる
例えば... 
• BigQuery Browser Tool (後述) 
• Googleアカウントベースで権限の追加 
• 利用状況の確認 
• APIクライアントの作成や削除 
• APIリクエストのモニタリング 
• 課金の管理 
フルマネージドで便利!
独自のSQLで問い合わせる 
https://cloud.google.com/bigquery/query-reference
ここで BigQuery 
Browser Tool 登場
SELECT COUNT(*) AS tweet_count 
FROM [twitter-stream-sample:twitter.tweet] 
ちなみに10月18日(土)から収集開始
22,289,497件 / 7.5秒
Browser Toolで出来ること 
• Queryの実行と結果を表形式で見る 
• Queryの保存とロード 
• CSV形式での結果のダウンロード 
• 新しいテーブルやDataSetの作成など 
必要最小限の機能が揃っている 
さらにBigQuery Connector for Excelを使えばExcelとの連動も可能
例えばディレクターが新しい 
KPIを図るためにQueryを 
構築することも考えられる
以上 Google BigQuery 
を使ってみた話終わり 
One More Thing
今作ってるモノ 
BigView 
For Visualizing Google BigQuery 
• 元々業務でBigQueryの結果を可視化するため 
• Browser Toolのある種拡張 
• BigQueryのThird-partyサービスは複雑で高価 
• 目指すところはKibanaっぽいところ?
Google BigQueryを使ってみた!
BigViewで出来ること 
• Googleアカウントでのログイン 
• 権限を持つプロジェクトへのクエリの実行 
• とある条件下での結果のチャート表示 
• Pieチャート 
• Lineチャート 
• クエリの保存 (未実装)
BigViewを使ってみる
Google BigQueryを使ってみた!
1時間ごとのツイート数 
をグラフにしてみる
SELECT USEC_TO_TIMESTAMP((UTC_USEC_TO_HOUR(created_at))) 
AS time, COUNT(*) AS tweet_count 
FROM [twitter-stream-sample:twitter.tweet] 
GROUP BY time 
ORDER BY time
Google BigQueryを使ってみた!
この辺はデータが欠落してます><
ユーザーの使用言語の割合を 
チャートにしてみる
SELECT user_lang, COUNT(user_lang) AS lang_count 
FROM [twitter-stream-sample:twitter.tweet] 
GROUP BY user_lang 
ORDER BY lang_count DESC
Google BigQueryを使ってみた!
Google BigQueryを使ってみた!
何らかのライセンスで 
パブリックに使ってもらう 
かもしれません!
まとめ
• Google BigQueryはブラウザで色々できちゃって 
楽だし安いそして早い/速い 
• 実装(連携?)はおおよそfluentdにお任せ 
• 活用できてないデータを活かすことが出来る 
• Browser ToolでディレクターがSQLを書く? 
• BigViewでシンプルなデータの視覚化を目指す 
• Googleの回し者ではないです ^^

More Related Content

PDF
Google Analytics のデータ分析ハンズオン
PDF
Android 開発の昔と今
PDF
AdTruthが生み出すGoogle アナリティクス プレミアムの新しい活用方法 第1部
PPTX
「デジタルマーケティングプラットホーム」 に進化するGoogle アナリティクス
PDF
これでBigQueryをドヤ顔で語れる!BigQueryの基本
PDF
BigQueryの課金、節約しませんか
PDF
SQLおじさん(自称)がBigQueryのStandard SQLを使ってみた
PDF
Perlcasual#6_2014-10-24
Google Analytics のデータ分析ハンズオン
Android 開発の昔と今
AdTruthが生み出すGoogle アナリティクス プレミアムの新しい活用方法 第1部
「デジタルマーケティングプラットホーム」 に進化するGoogle アナリティクス
これでBigQueryをドヤ顔で語れる!BigQueryの基本
BigQueryの課金、節約しませんか
SQLおじさん(自称)がBigQueryのStandard SQLを使ってみた
Perlcasual#6_2014-10-24

Viewers also liked (19)

PDF
HTTP2Study chronicle #http2conf
PDF
Google big query × Amazon redshift
PDF
Ansvar Community Insurance Proposal
PPT
企画案
PDF
How To Select Best Transmission For Your Vehicle
DOCX
The Test, Gillie, Gettysburg, 4 JUL 2014
PDF
福岡商工会議所講演会(2017年2月17日)
PDF
AIG Corporate Travel PDS
PDF
TreeFrog Frameworkの紹介
PDF
ホームセンターにある画像をVision apiで分析してみた話
PDF
BigQuery case study in Groovenauts & Dive into the DataflowJavaSDK
PDF
Ruby Kaja のご提案
PDF
オプショナル型。 〜 なんとなく付ける ! ? 撲滅
PDF
App engine admin apiを利用したgae%2 f go環境へのデプロイとgcp東京リージョンの性能評価
PDF
Gceハンズオン20150411イン福岡
PDF
Distributed Deep Q-Learning
PDF
Firebase によるリアルタイム モバイル開発 @gcpug 福岡
PDF
Inspection of CloudML Hyper Parameter Tuning
PDF
Webサービスのコンテンツパターン 或いはデータの活⽤
HTTP2Study chronicle #http2conf
Google big query × Amazon redshift
Ansvar Community Insurance Proposal
企画案
How To Select Best Transmission For Your Vehicle
The Test, Gillie, Gettysburg, 4 JUL 2014
福岡商工会議所講演会(2017年2月17日)
AIG Corporate Travel PDS
TreeFrog Frameworkの紹介
ホームセンターにある画像をVision apiで分析してみた話
BigQuery case study in Groovenauts & Dive into the DataflowJavaSDK
Ruby Kaja のご提案
オプショナル型。 〜 なんとなく付ける ! ? 撲滅
App engine admin apiを利用したgae%2 f go環境へのデプロイとgcp東京リージョンの性能評価
Gceハンズオン20150411イン福岡
Distributed Deep Q-Learning
Firebase によるリアルタイム モバイル開発 @gcpug 福岡
Inspection of CloudML Hyper Parameter Tuning
Webサービスのコンテンツパターン 或いはデータの活⽤
Ad

Similar to Google BigQueryを使ってみた! (9)

PPTX
「チーム開発実践入門」勉強会
PDF
GoogleAnalytics Tools クックブック
PPTX
Backlog事例と情報を残す活動。jbug広島#14 〜1人で解けないパズルは皆で解こうの会〜
PDF
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
PDF
20200629 データベース基礎~データベースの扱いとデータ設計~
PDF
Qgis2.18 基礎編
PPTX
DMTC 2nd プレゼンテーション
PPTX
企業等に蓄積されたデータを分析するための処理機能の提案
PDF
10+1 Things you should know about JavaScript testing
「チーム開発実践入門」勉強会
GoogleAnalytics Tools クックブック
Backlog事例と情報を残す活動。jbug広島#14 〜1人で解けないパズルは皆で解こうの会〜
初めてのデータ分析基盤構築をまかされた、その時何を考えておくと良いのか
20200629 データベース基礎~データベースの扱いとデータ設計~
Qgis2.18 基礎編
DMTC 2nd プレゼンテーション
企業等に蓄積されたデータを分析するための処理機能の提案
10+1 Things you should know about JavaScript testing
Ad

More from Yusuke Wada (20)

PDF
僕がつくった 70個のうちの48個のWebサービス達
PDF
スッとGoを取り入れる
PDF
東京脱出計画中
PDF
Extreme remote working
PDF
Podcastを支える技術、エンジニアのためのWebメディア、そしてCPAN
PDF
創造のプロセスを回せ!v0.01
PDF
It's not only about "REMOTE"
PDF
事故からはじまるスケールチャンス
PDF
とある Perl Monger の働き方
PDF
5 minutes - YAPC::Asia Tokyo 2014
PDF
Podcastをカジュアルに 支える技術
PDF
The master plan of scaling a web application
PDF
そのWebサービスは本当に「あたりまえ」だったのか?
PDF
Mojoliciousでつくる! Webアプリ入門
PDF
10 things to learn from Bokete
PDF
Inside Bokete: Web Application with Mojolicious and others
PDF
僕らの履歴書
PDF
僕らがWebサービスをつくる5つの理由
PDF
僕らがつくるための 「5W」について
PDF
「Webサービスのつくり方」 のつくり方
僕がつくった 70個のうちの48個のWebサービス達
スッとGoを取り入れる
東京脱出計画中
Extreme remote working
Podcastを支える技術、エンジニアのためのWebメディア、そしてCPAN
創造のプロセスを回せ!v0.01
It's not only about "REMOTE"
事故からはじまるスケールチャンス
とある Perl Monger の働き方
5 minutes - YAPC::Asia Tokyo 2014
Podcastをカジュアルに 支える技術
The master plan of scaling a web application
そのWebサービスは本当に「あたりまえ」だったのか?
Mojoliciousでつくる! Webアプリ入門
10 things to learn from Bokete
Inside Bokete: Web Application with Mojolicious and others
僕らの履歴書
僕らがWebサービスをつくる5つの理由
僕らがつくるための 「5W」について
「Webサービスのつくり方」 のつくり方

Google BigQueryを使ってみた!