会社に BI ツールを導入しました

## ■ はじめに
先日会社に BI ツールを導入しました。
BI ツールを導入するという経験は初めてだったので、導入するベンダーの選定とか手探り状態でやりました。

最終的には、Amazon QuickSight という Amazon の BI ツールにしたのですが、せっかくなのでどういう要件で探したのかでしたり、どういう企業と比較したのか。又、必要な機能の優先度（決め手）とかを備忘録としてまとめておこうかと思います。

### 導入背景
「代表」ちょっと相談があるんだけど。
「わい」B...I....??
「代表」◯◯事業部の◯◯について日々のレポーティング業務が結構時間かかっているんだよね。
「わい」BI ....??
「代表」ヒューマンエラーによる数字の正確性にも困っててさ。
「わい」BI ..!?
「代表」散乱した情報を視覚化して次の行動をどう移したら良いか判断が出来る為の補助ツールとして良いものあるかな？
「わい」BI !!
「代表」頼んだ！

という感じで、会社に BI を導入する事になりました。改めて目的は下記です。

**BI ツールを活用し口数削減及び正確なデータを1つのツールに集約し、業務全体の効率向上を目的とする。**

次に、当時の BI についての知識はこんな感じです。

（例）

- BI とは何か基本的な事は多少知ってる。
- BI ツールとして Tableau とか Power BI が有名だよな〜
- 何か技術ブログとかでダッシュボードの画面見た事あったな
- 確かこんな感じで構築するんだよな。前何かの記事で見たな。

こんな感じのレベルです。
なのでまずは、下記から始めます。

1. 導入するにはどの機能が必要なのか。それぞれの優先度は？
2. 逆にどの機能はいらないのか。など一旦洗い出しをする。

その後、某企業にて BI 選定に伴う要件リストみたいなものがあったので、そういったものも参考にしました。

### 導入する上での要件リスト

1. モバイル対応：
    【説明】 BI ツールは基本 PC で見るものだが、代表が「おれ、スマホで見たいんだ！」と熱く語っていたので候補に追加。信頼してくれている以上、なるべく要望を叶えてあげたいので、優先度はかなり高い。（でも結構難しい）
2. ネイティブアプリがあるか可否：
    【説明】 「1」と類似しており、アプリがあればそっちの方が使いやすいよね。と思ったので追加。
3. API連携：
    【説明】 これは一番大事で必須。
4. 手動入力が出来るか：
    【説明】 上司が「一部手動入力したい項目あるんだよね。BIツールに標準機能として備わっているかな？」と言っていたので追加。（実際にはあまり対応していなかったので、別案を提案した）
5. 認証方法（SSO / OTP）：
    【説明】 どっちが基本なのかな。と思ったので追加。
6. カスタマイズ性：
    【説明】 ダッシュボード等をカスタマイズする際にどこまで出来るかなどを知る為に追加。
7. SQL の知識が必要かどうか：
    【説明】 弊社、SQL 使える人間が少ないが、自分が休職や退職した場合でもちゃんと運用出来る様にするため、検討項目に追加。（つまり属人化状態にしたくない）
8. データソースへのアクセス：
    【説明】 その製品が対応しているデータソースを知りたいため追加。例えば、利用可能なDBMS （例：MySQL、PostgreSQL、Oracle Databaseなど）や、データ取得元（例：Google Analytics 4、Firebase SDKなど）とか。
9. トライアル：
    【説明】 無償期間があると嬉しいな！と思ったため。
10. 権限周り：
    【説明】 ロール（権限）によってプランが変わるのか、ロールは関係なくいつでも自由に権限付与できるのか、など企業によって変わってくるため追加。出来れば後者の方が柔軟性があるため希望。
11. 費用：
    【説明】 買い切りなのか、サブスクなのか。（基本サブスクが今の時代だが）。月額/年額でどれくらいか。ある程度予算感は聞いていたが、代表からの最終ジャッジ下りませんでした！となったら効率悪いので、1発で通せるようにここも加味する必要がある。

## 検討したツール等

