綺麗に死ぬITエンジニア

オープンソースのデータベース解析ツール「Metabase」が期待できそう

2017-02-13

近年、様々な目的のITシステムが開発されてきており、その多くはデータベースへデータを格納しています。

しかしながら、そのデータベースの内容を然るべき役職の人間が正しく「分析」できている現場はあまりないのではないでしょうか。

きちんと分析できる画面を持つITシステムならば、分析すべき人間がきちんと分析しビジネスに反映できますが、実際にはデータの分析というところまでは至っていないシステムも多いと思います。

そこで今回は、非エンジニアの人でもデータベースを分析目的で閲覧できるツール「Metabase」を紹介したいと思います。

なお、今回紹介する「Metabase」は、2017年2月現在、まだ日本において実用に至るほどの完成度ではないと考えています。ですが、開発が活発で、期待できるコンセプトですので、今後開発状況を追っていきたいプロジェクトとして、紹介させていただきます。

「Metabase」とは

Metabase」は、「企業内のすべての人がデータから学ぶための簡単な方法」をコンセプトとして開発されている、オープンソースソフトウェアです。ライセンスは「AGPL-3.0」で、GitHub上で開発が進められています。

Webアプリケーションですので、サーバにインストールして皆でブラウザからアクセスして使うような形式です。

特徴

  • 5分でセットアップできる
  • 誰でも、SQLを知らずに分析できる
  • 豊富な美しいダッシュボード、自動更新とフルスクリーン
  • 分析家やデータ担当者向けのSQLモード
  • チームが使用する指標を作成できる
  • データ分析をSlackやメールへ送信できる
  • Metabotを使用して、Slackでデータを表示できる
  • フィールドの名前を変更、注釈を付ける、非表示にすることでチームのデータをわかりやすくする

サポートされるデータベース

  • Postgres
  • MySQL
  • Druid
  • SQL Server
  • Redshift
  • MongoDB
  • Google BigQuery
  • SQLite
  • H2
  • CrateDB
  • Oracle
  • Vertica

インストール方法

こちらのページから、各種環境における導入方法が参照できます。

実際に使ってみる

ダウンロードページに記載されている、Macへの導入手順から、実際に手元のMacに導入してみました。今回試したMetabaseのバージョンは、v0.22.2です。

ダウンロードしたMetabase.dmgからMatabase.appを入手できるので、それをアプリケーションフォルダへインストールして、起動します。

Metabase

起動すると、初期設定画面が開きます。

Metabase

Metabase

初期ユーザーデータや初期のデータベース接続情報を入力し、初期設定を終えます。

Metabase

初期設定が終わると、マイページが表示されます。なお今回は、テストデータとして、私のTwitterのツイート回数を記録したデータベースを登録してみました。

ヘッダーにある「New Question」ボタンを押下します。

Metabase

遷移先の画面から情報(データベース・テーブル・表示条件)を選択していくと、上記のようにテーブルの情報が表示されます。上記では、2016年12月のツイート回数を表示しています。

こうやって表示されたデータを、ダッシュボードと呼ばれる一覧画面に配置することで、日常的な分析を可能にします。もちろん、2016年12月などといった期間の指定ではなく、現在から過去30日間といった指定もできます。

なお、この例のようなツイート回数の場合、テーブル形式は見づらいので、グラフにしてみます。

「VISUALIZATION」を「Table」から「Line」に変更して、X軸とY軸のカラムを設定すると、以下のようにグラフに早変わり。

Metabase

私の2016年12月のツイート数の遷移が、手に取るようにわかります。

後は、これをダッシュボードに配置してみましょう。

Metabase

右上の「Add to dashboard」ボタンから追加します。

Metabase

このグラフに名前をつけます。

Metabase

今回は初回のため、ダッシュボードが存在しないので、「Test」という名前でダッシュボードを新しく作ります。

Metabase

すると、ダッシュボード編集画面に移動します。

上記のマス目のようになっている部分で、好きなようにサイズ変更や配置変えをして、「Save」を押すと、ダッシュボードの完成です。

Metabase

他にも、データをわかりやすく分析できるよう、いろいろなパーツを追加していくことができます。

Metabase

こうやって、画面を作成していくことによって、非エンジニアの人に対するデータ分析の手助けをするツールとなっています。

一度ダッシュボードを作ってしまえば、後は、日々その画面を見て、データによっては売り上げや集客効果などを分析できるようになります。

また、データベースを直接参照する仕組みなので、複数のシステムの複数のデータベースも、1つの画面で管理できるようになるのも利点といえるでしょう。

しかしながら、まだSSHトンネルでのデータベース接続に対応していなかったり、全て英語で日本語化できなかったりするなど、完全では無い部分も多く、少なくとも日本ではまだ実用的ではないかな?というのが正直なところです。

なお、Mac版ではネイティブアプリとしてスタンドアローンで動作しているように見えますが、実際にはWebサーバーがローカルで立ち上げられていて、ブラウザとして参照している形になっているようです。私の環境では、Metabase.appを起動後、通常のブラウザで「http://localhost:13975」へアクセスしても閲覧することができました。

まとめ

今回は、オープンソースのデータベース解析ツール「Metabase」を少しだけ体験してみました。まだ実用的ではないですが、十分今後に期待できるコンセプトと完成度だったと思います。

「ビッグデータの活用」などといったキーワードをよく耳にするような時代となりましたが、まだなかなか一般企業では活用できていないところも多いと思います。

まずは身の回りの身近なシステムのデータを分析することから始めるのも一つかもしれません。

その点において「Metabase」は十分期待できるツールですので、今後も開発状況を追っていきたいプロジェクトの一つだと考えています。興味を持たれた開発者の方は、ぜひ実際に体験してみたり、GitHubでWatchしてみたりしてはいかがでしょうか。

筆者について

フリーランスエンジニアとして活動している、「もりやませーた」です。

筆者のTwitterはこちら。記事に関するご意見等はTwitterの方へお寄せください。

その他業務に関するお問い合わせは、こちらのページをご覧ください。

SQL OSS Apple