PINTO!株式会社PLAN-Bの情報発信メディア

2019.06.07

藤本 永一

成果の可視化でチームの心を1つにしよう!ツール選定とMetabaseによる実際の手順をご紹介! 導入編

WRITER

藤本 永一

株式会社PLAN-B システム開発部

2014年新卒入社。ユーザー分析DMPサービスJuicerの開発を担当し、インフラを含めたバックエンドを構築。現在はシステム開発部でリーダーとして開発チームを支える。成果を出せるチームを目指し、可視化やカイゼンをメンバーと進める革新的猫派。

目次
    1. はじめに
    2. なぜ可視化をするのか
      1. 具体的に見てみましょう
        1. 『使いたいときに使えること』
        2. 『バグがないこと』
        3. 『困ったときに助けてくれる人がいること』
    3. 何を使う?
      1. Redash
      2. Metabase
      3. Apache Superset
    4. Metabaseでできること
    5. Metabaseを立ち上げよう
      1. 1.MetabaseのJARをダウンロードします
      2. 2.コマンドでMetabaseを起動させます
      3. ブラウザから初期セットアップを行います
    6. まとめ

はじめに

お世話になっております、藤本です。 皆さんはビジネスにおいてどのようにチームをまとめていますか?いろいろな方法がありますね。 今回は、成果や目標の可視化によりそれに向かって自律的に動けるチームを目指してみましょう。

少し長いので2部に分けてご紹介します。

  • 導入編(この記事)
  • 可視化編(近日公開)

ちょっとエンジニア寄りで書いていますのでご了承を。

なぜ可視化をするのか

なぜ可視化、つまり見えるようにするのでしょうか?
たとえば、チームの目標が 「信頼されるシステムをつくる」 だとします。

皆さんは信頼されるシステムという目標に対して、何をしますか?どのようにすれば信頼されるシステムであるといい切れますか?

評価は必ず他人、他チーム、会社など自分や自分たち以外の人がします。 そんな時、当事者以外の人たちが評価できるようにするにはどうすればいいのでしょうか? 目標に対してのアクションが有効であることを知るには? 現在の進捗を知るには? これらを知るにはどうすればいいでしょうか?

これらを解決するのが「見えるようにすること」可視化です。

具体的に見てみましょう

では、「信頼されるシステムをつくる」を可視化してみましょう。

信頼されるシステムとは?どんなシステムでしょうか? たとえば、次のような内容が思い浮かびます。

信頼されるシステムの3つのポイント

  • 使いたいときに使えること
  • バグがないこと
  • 困ったときに助けてくれる人がいること

これらそれぞれに対して、客観的に見てそうであると言えるようにする必要があります。

『使いたいときに使えること』

これは、システムの稼働率を見ることで、わかりそうです。
たとえば、稼働率が99.99%を維持していれば常に使えているとわかると思いますが、80%だとどうでしょうか? 使えない時間が多い! と思われる事が多いかと思います。 このように主観ではなく数字を出すことによってしっかり「使いたいときに使える」と言いきれそうです。

『バグがないこと』

これは、不具合報告数を可視化するといいかもしれません。 日別に不具合報告数を可視化しておくと、いつ不具合が多いのか? もしくは、ほぼ報告が上がって来ないということからもバグがないことが見えて来ます。 その他には、自動テストの結果などの方法もありそうです。

『困ったときに助けてくれる人がいること』

これは、サポートなどのお問い合わせ発生日時から問題解消日時の平均時間を出すなどでわかりそうです。
この例では、お問い合わせ解消にかかっている時間を可視化します。 なので、この値が短いと問題対応が迅速に行われているということになります。

何を使う?

では、具体的にこれらの数字を何を使って可視化したらいいでしょうか? いくつか業務で使ってみたものを雑に比較してみます。
ちなみにこのようにデータの可視化や分析を行うツールをBIツールと呼びます。
環境構築にエンジニア的アレが必要かもです。あしからずご了承ください。

ざっくり比較

ツール名

対応DB

使い勝手

見た目

Redash

★★★★

★★★

★★★

Metabase

★★★★

★★★★

Apache Superset

★★

★★

Redash

そつなくこなす優等生って感じでしょうか。
対応DBは一般的なものに対応しています、グラフ等も必要なものが揃っています。見た目使い勝手も悪くはないです。

