その他の機能紹介
自動更新スケジュールを設定する
Re:dashはクエリのスケジュール実行のための機能を備えています。「Refresh Schedule」を設定すると、SQLを定期的に発行してデータを更新し、グラフを再描画します。クエリの下の[Refresh Schedule]から変更します。
今回のデータは7日ごとに更新されるよう設定しました。
アラート機能
更新したクエリ結果が何らかの条件を満たすと、アラートを飛ばすように設定することができます。アラートはヘッダメニューの[Alerts]⇒[New Alert]から作成します。下図の場合は「Time Series」クエリにおいて、移動平均の価格が1200以上になったら発生するアラートの設定になります。
通知先は[Notifications]で選択します。
以下はAdminのEmailアドレスに通知をする設定です。
通知先はEmailのほかSlackやHipChat、Webhoosが利用できます。
終わったら[Save]ボタンで設定を保存します。
NoSQLなどSQL以外のデータソースのサポート
Re:dashはRDBMSだけでなくNoSQLなどSQL以外のデータソースにも対応しています。
以下はMongoDBにクエリを投げる場合の簡単なクエリ例(コレクション「test」で今年更新されたレコードを取得)を示しています。
{ "collection":"test", "query" : { "lastModified" : { "$gt" : "ISODate(\"2017-01-01T00:00\")" } } }
SQL以外(MongoDBではJSON)をクエリとして利用するケースでも、このようにクエリの内容を変えるだけで、ほかのデータソースなどは同様に利用できます。
機能利用上の注意点
ここまで紹介した以外にも、さまざまな機能があります。
詳しくは、英語になりますがヘルプを一度見てみることをおすすめします。
注意点としては、機能の組み合わせによっては現在使えないものもあることです。
例えばクエリの中で"{{date}}"
のように記述することで変数を使える「parameter」という機能がありますが、これは執筆時点(2017年8月)でアラート機能と組み合わせての使用はできません。
Re:dashは現在も活発に開発が進められているオープンソースなので、新規機能開発や制限の修正も早いですが、現時点での制限には注意しながら利用する必要があります。
Excelと比較した場合のRe:dashのメリット
データをグラフなどに可視化する場合、Excelが利用されることが多いです。ExcelによるSQL分析の可視化は以下の手順で行われることが多いでしょう。
- SQLの結果のテーブルを、Excelのセルに貼り付ける
- 対象になるデータ部分を指定し、グラフウィザードでグラフを作成する
定期更新の場合、2.は一度実行すればよいですが1.は更新の度に行う必要があります。Re:dashを使用する場合はこの一手間が省けます。
もう一つのメリットとして、SQLやグラフ/ダッシュボードをURLで共有できる点も挙げられます。
チームや組織では、Excelを使ったデータ分析手法だと各作業者の手元にしかデータや結果が残らないため、作業を行った担当者以外は分析結果がほしいと思った際にすぐ手に入れることができません。
WebアプリケーションであるRe:dashでは、一つひとつのクエリやグラフに固定的なURLが割り振られます。URLをメールやイントラネットなどの組織のコミュニケーションツール上で共有すれば、SQLや可視化といった分析ノウハウを属人化させず、組織にストックできます。
組織を継続的に成長させていく上では、重要で有用な仕組みといえるでしょう。
まとめ
今回はオープンソースのBIツールRe:dashを導入し、SQL分析の可視化に役立てる手順を紹介しました。Re:dashはSQLの保存や共有が気軽に行える強力な分析ツールなので、ビジネスの現場でぜひ活用してください。