第一に Tableau は考えましたが、「せっかくの機会だ。色々な BI を見て比較しよう。その上でどうしても Tableau が良かったらその時もう一度検討リストに上げよう。ちゃんと他のツールも見たいんだ！」と思い、いきなり候補から外しました。（ライセンス的にちょっと今回の要件に見合わなそうと思ったのもあります）

20個程資料請求とかして、パンフレット見ながら半分くらいに絞りました。

残った BI ツールが下記です。

- redash (OSS)
- Power BI
- b→dash
- LaKeel BI
- Visualized CDA
- Yellowfin
- FineReport
- MotionBoard
- Amazon QuickSight

redash (OSS) や Amazon QuickSight 以外は、全て web MTG の時間を作り担当者とお話しする時間を作っていただきました。（その節はありがとうございました）

以降は、「導入する上での要件リスト」で説明した要件リストを元に比較していこうと思います。

### redash

- モバイル対応：レスポンシブ対応している
- ネイティブアプリ：×
- API連携：◯
- 手動入力：無し
- 認証方法：SSO
- カスタマイズ性：OSSなのでカスタマイズ性は高い
- SQL の知識：必須。クエリは全てSQLで書く。
- データベースへのアクセス：
- トライアル：無し
- 権限周り：
    - WebAPI実行の認可（グループに対して個別で設定することが可能）
    - データソースの認可（グループに対して個別で設定することが可能）
    - クエリ等オブジェクトの認可（ユーザに対して個別で設定することが可能）
- 費用：OSS なのでサーバー費用のみ

:::note info
【コメント】
以前 Qiita で、redash について書いてる人がいて目を通した事があったので知ってました。
かなり良い製品だなと思いましたが、 SQL の部分とネイティブアプリの部分で惜しくも断念しました
:::

### Power BI

- モバイル対応：△
    - モバイル用のデザインを作成し、Power BI Mobile をインストールすれば可能
- ネイティブアプリ：◯
- API 連携：◯
- 手動入力：有り
- 認証方法：Microsoft Entra ID によるアクセスコントロール
- カスタマイズ性：中
- SQL の知識：
    - データを取得する際に Query が必要。
    - データセットという形で Power BI に取り込み、それを活用する形になるためSQL / DBに関しての知識もある程度必要。
- データベースへのアクセス：
    - コネクタが用意されているものであれば対応可能。
    - コネクタが無い場合でも ODBC 接続で取得できればそちらでも対応可能。
