Blogは株式会社BuySellTechnologiesのエンジニア達が知見・発見を共有する技術ブログです。nmu0テクノロジー開発部の村上です。弊社ではデータ集計に一部Redashを使用しています。今回はその活用方法を紹介をしたいと思います。今回ご紹介する方法のメリットは、以下の3点かなと思います。APIを叩くより簡潔になるただ、Gitで管理した上で自動でRedashに反映させることも出来るはずですが、現時点ではそこまでは行っていないです。クエリとそのメタデータの用意まず事前に以下のようなクエリの情報を表すtsvを用意します。queries/query_1.sqlなどに実際のクエリが書かれていることを仮定しています。クエリ例2Queryクラスを定義こちらは前述したtsvの内容そのままです。f.read()クエリをファイルから読み込み読み込んだクエリをQueryクラスのインスタンスにし、queries配列を作成します。事前にRedashのAPIキーを取得しておき、それを使ってRedashClientを得ます。以下のコードではredash_clientを~/projectsにcloneしていることを仮定しています。base_url)Redashに対してリクエストを送る基本的にはredash_clientのメソッドを呼んでいるだけです。ポイントとしては例外の処理で、クエリ中でクエリパラメータを使っていると例外が返るのでそれを無視するようにしています。query.query_id)クエリのスケジュールを設定ここは一つ注意点がありまして、APIで登録されるのはUTCのスケジュールとなります。tsvを日本時間にした場合は、redash_clientのメソッドを呼ぶ前にUTCに変換する必要があります。query.schedule)いかがでしょうか。した工夫ですが、クエリの管理工数が減らすことができました。13:00バイセルテクノロジーズではエンジニアを募集しています!興味がありましたら以下のリンクからご応募ください。上で実行する高速エンハンス開発を可能にするテスト手法フルスクラッチで開発。マイクロサービスについてSpinnakerをTLS(SSL)対応させる月別アーカイブスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。