技術ブログ技術ブログ2019年4月metabaseが便利らしい「metabaseが便利らしい」と小耳に挟んだことをふと思い出しました。テストや調査業務でExcel等の数値と睨めっこしていたことがきっかけです。グラフとかで見ると変化や傾向が見えやすいのになぁと思い、ふと思い出しました。便利「らしい」ことしかわからなかったので、実際に触れてみていきたいと思います。今回は以前の投稿記事「2ファイルでLAMP開発環境構築」で構築した環境にmetabaseを導入していきます。よって各バージョンは以下のようになります。metabaseとはmetabaseはデータを可視化してくれるOSSです。DBのデータから、Excelのようにグラフを作成できすることができるので、データ解析に(おそらく)役立ちます。加えて、直感的に使用できるクエリビルダーが組み込まれており、sqlの知識がなくても調査や集計を簡易に行うことができるのではと...。sqlを直接叩いて結果を描画することも可能です。SQLite、MongoDb、Postgresなど複数対応しておりますが、私が業務で最も使用するMysqlを対象に紹介を行っていきます。java-1.8.0-openjdk-devel公式ページから執筆時点で最新であるv0.32.1をダウンロードし、適当な場所に設置しますhttps://www.metabase.com/docs/latest/getting-started.htmlhttps://www.metabase.com/start/jar.html今回はサンプルとして、テスト用DB/テーブルを作成し、適当なレコードをセットしておきます。utf8;また、テスト用テーブルを作成し、データを放り込んでおきます。metabaseでは非対応となっており、DBへの接続が失敗してしまいますので、以下のようにして接続用のユーザを作成しておくと良いでしょう。metabase.jarこんな感じに起動が完了したら、http://***.***.**.**:3000/setup/にアクセスします。こんな感じの画面が出ればOKです。指示に従って初期登録を行っていきましょう。123と3ステップあります。2では参照するDBを登録していきます。本記事では、下準備で登録しておいたdb:metabaseuser:metabasepass:Sr47f*dkdk3で登録しますページ下部の「データ」項目に先程設定したものが表示されていればOKです。設定>管理者>データベースを追加するから再登録を行いましょう。metabaseをちょっと触ってみるとりあえず、実験でuser_l_boss_drop_itemというテーブルの中身を見てみます。(ゲームアプリのボスドロップログテーブルを適当に作ってみました。三か月分のデータをこれまた適当に突っ込んでおります)初期表示時点でいい感じにグラフができており、前月比なども自動で出力してくれていますね。Item)の日ごとの数値が確認できます。クエリビルダも触ってみます。絞り込みなんかも直感的に操作できます。全件表示してみました。idだけだとなんのアイテムがドロップしているのかよくわからんので、アイテム名を出してみます。joinが必要なので、直接sqlを叩きます。結果が表示されました。実際にmetabaseに触れてみてちょっと触ってみましたが、なんだか色々できそうです。実際に触ってみて「metabaseが便利らしい」ということは実感できました。使い方次第でデータ解析を効率よく行えのではないかと。操作が不慣れなので、描画するグラフを変えてみたり、ダッシュボードをカスタマイズしてみたりと今後も色々試していけたらと思います。以上、phpエンジニアのmetabase紹介でした。乱文長文、失礼しました。