re:dash + BigQueryでクエリのコスト上限が指定できるようになった

昨日に引き続きre:dashネタです。BigQueryはクエリが処理したデータ量に応じて課金されます。使った分だけ払えばいい反面、高額クエリを流すとたいへんなことになります…。Custom Quotasで1日のコスト上限を設定できるようになりましたが、これは10TBの倍数でしか設定できず、一撃10TB(= $50)のクエリは流れてしまう可能性があります。

Total MByte Processed Limit

Feature: BigQuery: limit amount of MB processed per query by ryotarai · Pull Request #710 · getredash/redashがマージされ、データ量(BigQueryのAPIでいうtotalBytesProcessed)の上限を設定できるようになりました。

Data Sourceの設定画面で"Total MByte Processed Limit"を設定しておくと、

f:id:ryotarai:20151217005847p:plain

クエリ実行前にdry run実行が行われ、指定した上限を超えた場合にエラーになります。

f:id:ryotarai:20151217005852p:plain

うっかり高額クエリを流さないためにご活用ください

(あくまで、1クエリのコストを制限出来るだけなので、Custom Quotasも併用しておくことをおすすめします)