RedashのAPI活用事例 / Use cases of Redash API
by
inodra
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
RedashのAPI活用事例 株式会社ココラブル 井上竜輝
Slide 2
Slide 2 text
自己紹介 ◆ 井上竜輝 ◆ 株式会社ココラブル所属 ◆ 広告APIを利用した広告運用の業務効率や自動化の ツール開発が主な業務 ◆ Redash歴 1年
Slide 3
Slide 3 text
アジェンダ ◆ RedashのAPIで出来ること ◆ RedashのAPI活用事例(2つほど) ◆ まとめ
Slide 4
Slide 4 text
RedashのAPIで出来ること
Slide 5
Slide 5 text
RedashのAPIで出来ること ◆ Redashで操作出来るほとんどのことはAPIで出来る ◆ クエリの実行や結果の取得 ◆ グループやユーザ操作 ◆ アラート情報の取得 ◆ その他色々
Slide 6
Slide 6 text
例1: Redashのクエリを取得する ◆ 各クエリのIDや名前、クエリ内容、作成者などのクエリ情報を一括で 取得することができる ◆ /api/queries/1?api_key=APIキー のようにクエリIDを渡して一つの クエリのみを取得することも可能
Slide 7
Slide 7 text
No content
Slide 8
Slide 8 text
例2: RedashのクエリID10の結果を取得する ◆ クエリ内容、結果を取得することができる ◆ results.csv と渡せばCSV形式での取得も可能
Slide 9
Slide 9 text
No content
Slide 10
Slide 10 text
ドキュメント ◆ API認証や使用例について記載 ◆ https://redash.io/help/user-guide/integrations-and-api ◆ 使用例としてスプレッドシートでの使用方法やSlackBotでの投稿に触れている ◆ サンプル数は少なめ ◆ エンドポイント ◆ redash/handlers/api.py ◆ 一番信用できて情報が多いのでここを見ると良さそう ◆ 詳細は各エンドポイントの実装を確認
Slide 11
Slide 11 text
RedashのAPI活用事例
Slide 12
Slide 12 text
事例その1
Slide 13
Slide 13 text
背景と課題 ◆ 背景 ◆ 広告運用者はRedashをデータソースとして使っている ◆ Excelでデータ落として加工してレポート作成をしている ◆ 課題 ◆ パラメータを変えた複数のクエリ結果をエクスポートするのが手間 ◆ 同じ作業の繰り返しが見受けられる
Slide 14
Slide 14 text
アプローチ -クエリ結果を取得してスプレッドシートやSlack出力- ◆ 1. Redashのクエリ結果をAPIで取得する ◆ 2. 取得したクエリ結果を必要なカラムのみ抽出または加工 ◆ 3. そのデータをスプレッドシートまたはSlackへ出力
Slide 15
Slide 15 text
使用した主なライブラリ ※実装はPythonです ◆ pandas ◆ redash-dynamic-query ◆ pandash ◆ google-api-python-client ◆ python-slackclient
Slide 16
Slide 16 text
事例その2
Slide 17
Slide 17 text
背景と課題 ◆ 背景 ◆ 既存クエリの改修が頻繁に発生する ◆ 複数人でRedashを運用している ◆ 課題 ◆ いつどのような変更をしたのか見れないことが何気に不便
Slide 18
Slide 18 text
アプローチ -クエリを取得してバックアップや差分管理を行う- ◆ 1. RedashのクエリをAPIで取得する ◆ 2. 取得したクエリ内容をファイルに書き出しGit管理 ※ また、書き出したファイルに対して「DBのどのテーブルを使っているか」 など、スクリプトを組むことでクエリの解析が容易にできる
Slide 19
Slide 19 text
使用した主なライブラリ ◆ redashman
Slide 20
Slide 20 text
まとめ
Slide 21
Slide 21 text
APIを活用することで… ◆ Redashのデータと連携したツール開発が容易に実現可能 ◆ データの持ち方はRedashに任せ、複雑なデータ加工や分析はPandasなどで好きに出来る ◆ Redashで解決されるデータ抽出などの業務を、さらにAPIによって自動化することで、 業務改善や効率化を進めることができる ◆ Redashを運用する上で発生する課題も、APIを活用することで解決できる