Apache Supersetとは
Apache Supersetとは、データの検索や可視化を行うオープンソースソフトウェアのWebアプリケーションで、BIツールの一つである。BIツールとは、「ビジネスインテリジェンスツール」の略で、企業で蓄積されたデータを収集・分析し、その結果をグラフや図表で分かりやすく可視化して業務に役立てるソフトウェアのことである。Apache Supersetは日本語にも対応しており、データの可視化のタイプは約60種類ある。
Apache Supersetは、2017年にApache Software Foundationのインキュベーションプロジェクトという位置づけで開発がスタートし、全ての機能がオープンソースソフトウェアとして公開されている。開発言語はPythonおよびjavascriptである。また、ライセンスはApache License, Version 2.0で、商用利用も可能である。Apache Supersetは、開発初期段階においては他のOSS系のBIツールと比較して非常に使いにくかったが、最新のバージョンでは機能が大幅に向上し、使いやすくなっている。
Apache Supersetの特徴
Apache Supersetの特徴は以下の通りである。
多くのデータベースに対応している
MySQLやPostgreSQLなどのRDBMS(リレーショナルデータベース管理システム)や、SQL互換のインターフェースを持つデータベースに特化しており、対応データベースはクラウドサービスも含め約40種類ある。中には、ElasticsearchやApache Solrなど、ソフトウェア自体ではなくSQLのインタフェースが別で実装されているものについても、対応可能データーベースとしてリストアップされている。なお、Apache Supersetのインストール後、デフォルトの状態ではSQLiteしか扱うことができない。そのため、様々なデータベースを扱うためには、ドライバのインストールが必要である。基本的にSQL互換のデータベースであれば扱うことが可能である。
Apache Supersetは以下のデータベース・クラウドサービスに対応している。
・Amazon Athena ・Apache Druid ・Ascend.io ・Apache Solr ・CockroachDB ・Exasol ・Hana ・MySQL ・Presto ・Teradata ・Trino ・Databricks ・Kusto |
・Amazon Redshift ・Apache Hive ・Apache Kylin ・Apache Spark SQL ・Dremio ・Google BigQuery ・IBM DB2 ・Oracle ・Snowflake ・Vertica ・Rockset ・Firebird |
・Apache Drill ・Apache Impala ・Apache Pinot ・Clickhouse ・Elasticsearch ・Google Sheets ・IBM Netezza Performance Server ・Postgres ・Microsoft SQL Server ・Hologres ・CrateDB ・Firebolt |
多彩な可視化表現を実装している
Apache Supersetでは、データベースから集めたデータを、チャートと呼ばれるグラフや表で可視化する。この可視化のタイプにはテーブルやバーチャートなど約60種類あり、チャートの種類ごとに様々なオプションを加えることも可能である。また、Apache Supersetでは、作成した複数のチャートをダッシュボードにまとめて表示することもできる。さらに、それぞれのダッシュボードにCSSを登録して、色などのデザインを変更することも可能である。ただし、Apache SupersetはHTMLやjavascriptまでは書き換えることができないため、用意されたレイアウトの中でのデザイン変更となる。
WEB画面から新たなデータを登録できる
存在するデータベースの可視化だけでなく、WEBインタフェース上から新たにデータを登録することも可能である。方法としては以下の2つがある。
- CSV等によるデータアップロード
WEBインターフェース上で手元のファイルをアップロードし、新規テーブルを追加することができる。
- SQL Labでのデータ操作
SQL LabというSQLクエリを発行するためのWEBインタフェースで、データベースのデータを直接検索したり、データを更新したりすることができる。なお更新系の操作は、データベース登録時の設定で、更新系クエリを許可する必要がある。
日本語対応が可能
Apache Supersetは多言語に対応している。特に日本語化に関しては、オープンソースのBIツールでは対応していないソフトウェアが多いが、Apache Supersetでは現在翻訳を進めながら日本語への切り替えをすでに実装している。そのため、技術者だけでなく一般のユーザーにとっても比較的使いやすいBIツールとなっている。
ユーザ権限管理が可能
ユーザを複数作成し、ユーザアカウント毎に操作・閲覧権限を割り当てることができる。権限の種類は非常に細かく、全体で200以上の権限が用意されている。それらを組み合わせたロールを作成することで、特定の人に特定のダッシュボードを見せるという設定が可能になる。
ダッシュボードの定期的なレポート
事前に入力したスケジュールに従って、メールでダッシュボードのキャプチャ画像をレポートとして配信することができる。この機能を使うことで、ダッシュボードにアクセスしなくても、定期的にダッシュボードを確認することができる。なお、この機能を利用するためには、以下のような非同期処理の有効化が必須である。
非同期処理の実行設定
Apache Supersetには、大量のデータを扱うようなケースを想定した設定方法が存在する。DBの検索などサーバ側の処理で遅延が生じた場合、接続がタイムアウトするケースがある。このようなケースに対応するため、非同期な処理を実現するための構成が用意されている。
- WEBサーバ以外のワーカーノードでのDBリクエストの処理
非同期処理が有効な場合、Apache Supersetが動作するWEBサーバではなく、CeleryワーカでDBへのリクエストを処理できる。なお、この動作は、非同期処理を有効にしても自動では有効にならず、データベース毎に設定を有効化する必要がある。
- スケジュールレポート
レポート機能を有効化することで、ダッシュボードにレポート設定が表示される。レポートを通知するスケジュールを入力することで、メールでダッシュボードのキャプチャ画像を送ることができる。この機能を使うことで、ダッシュボードにアクセスせず、定期的にダッシュボードを閲覧することが可能となる。
利用上の問題点
Apache Supersetは、RDBMS系のデータベースを利用している会社や団体であれば非常に有効的に活用できるが、以下のような問題もある。
高いスキルレベルが必要
基本的にSQLや使用するデータベースを管理できる環境(技術的・人的)が求められるツールである。そのため、データの管理を行ったりダッシュボードを作る人には、エンジニアなど比較的高いスキルを持つ人材が必要である。ただ、権限管理で一般的な人にダッシュボードの参照だけを許可することもできるため、利用の棲み分けは充分可能である。
データベースの対応が限定されている
RDBMSやSQLの互換性があるデータベースに特化しているため、MongoDBなどのNoSQL系のデータベースには対応できない。
日本語化が完全ではない
日本語への切り替えが全て完了しているわけではない。現状ではまだ日本語化が行われていない部分も多く、今後の翻訳作業を待つ必要がある。また、一部のチャートのラベルなどに日本語の名前を登録するとエラーが発生する箇所があり、全てで日本語が使えるわけではないため注意が必要である。
権限の設定におけるマニュアル化がされていない
権限の設定は大量に用意されているが、設定ごとにどういった挙動が許可されるのか、マニュアル化がされていない。現在は、権限の名前を参考にしたり動作を試しながら、ソースコードを読み推測するしかない状態である。
デージーネットの取り組み
デージーネットでは、インストール方法や使い方などの詳しい情報をApache Superset調査報告書に掲載している。SQLに特化しているBIツールであるため、MySQLやPostgreSQLに溜まったデータの分析・可視化などの課題に対して非常に有効である。また、開発がApache Foundationで行われており、他の無料で使えるOSSのBIツールと比較しても、安定した開発やサポートが見込める。そのため、デージーネットでも、BIツールとしてはApache Supersetを推奨している。しかし、日本語の問題など使用していく中で課題があるソフトウェアであるので、今後は、日本語化の対応や権限の調査を行いドキュメント化するなど、より使いやすいBIツールとなるよう役に立つ情報を提供していく。
【カテゴリ】:システム監視  データベース  
【Webセミナー】自社でOSSを採用しよう!今更聞けないOSSの基本セミナー
日程: | 11月22日(金)Webセミナー「BigBlueButton」を使用します。 |
内容: | OSSを導入したいけど、どこから手をつければいいかわからない方必見! |
ご興味のあるかたはぜひご参加ください。 |