Metabase解説
OSS データ可視化ツール
必要最低限
軽量に動く、優れたUI・UXのBIツール
https://gyazo.com/886561abdef59013a68fdf2218895465
「1日で、Re:Dashから乗り換えました。」
「企業内のすべての人がデータから学ぶための簡単な方法」
ユーザー機能
アクティビティ機能
全員の動きが追えるトップ画面
https://gyazo.com/870d7d6c10e9fb40f314076cf9847515
ダッシュボード
要件毎に複数作成可能
https://gyazo.com/cc20bec31b357305917dc727e1c3c6c1
編集も楽。大きさや配置も自由
編集ボタンを押さない限り、不用意に位置がズレたりしない
Saveボタンを押さない限り、不用意に保存されない
https://gyazo.com/89f26dbe08188c6b455ee3ca68e18de2
フィルター機能
カテゴリを選択してフィルタリング
期間を指定してのフィルタリング
https://gyazo.com/9a44ec759faea2994dc69324587ca0a4
https://gyazo.com/127bf7add42e3fe9aa33e10b8b15e9db
クエスチョン
ダッシュボードに配置するグラフやテキストやデータ
データ取得元を選んで、表示形式を選ぶだけ
CSVダウンロード可能
https://gyazo.com/b8f6a7e587805bee7893d9c2275401d3
SQLを使えなくても作成可能
もちろんSQLや過去に作ったデータからの複製・編集も可能
https://gyazo.com/607f7c76003d9ba747728845771f7b33
クエスチョン毎の編集履歴もあり!
https://gyazo.com/e99ee8d3cf2e68f1356b8c374fd3f677
連携通知
Slackやメールに通知可能
https://gyazo.com/cb78527ee41d77999a6c0c2af749c745
リンク機能
自分が見ているページへのリンクをワンボタンで取得可能
https://gyazo.com/db47c85ccca99dbdadf11ef076baa530
管理者機能
アドミンパネル
ユーザー毎に細かい権限を与えたり、連携先を編集可能
https://gyazo.com/0d21d830ee7fb7c6db5c04e3c00034d7
ユーザ認証はGoogleアカウントを利用可能!(スクラップボックスと同じ)
https://gyazo.com/1362d238846fb3202537ce3259404fef
ユーザ・グループ毎の細かい権限や
https://gyazo.com/a7cca35ad0eb101efbe8d0f3ab966a92
テーブルや、各カラムに「利用可否」設定も可能
https://gyazo.com/4de662bd64240fcb79be07a79bafef1c
複数のデータソースを追加可能で、Mysql、Googleアナリティクス、BigQuery、RedShift、postgresにも対応
https://gyazo.com/3d2ff5e00360b0aeda7ba8b6497e7038
データの表示と、「SQLを書いて良いか」のパーミッション付与も可能
https://gyazo.com/60b492c747a7bdc924983b713c2405ce
Redashとの違い
構築前に気がついたこと。
metabaseはクエリの編集履歴がある!これは良い
metabaseアクティビティ、管理者じゃなくても誰が何をしているか分かるのは良い!
redashはMysql SSL mode対応、SSH tunnel非対応
metabaseはMysql SSL mode非対応、SSH tunnel対応
利用できるデータソースはredashの方が多い。(自社で使っているデータソースはmetabaseでも全て対応)
ダッシュボードのレイアウト自由度はmetabaseの方が高い。
redashは1カラムor2カラム。辛い
redashは社内で採用実績がある。
redash構築をしてから気がついたこと。
圧倒的な操作感の違い。metabaseはストレスフリー
redashはレスポンスが遅い、ボタンを押してから0.5秒ほどのモサっと感が続く。(ローカルでもEC2インスタンスでも)
インスタンスサイズをmicroからsmallに変更することで快適になった。
ダッシュボードの「グラフタイトル」がredashは小さい、気がつかない!
Query名が大きく出る。Queryをグラフ毎に作らないと分かりにくくなる・・・。
redashのグラフ削除が分かりづらい。
redash、metabase共にアーカイブという機能で実現
metabaseにはアーカイブからクエリを戻す機能があるが、redashは管理者のみっぽい・・・?
redashは「パブリッシュ」機能がある。これはグラフを作った後、自分だけがそのグラフを見れる機能。
metabaseは問答無用で一覧に表示
redashのグラフ、余計なボタンが多過ぎて見辛い・・・。
マウスオーバーで12個もボタンが出てくる・・・。
redashはダッシュボードにクエリ追加する時、一覧で表示されない!入力窓にクエリ名を入力する必要がある
補完は聞くけどちょっと面倒。。
metabaseとredashはクエリキャッシュが微妙に違う。
基本的にredashは全てキャッシュ。
metabaseは指定秒数より重いクエリを、クエリにかかった秒数に比例してキャッシュする
どちらもキャッシュを使わないことは可能
metabaseは自動推察機能がある!Googleスプレッドシートの「数値分析グラフ」に近い。カラム毎に最大値や、前週・前月毎の推移を推察して出してくれるAIのような機能がある。これは思ったより面白くて良かった。
ただ本当に大規模な生データ、かつカラムをデータ型に沿って作成していないとしっかりと推察してくれない。自社テーブルでは実用はほぼ無理
metabaseはスラックBOTが初期である!コマンドも凝っていて、「MetaBot show **」でグラフカードを表示してくれる。自動的に毎朝呟かせたり、自分のプライベートチャンネルだけで言わせたりも可能。
metabaseはクエリのカテゴライズ機能がある!フォルダ分けできる!
redashは全てのクエリ or 自分のクエリ
RedashはそのままだとGoogle Analyticsのデータを読み込めない
ReDashのGA読み込み形式はGCPサービスアカウントのJsonKeyFileのみ対応
metabaseのGA読み込み形式はGCPクライアントIDの秘密鍵・公開鍵入力のみ対応
どちらも本質的には同じものだが、サービスアカウントは新規に作る「子ユーザ」、クライアントIDは「ログインユーザの権限利用」のような違いがある。
そのため、サービスアカウントの場合は作ったアカウントをGAのView閲覧可能ユーザに追加する必要がある。
metabaseの辛いところ
クエリの使い回しが出来ない
ReDashは一つのクエリから複数のグラフを作成出来る。
Metabaseも似たようなことは出来るが一部セグメントが使えなくなったり、フィルター機能の対象外となったりと、使えないと言って良い。
数値区切り「000,000,000」のコンマが出ないバグが発生することがある。
SQLを使わないクエリで発生。恐らく数値を表示する時に文字列として判定しているため。表示時に+0をすることで解決できるが不便
チャート機能以外が揃っていない
コホート分析、サンキーダイアグラムが無い
期間指定のフィルターが微妙に使い辛い
ダッシュボード上でのCSVダウンロードが出来ない
クエリの詳細ページに行く必要がある。
技術的懸念
ReDash
特になし
MetaBase
国内利用の少なさ
海外だと同数程度の利用がある(トレンド比較・技術者サイトのコミュニティベース)
利用懸念
ReDash
カスタマイズし続けるには作業負荷が大きい
遅延が大きい
MetaBase
全て英語
全体的なUI文章量が多く、日本語化は難しい
判断材料
Redashのバグの多さ
Google OAuthを利用した際、対象のGmailドメインで無ければ無限リダイレクト
Google OAuthを利用した際、サインアウトボタンを推しても永久ログイン
キャッシュが取得できない際に落ちる
重くてちょくちょく落ちる(microインスタンス, smallインスタンスだとクエリキャッシュ更新で応答が厳しくなる)
RedashのUIの悪さ
Redashのセキュリティ的懸念
インプット項目をダッシュボードに作るためには、「ユーザのスクリプトサニタイズを無効化」しないといけない。
任意のスクリプトを実行させることが可能になる
Metabase