Last active
August 29, 2015 14:17
-
-
Save ytnobody/b65f2002306b07e64c42 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# BigQuery | |
### の解析結果を | |
# 別のストレージ | |
### に格納したいぞい | |
@ytnobody | |
--- | |
## わいとんさんです | |
@ytnobody | |
<img src="http://ytnobody.net/impress/perlbeginners15/img/ytnobody_char.png"> | |
* 相模原のおじさん。DaaS(Docker as a Service)おじさん。 | |
* Perl使い初めてから12年くらい。 | |
* 最近はUnity(C#)にご執心 | |
--- | |
## そもそもBigQueryとは? | |
* Googleが提供するビッグデータ解析サービス | |
* アクセスログみたいな蓄積型データを溜め込んでおき、SQL的な文法のQueryを発行して解析結果を得ることができる。 | |
* 個人レベルでは月500円もしない | |
(利用するデータ規模による。わいとんさんの個人blogアクセスログくらいならこの範囲内に収まってます) | |
--- | |
## そんな便利なBigQueryですが・・・ | |
この前、とある大御所P氏に訊かれました。 | |
--- | |
<img src="http://40.media.tumblr.com/ff1baebc9fa88b3e5bbdc5675c57fc90/tumblr_nf1d5v8KDn1seazwvo1_500.jpg"> | |
「BigQueryの解析結果をKibanaあたりでグラフ化したい」 | |
--- | |
## 調べてみたものの | |
事例なし。 | |
--- | |
## とりあえずKibanaに入門 | |
わかったこと | |
* バックエンドDBにElasticSearchを使っている | |
* docker image がある (devdb/kibana) | |
* どうやらElasticSearchのAPIにJSON形式でデータを食わせると、Kibanaでグラフ化出来る模様。 | |
--- | |
## 大まかに流れを考えてみた | |
1. BigQueryに渡すQueryと、ElasticSearchに渡すindex/typeを受けとる | |
2. bqコマンドを使ってBigQueryにQueryを投げ、結果をJSONで受けとる | |
3. ElasticSearchのAPI宛に、1で指定されたindex/typeに対するデータ追加リクエストをJSONで投げ込む。このときに2で得た結果をデータとして送り込むとよいはず! | |
--- | |
## つくった | |
[Qlover](https://github.com/ytnobody/Qlover) | |
--- | |
## 大まかな構造 | |
1. Qlover APIが ElasticSearch向けのindex/typeとBigQuery向けのQueryを受けとる | |
2. ジョブファイルを作る | |
3. Workerがジョブファイルを発見次第、BigQueryにQueryを投げ込んで、結果をElasticSearchに投げ込む | |
--- | |
## 一昨日作り始めたばかり!!! | |
--- | |
動くけど! | |
デモはちょっとできないなあ・・・ | |
--- | |
## 結論 | |
[BigQueryでクエリを発行して他のデータストアに丸投げするには](http://blog.ytnobody.net/entry/2015-03-20-18-43-49.html) | |
--- | |
Fin. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment