Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
RedashのAPI活用事例 / Use cases of Redash API
Search
inodra
July 10, 2018
Technology
3
6.5k
RedashのAPI活用事例 / Use cases of Redash API
Redash Meetup 3.0.0 の発表資料です。
inodra
July 10, 2018
Tweet
Share
Other Decks in Technology
See All in Technology
ソフトウェアテストのAI活用_ver1.25
fumisuke
1
570
CDKTFについてざっくり理解する!!~CloudFormationからCDKTFへ変換するツールも作ってみた~
masakiokuda
1
200
Amplify Gen2から知るAWS CDK Toolkit Libraryの使い方/How to use the AWS CDK Toolkit Library as known from Amplify Gen2
fossamagna
1
300
関数型プログラミングで 「脳がバグる」を乗り越える
manabeai
2
230
Enhancing SaaS Product Reliability and Release Velocity through Optimized Testing Approach
ropqa
1
260
How to Quickly Call American Airlines®️ U.S. Customer Care : Full Guide
flyaahelpguide
0
240
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
3
230
SRE不在の開発チームが障害対応と 向き合った100日間 / 100 days dealing with issues without SREs
shin1988
2
1.6k
AWS 怖い話 WAF編 @fillz_noh #AWSStartup #AWSStartup_Kansai
fillznoh
0
100
AWS CDK 入門ガイド これだけは知っておきたいヒント集
anank
5
670
ソフトウェアQAがハードウェアの人になったの
mineo_matsuya
3
150
ビジネス職が分析も担う事業部制組織でのデータ活用の仕組みづくり / Enabling Data Analytics in Business-Led Divisional Organizations
zaimy
1
320
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.5k
The Invisible Side of Design
smashingmag
301
51k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.9k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
Adopting Sorbet at Scale
ufuk
77
9.5k
Rails Girls Zürich Keynote
gr2m
95
14k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Done Done
chrislema
184
16k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
700
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Transcript
RedashのAPI活用事例 株式会社ココラブル 井上竜輝
自己紹介 ◆ 井上竜輝 ◆ 株式会社ココラブル所属 ◆ 広告APIを利用した広告運用の業務効率や自動化の ツール開発が主な業務 ◆ Redash歴
1年
アジェンダ ◆ RedashのAPIで出来ること ◆ RedashのAPI活用事例(2つほど) ◆ まとめ
RedashのAPIで出来ること
RedashのAPIで出来ること ◆ Redashで操作出来るほとんどのことはAPIで出来る ◆ クエリの実行や結果の取得 ◆ グループやユーザ操作 ◆ アラート情報の取得 ◆
その他色々
例1: Redashのクエリを取得する ◆ 各クエリのIDや名前、クエリ内容、作成者などのクエリ情報を一括で 取得することができる ◆ /api/queries/1?api_key=APIキー のようにクエリIDを渡して一つの クエリのみを取得することも可能
None
例2: RedashのクエリID10の結果を取得する ◆ クエリ内容、結果を取得することができる ◆ results.csv と渡せばCSV形式での取得も可能
None
ドキュメント ◆ API認証や使用例について記載 ◆ https://redash.io/help/user-guide/integrations-and-api ◆ 使用例としてスプレッドシートでの使用方法やSlackBotでの投稿に触れている ◆ サンプル数は少なめ ◆
エンドポイント ◆ redash/handlers/api.py ◆ 一番信用できて情報が多いのでここを見ると良さそう ◆ 詳細は各エンドポイントの実装を確認
RedashのAPI活用事例
事例その1
背景と課題 ◆ 背景 ◆ 広告運用者はRedashをデータソースとして使っている ◆ Excelでデータ落として加工してレポート作成をしている ◆ 課題 ◆
パラメータを変えた複数のクエリ結果をエクスポートするのが手間 ◆ 同じ作業の繰り返しが見受けられる
アプローチ -クエリ結果を取得してスプレッドシートやSlack出力- ◆ 1. Redashのクエリ結果をAPIで取得する ◆ 2. 取得したクエリ結果を必要なカラムのみ抽出または加工 ◆ 3.
そのデータをスプレッドシートまたはSlackへ出力
使用した主なライブラリ ※実装はPythonです ◆ pandas ◆ redash-dynamic-query ◆ pandash ◆ google-api-python-client
◆ python-slackclient
事例その2
背景と課題 ◆ 背景 ◆ 既存クエリの改修が頻繁に発生する ◆ 複数人でRedashを運用している ◆ 課題 ◆
いつどのような変更をしたのか見れないことが何気に不便
アプローチ -クエリを取得してバックアップや差分管理を行う- ◆ 1. RedashのクエリをAPIで取得する ◆ 2. 取得したクエリ内容をファイルに書き出しGit管理 ※ また、書き出したファイルに対して「DBのどのテーブルを使っているか」
など、スクリプトを組むことでクエリの解析が容易にできる
使用した主なライブラリ ◆ redashman
まとめ
APIを活用することで… ◆ Redashのデータと連携したツール開発が容易に実現可能 ◆ データの持ち方はRedashに任せ、複雑なデータ加工や分析はPandasなどで好きに出来る ◆ Redashで解決されるデータ抽出などの業務を、さらにAPIによって自動化することで、 業務改善や効率化を進めることができる ◆ Redashを運用する上で発生する課題も、APIを活用することで解決できる