推しポイントとしては以下です。

  • TreasureDataに接続できる(ビッグデータ屋さんにオススメ)
  • 操作感はとっつきやすい

Metabase

転校してきた美少女。青髪系ヒロインです。

推しポイントとしては以下です。

  • 見た目が可愛い
  • グラフ作成時にある程度は自動で設定してくれる
  • SQLレスで可視化を作る事ができる(フィルターや集計くらいならこれだけで可能)
  • 導入が簡単

Apache Superset

柔道部主将です。厳ついです。

  • 一瞬しか触ってないのであまり思い入れがないです(ごめんなさい)
  • 使いづらかった印象が強い

▼参考コラム:可視化に関する関連記事も参考にしてみてください

Metabaseでできること

今回は、最近チームで良く使っているMetabaseで可視化をしてみたいと思います。 どのような機能があるかといいますと

  • SQLにてDBへの問い合わせ
  • 結果を各種グラフによる可視化
  • ダッシュボード作成機能
  • SQLに変数を埋め込める機能(表示を適宜変更可能)
  • 外部サイトへグラフを埋め込める機能(iframe)
  • 作ったSQLを保存しておくと、それをベースに別の可視化を作れる機能

と、必要なものは大体揃っています。
対応DBとしては、

  • MySQL
  • Postgres
  • Mongo
  • SQL Server
  • AWS Redshift
  • Google BigQuery
  • Druid
  • H2
  • SQLite
  • Oracle
  • Crate
  • Google Analytics
  • Vertica

可視化の種類としては

  • 数値の表示
  • プログレスバー
  • タコメーターっぽい表示
  • テーブル
  • 折れ線グラフ
  • 棒グラフ(縦・横)
  • 折れ線グラフ + 棒グラフ
  • 散布図
  • 円グラフ
  • 地図
  • ファネル図

これらの機能や可視化を組み合わせて、現状の見える化をします。
ただ、データが何かしらのデータベースに溜まっていることが大事です。 業務設計などでしっかり追いたい数字が貯まる仕組みを考えておくことも大事です。

執筆時点の情報です。Metabase v0.31.2

Metabaseを立ち上げよう

では早速他立ち上げてみましょう。
方法としては何通りかあります。

この中でも、Javaさえ入っていればすぐに使える「Running the Metabase Jar File」で触ってみたいと思います。
他の入れ方も簡単です。 弊社ではDockerで運用しています。

前提条件

  • Javaがインストールされていること

1.MetabaseのJARをダウンロードします

  1. ダウンロードページに行きます。→ Metabase.jar
  2. 「Download Metabase.jar」ボタンを押すとダウンロードされます。
  3. Metabase.jarを任意の場所に配置してください。

2.コマンドでMetabaseを起動させます

WindowsならコマンドプロンプトかPowerShell
Macならターミナルを立ち上げて、次のコマンドを入力してください。

java -jar metabase.jar

metabase.jarを配置したディレクトリで実行してください

ブラウザから初期セットアップを行います

次のURLをブラウザで開きます。

http://localhost:3000/setup/

ポートはデフォルト3000ですが、環境変数により変更も可能です。

Metabaseを使い始める

最初のユーザーの情報を入力

Metabaseに最初のユーザー情報を入力

最初のデータベースへ接続します

Metabaseのデータベースへ接続する

あとで追加もできるのでこの時点で接続しない場合は「後でデータを追加する」を選択してください。

Metabaseへ匿名で情報提供するかを設定します

Metabaseへ匿名の情報提供をするか設定

どちらでも構いませんので、会社的に判断して設定してください。

これで完了です

「Metabaseを使いはじめる」ボタンを押してください。

Metabaseを使い始める

 

自動でログインされます

ここがトップページです。

Metabaseのトップページ

  1. 次回以降ログインする時は

次のURLをブラウザで開きます。
普段はこちらを使います。

http://localhost:3000/

まとめ

今回は、簡単に可視化の紹介とMetabaseの立ち上げまでを紹介しました。
可視化はまだこれからと言う現場ではぜひ参考にして、できる部分から始めてみていただければと思います。 次回は、サンプルのDBを使って実際に可視化をしてみます。