ビジネスシーンでBIツールを導入しようとすると、どうしてもコストがネックになります。
優秀なBIツールは年間で数百万〜数千万のコストが発生するからです。
もちろん安いツールもありますが、安いものは機能が少なく・高いものは高機能です。
近年、データリテラシの向上目的で社員全員がBIツールを利用できる環境を提供している企業も増えてきていますが、環境はあっても実際利用している社員が使わなければ高いBIツールも宝のもち腐れとなってしまいます。
そこで、低コストなBIツールを導入して、使うことをまず第一歩とするのがよいのではないかと考えています。
低コストBIツールというと、Amazon Quicksight、Google Looker Studio(旧Data Portal)、Microsoft Power BIが主となりますが、今回はOSSのApache Superset (以下、Superset)をご紹介したいと思います。
■ Apache Superset
オープンソースのデータ可視化およびビジネスインテリジェンス (BI) プラットフォーム。
データの探索、分析、ダッシュボード作成をサポートするツールで、使いやすいインターフェースを提供し、さまざまなデータソースと連携して高度な分析を行うことができます。
実際の稼働構成としてはKubernetes上にデプロイして、バックエンドでMySQLやPostgreSQLのDBを利用、キャッシュエンジンにRedisを組み込んで運用することが多いです。
SupersetはOSSであるため開発者が機能拡張することが可能ですが、機能拡張の方法がWeb上を探しても記述がほとんどありません。
そのため、これから複数回に分けて機能追加する方法を記載していきます。
■ 開発環境の準備
まず私の環境をご紹介
・利用端末:Macbook Pro M2 / Mac OS Sonoma
・開発環境:Visual Studio Code 1.95.1
・必要App: git、Python3.11.9、Docker Desktop
※Appはインストールしている前提で以下記述します。
※Python3.12系以降はpipコマンドでエラーが発生することがあるため3.11を利用しています。
①Visual Stidio Codeプラグインのインストール
Visual Studio Codeにpythonプラグインをインストール

インストールしたpythonを環境変数PATHに設定していない場合は、設定画面でコマンドパスを登録しましょう。
→Python: Default Interpreter Path

②Apache Supersetのソースコードを取得
ソース管理メニューから「リポジトリの複製」を選択して、SupersetのGithubからクローンします。
Clone URL: https://github.com/apache/superset.git


SupersetはフロントエンドはReact、バックエンドはPythonで開発されています。
③必要モジュールのインストール
supersetに必要なpythonモジュールをpipコマンドを使って取得します。
$ pip install .

④Visual Studio Code上のpythonインポート警告対応
pythonのソースコードを開くとインポートステートメントが警告表示されてしまいます。
これは必要なライブラリ等をVisual Studio Codeが認識していないことによるものです。
設定ファイルを追加することで警告をオフにすることができます。
supersetディレクトリ配下に.vscodeディレクトリを作成し、その中にsettings.jsonを配置します。

{
"python.analysis.extraPaths": ["/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages"],
}
これで警告を抑制することができます。

これで開発環境の準備は完了です。
次回はソースコードからアプリケーション起動するところをご紹介します。