最近流行りのワンイシューってやつに見せかけてちょっと寄り道します。タイトルの通りですが、Data Studio の知名度や、GASについて色々気づいた点も触れます。実は応用の効く内容です。
Google Data Studio ってなによ?
Googleが提供しているBIツールです。無料です。 正確には今は Google Data Portal というらしいですが、ググラビリティーが低いので、Data Studio で書きます。
メジャーなパブリッククラウドはたいていBIツールを持っていますが、無料ということも有りはっきり言ってかなりプア
です。ただし、無料の割には結構やれるので、私の周りにもファンはいます。
中立的な評価とは言えないかもしれませんが、だいたい下記に書いてあることに賛同します。
https://www.holistics.io/blog/google-data-studio-pricing-and-in-depth-reviews/
BIツールを入れるとなったら、誰が編集可能で、誰が閲覧だけでとか、ユーザーレベルごとにライセンス料金が異なるとか、結構な面倒事がありますが、無料でそれこそGoogle Docsとかと同じ感覚で使えるので敷居は低いです。私はBI入門レベルなので、偉そうなことは言えませんが、これで感じをつかむのはいいかもしれません。
今回やること
- Data Studio のデータコネクタを自作する
- GASのソースをCLIで更新する
- Data Studio でAthenaのデータを参照する(ようは作ったコネクタを使う)
その前に種明かし
今回のネタはGitHubでたまたま見つけたものを使うだけです。他人の褌で遊ぶだけです。わかってらっしゃる人は下のリンクを辿って貰えばOKで、このエントリの内容を読むのは時間の無駄です。神に感謝しましょう!
データコネクタの自作
随分と敷居の高いことのように見えますが、結構かんたんです。 すごく丁寧に書いてくれているので、下記を読みましょう。
https://codelabs.developers.google.com/codelabs/community-connectors
GASの組み方(仕様、インターフェース)と、参照のしかたが書いてあります。
GASのソースをCLIで更新する
clasp という謹製ツールができています!やったぜ!
使い方はググってください。勘で使えるレベルだと思いますが、Web上のコードとローカルのコードが上書きされるだとかディレクトリの配置だとかは調べたほうがいいかも。ローカル上のファイル拡張子は.js
で問題なし、このツールがPush時にgsに変換されます。
とりあえず手順だけ書きます。意味とかは自分で考えてください。
# とりあえず git clone とかで上記 datastudio-aws-athena-connector のコードを取ってくる clasp login #初回ログイン clasp create # standalone えらぶ エラーでコケたらメッセージ読む vim .clasp.json {"scriptId":"xxxxxxxxxxxxxx", "rootDir": "src"} clasp push clasp deploy #出てくるIDぽいのメモっとく
Data Studio でAthenaのデータを参照
自作のコネクタを指すときに、clasp deploy
の結果のIDを貼り付けます。
あとはよくご存知のCredentialsとかを入れて、データ参照できれば完了
脇道
aws.js(gs) について
今回の収穫の一番大きいのはこれです。できるのはわかっていたけど、こんなに小さくaws-api叩くのに最低限だけのセットを実装されていてこれはナイス。以前aws-sdk for javascriptを動かそうとしていたけど、XHRの実装がGASには無いので、これのラッパーかぁ、きついなと思って諦めた記憶がある。
まあ、そうだよね、これだけあれば動くよね。あとはテメエで aws api をググってなんとかしろやってことで。
clasp便利
これはいい!早いうちに決定版が出ないものかと思っていたけどようやくですな。helpとかも見てほしいけど、logs
とか使えそう。
サーバーレスはデプロイ方法がまだ定まってないとずっとずっと言われているけど、少なくとも私には 大体こんな感じ
で通用し、違和感なくコマンドが打てる。書いててただのポエム感もするが、世の中の大体こんな感じ
から大きく乖離していないと思うし、世の中の求めるものが少しずつ定まってきたと感じる。
data studio の進化
進化してると思います。出始めの印象はパブリッククラウド各社がBI出したんでとりあえずウチもってところだろぐらいでしたが、ちゃんと進化しててびっくりした。2テーブルをデータソースでくっつけたりとか昔はできなかった記憶。機能もバリバリではないものの、少しずつ追加されていて、有料版も見据えているのかもしれない。ちゃんとそだてる気、あるんだ。。と実感。