【AWS】プライベート接続での BIツール 導入パターン3選
「データレイクである S3 にあるデータを BIツール で可視化したい」 という要件を満たす環境構築を検討した際に、調査した内容まとめました🐱
BIツール で可視化する方法として、下記の3つを紹介しています。
- ユーザーが利用したい BIツール を AWS 上のサーバーに導入する
- AWS が提供する BIツール 「Amazon QuickSight」 を導入する
- 解析したいデータのファイルを静的ウェブサイトから ダウンロード → BIツール へアップロードする
前提
- AWS への接続は、専用線(Direct Connect 経由) のみで行う。
- S3 に格納されているファイルは、ETL処理後に ユーザーへ提供する。データ構造は、半構造化データ。
- 少人数のユーザーで データの可視化用の BIツール の使用を検討中だが、どの環境で/どのBIツールを使用するかは決まっていない。
1. BIツール用 の サーバー on AWS
ユーザーが利用したい BIツールを AWS 上のサーバーに導入する構成です。
構成図
補足
- BIツール用のサーバー on オンプレミス
BIツール用のサーバーをオンプレミスで用意し、AWS 環境内に構築しないことも可能です。その場合は、Amazon RedShift へ オンプレミス環境から接続してデータを取得するため、下記のような構成イメージになります。
引用:Enable private access to Amazon Redshift from your client applications in another VPC
メリット
- ユーザーがデータを慣れた BIツールですぐに閲覧可能
デメリット
- BIツール用のサーバーをAWS上で構築する場合
- サーバーの管理が必要
- 利用費は高め
2. AWS が提供する BIツール:Amazon QuickSight
AWS が提供するビジネス分析(BI)サービスである Amazon QuickSight を導入する構成です。
構成図
補足
-
Amazon QuickSight でできること
AWS に蓄積されたデータを利用して、以下のようなダッシュボードをブラウザ上で作成し、可視化・分析できます。
引用:AWS入門ブログリレー2024〜 Amazon QuickSight 編〜 -
QuickSight へのプライベート接続
アクセス元での IP アドレス制限や、VPC エンドポイント ID や VPC ID で許可制限を行うことで、安全な分析基盤をエンドユーザーに提供できます。
引用:Amazon QuickSight が VPC エンドポイントがサポートされ Direct Connect や VPN からのみアクセスさせたいというユースケースにも対応出来るようになりました
メリット
- サーバーの管理が不要
- 利用費は安め(ユーザー数次第)
- ユーザーがデータをすぐに閲覧可能
デメリット
- 新しく BIツール 「Amazon QuickSight」を使うための学習コストが必要
3. 静的ウェブサイトからファイルダウンロード → BIツール へアップロード
S3 を利用してファイルのダウンロードサイトを構築する構成です。ユーザーは静的ウェブサイトからファイルをダウンロードし、その後手動で いずれかの環境に構築されている BIツール にアップロードすることでデータを可視化できます。
構成図
補足
-
静的ウェブサイトの公開方法
awslabsで公開されているツール「AWS JavaScript S3 Explorer」を使用すると、S3バケットの内容をWebブラウザで簡単に閲覧することができます。S3バケット直下にindex.htmlを配置し、S3のポリシー設定と静的ウェブサイトホスティングの設定をするだけで利用できます。
引用:15分でS3を使ったダウンロードサイトを構築する -
静的ウェブサイトへのプライベート接続
VPC内のプライベート接続と内部ALBを利用して、カスタムS3バケットドメインのTLS証明書をエンドユーザーに提供できます。
引用:ALB、S3、PrivateLinkによる内部HTTPS静的ウェブサイトのホスティング
メリット
- サーバーの管理が不要
- 利用費は安め
- BI ツールがどの環境にあっても利用しやすく、BIツール の AWS環境との統合を考慮しなくて良い
デメリット
- ユーザーがデータを閲覧する為にU/Lが必要であり、手間がかかる
今後の可能性
今回のアーキテクチャでは、データ活用の方法として BIツールと連携して使用する前提であったことや、応答速度を考慮し Amazon Redshift を採用しましたが、AWS にはデータ活用方法のパターンが複数あります。
S3 にデータを保存しておくことで、分析基盤やリアルタイムデータ連携、AIソリューションの構築など、他のAWSサービスとの連携を通じて多様な要望を実現できます。
今後のデータ活用のためにも、 「データレイクにデータを保存」→「分析可能な形への整形、最適化」しておき、今後の可能性を広げておきましょう..🍀
引用:データレイクはじめの一歩
さいごに
調べれば調べるほどS3すごい!と実感するとともに、拡張性と可能性を広げてくれるAWSサービスに魅力を感じました💮
もし誤りやアドバイス等ございましたら、コメント頂けますと幸いです。
以上、えみり〜でした|ωΦ)ฅ
Discussion