- トライアル：
    - 無し。
    - 但し Power BI Desktop を無償で使ってテストは可能（**[参考リンク](https://powerbi.microsoft.com/ja-jp/downloads/)**）
- 権限周り：
    - 1ライセンスの定額で、レポート（ワークスペース）へのアクセス権をコントロールする感じになる。（**[参考リンク](https://learn.microsoft.com/ja-jp/power-bi/collaborate-share/service-request-access)**）
- 費用：Power BI Pro：1,499円／アカウント／月

:::note info
【コメント】
Power BI やはり良いですね。
今回、代理店の会社様とお話ししましたがやはり良い。
データを取得する際に Query が必要ではありますが、そこをクリア出来れば全然良いと思います。
:::


### b→dash
- モバイル対応：△
- ネイティブアプリ：×
- API連携：◯
- 手動入力：×
- 認証方法：OTP
- カスタマイズ性：高
- SQL の知識：ノーコードな為、不要
- データベースへのアクセス：
    - 利用可能な DBMS は MySQL 。
    - データ取得元
前提 web サイト/アプリアクセスログは web サイトには、b→dash タグ、アプリには、b→dash SDK を埋め込み取得することが可能。
データ取得元は基幹システム（S3、GCS、Azureなど）外部サービス（salesforce、Bigqueryなど）と自動連携をすることで b→dash に取り込むことが可能。
連携方法としては、SFTP 連携 / API連携 / 手動連携。
- トライアル：無し
- 権限周り：
    - アカウント毎に割り振りが可能。
    - 権限によって料金が変わる事がない
- 費用：月額10万、初期構築30万

:::note info
【コメント】
初期構築費というのが基本セットでかかるようだったので、少し悩みました。
というのも全部自分でやるので、なくて大丈夫だなと。
お金の部分がネックでした。
:::

### LaKeel BI

- モバイル対応：△
    - レスポンシブ対応が標準機能として用意がないため、視認性が悪いかもしれない。但し、別途 SP 用にレポートを作成すれば問題なさそう
- ネイティブアプリ：×
- API連携：◯
- 手動入力：無し
- 認証方法：SSO
- カスタマイズ性：
    - オリジナルにカスタマイズ可能。
    - 作りこみを前提としたツールの為、複雑にカスタマイズ可能。
- SQL の知識：
    - SQL 必要（定型分析 (閲覧対象者の役職・役割ごとにページデザイン / 遷移先 / フォーマット等の作りこみが可能)）
    - SQL 不要（自由分析 ( Excel に近しいピポット集計 / グラフ化等が可能)）
- データベースへのアクセス：CSV , Excel , 一般的な DB , Saas サービスへ対応。
- トライアル：原則無し
- 権限周り：
    - サーバーライセンス制の為、権限付与によってコストの変動はない。
    - アカウント毎に自由に操作/閲覧権限の付与可能。
- 費用：
    - サーバーライセンス (ユーザ数関係なく定額）
    - 利用料：400万円 / 年

:::note info
【コメント】
結構大企業向けだな（弊社中小企業）という印象でした。
ライセンス費で少しびっくりしてしましたが、自由分析の部分は結構良いかもって思いました。
:::


### Visualized CDA
- モバイル対応：△
    - フルレスポンシブは対応してない。みる事は出来るが視認性が悪いかも
- ネイティブアプリ：×
- API連携：◯
- 手動入力：×
- 認証方法：SSO
- カスタマイズ性：高
- SQL の知識：ノーコードなため、不要
- データベースへのアクセス：- 
- トライアル：無し
- 権限周り：権限毎にプランが変わる
- 費用：30万/月

:::note info
【コメント】
これは Visualized CDA に限ったお話しではありませんが、やはりスマホの部分が相当ネックですね。
BI は基本 PC で見るから仕方ないとは頭では理解してますが、要望を叶えてあげたいので断念です。（気分はサンタクロースです。子供の欲しいものをプレゼントしたい。）
:::

### Yellowfin
- モバイル対応：△
    - ダッシュボード：参照できなくはないがレスポンシブ対応はしてないため PC 表示になる。
    - レポート：ネイティブアプリから閲覧可能。
- ネイティブアプリ：◯
- API連携：◯
- 手動入力：無し
- 認証方法：ID/PASS
- カスタマイズ性：高（cssやJavaScriptによるカスタマイズも可能（**[参考リンク](https://yellowfin.co.jp/evaluation-guide/extending-yellowfin/design)**）
- SQL の知識：あった方がレポートの作成は容易になる。
- データベースへのアクセス：JDBC接続が可能なデータベースに対応。（[**詳細サイト**](https://yellowfin.co.jp/evaluation-guide/developing-content/managing-content-in-yellowfin)）
- トライアル：30日（**[参考リンク](https://yellowfin.co.jp/campaign/free-trial-try-yellowfin-on-your-own-data-today)**）
- 権限周り：
    - 指名ユーザライセンス：権限毎にプランが変わる（admin→Writer, view→Reader）
    - サーバコアライセンス：自由に権限付与可能
- 費用：10ライセンス：1125000円

:::note info
【コメント】
ネイティブアプリで参照が出来るので、おぉ！と思いました。
ただコストで惜しくも断念です。
:::

### FineReport
- モバイル対応：◯
- ネイティブアプリ：◯
- API連携：◯
- 手動入力：◯
- 認証方法：SSO / メール認証
- カスタマイズ性：高。Template もあるし 0 からの構築も可能
- SQL の知識：SQLかかなくても基本的には使えるが、高度な設定をする場合には知識はあった方が良いかも。
- トライアル：試用版、3ヶ月（但しローカル版なので注意）
- 権限周り：
    - アカウント毎に割り振りが可能。
    - 権限によって料金が変わる事がない
- 費用：【買い切り】10ライセンスで196万円

:::note info
【コメント】
ここも費用以外はかなり良かったのですが、サブスクではなく買い切りとの事で良いお値段でした。。
:::

### MotionBoard
- モバイル対応：◯
- ネイティブアプリ：◯
- API連携：◯
- 手動入力が出来るか：◯
- 認証方法：SSO
- カスタマイズ性：高
- SQL の知識：ノーコードな為、不要
- データベースへのアクセス：
    - 接続可能なデータソースについては **[動作環境ページ](https://cs.wingarc.com/ja/system_requirement/000007122?brand=motionboardc)** を参照。
    - データの連携方法は例えば MySQL であれば JDBC ドライバで接続し、MotionBoard側の外部接続設定で設定したでユーザーID、パスワードで認証を行う。そのユーザーが持つ参照権限に応じてデータベース、テーブル、ビューなどが参照可能。
- トライアル：1ヶ月
- 権限周り：プランに関わらず、設定可能
- 費用：月額6万

:::note info
【コメント】
ここは Amazon QuickSight を見るまでずっと1位でした。結構ギリギリまで悩みました。
:::

### （採用）Amazon QuickSight

- モバイル対応：◯
- ネイティブアプリ：◯
- API連携：◯
- 手動入力が出来るか：×
- 認証方法：SSO / Email
- カスタマイズ性：多
- SQL の知識：
    - 基本的なダッシュボードの作成やデータ可視化はノーコードで可能
    - 高度な機能を使いたい場合には SQL / DBに関しての知識があった方が良いかも。あと、「カスタムSQL」を使う場合も簡単な SQL は必要。
- データベースへのアクセス：
    - RDBMS への接続
Amazon Athena、Amazon Aurora、Amazon OpenSearch Service 7.7 以降、Amazon Redshift、Amazon S3、Apache Spark 2.0以降、AWS IoT Analytics、Exasol 7.1.2 以降、MariaDB 10.0 以降、Microsoft SQL Server 2012 以降、MySQL 5.1 以降、Oracle 12c 以降、PostgreSQL 9.3.1 以降、Presto 0.167 以降、Snowflake、Teradata 14.0 以降、Timestream
    - インポートできるファイルデータの形式
CSV、TSV、ELF、CLF、JSON、XLSX
- トライアル：無し
- 権限周り：権限毎にプランが変わる
- 費用：
    - Author：$24
    - Reader：最大$5（1セッション(30min) = $0.30）

:::note info
【コメント】
最終着地はここになりました。まとめに諸々コメント書きます。
:::

## ■ まとめ
BI ツールは Amazon QuickSight となったわけですが、やはり Amazon ってだけで安心感がありますね。テストデータを元にざっくりダッシュボード構築してみたのですが、直感的な操作で出来たので凄く開発しやすかったです。

又、ネイティブアプリもあるので自分のスマホにインストールして、試しに作ったテストデータをスマホで表示し、社内に「これが Amazon QuickSight だよ。スマホで見るとこんな感じになるよ」と説明すると結構好評でした。

私も使いやすく心の中ではこれにしたかったので作戦勝ちです。
交渉時はこういった具体的なイメージが大事だと思ってます。
交渉はイメージの世界ですね。たまたま葬送のフリーレンでも同じ事を言ってました。

真面目な話に戻りますが、弊社の代表はエンジニアではありません。
そのため小難しい事を言っても「納得」は得られません。
私はよく生活する上での身近な例にとられて説明しますが、そうすると結構笑顔になって聞いてくれます。

小難しい話はエンジニア同士で良いのです。
非IT者には、かっこつけて専門用語など使わず、例を交えて優しく簡潔に説明してあげるのが私の中で意識してることです。
その上で技術的な事を聞かれたらその時に初めて説明します。（その場合は相手の表情見ながらゆっくり話をしています）

BI ツールを通し、事業の貢献に少しでも役立てられたら良いなと思います。
ここまで見ていただきありがとうございました！