Amazon Web Services ブログ
Google Cloud BigQuery と Amazon QuickSight で統合ビジネスインテリジェンスを最大限に活用できます
Amazon QuickSight は、クラウドネイティブなサーバーレスビジネスインテリジェンス (BI) サービスです。ビジュアライゼーションの構築、アドホックな分析の実行、異常検知、予測、自然言語クエリなどの機械学習 (ML) 機能によってインサイトを得ることが可能です。また QuickSight は高性能なインメモリエンジンである SPICE (Super-fast, Parallel, In-memory Calculation Engine)を利用して迅速に高度な計算を実行し、ビジュアルを提供します。
BigQuery は Google Cloud のフルマネージドかつペタバイト規模のコスト効率の高い分析データウェアハウスであり、膨大な量のデータに対してニアリアルタイムでの分析を実行できます。BigQuery を使用するとインフラストラクチャの構築や管理が不要であるため、ユーザーは有益なインサイトの発見や、オンデマンドおよびキャパシティベースの柔軟な選択肢の活用に集中することができます。
本ブログでは、OAuth を通じてBigQuery のデータを QuickSight に取り込みシンプルなダッシュボードを作成するために必要な BigQuery の権限と接続の設定の詳細についてご説明します。
前提条件
以下が準備されていることを確認してください
- AWS アカウント
- Enterprise Edition の QuickSight アカウント
- Google Cloud アカウント
BigQuery 権限の設定
このセクションは Google アカウントの管理者向けです。ユーザーが QuickSight でデータを表示するために必要となる権限を設定する必要があります。以下の手順を実行してください
- Google Cloud コンソールを開き、ナビゲーションペインで [IAM と管理] を選択します。
権限の設定ページが開き、プリンシパル(メールアドレス) 別、またはロール別にすべての権限が一覧で表示されます。
- [アクセス権を付与] を選択します。
- QuickSight にて BigQuery へのアクセスを許可する際のプリンシパルとなるメールアドレスを入力します。ユーザはこのログイン認証情報を使用して QuickSight から BigQuery にアクセスします。以下の例では、ユーザーは quicksight.user@gmail.com を設定しています。
- [ロールを割り当てる] で、以下のロールを割り当てます
- BigQuery メタデータ閲覧者 (BigQuery Metadata Viewer) … プロジェクトレベルで設定します。これは、QuickSight ですべてのデータセットとテーブルを検出、表示するために必要です。
- BigQuery ジョブユーザー (BigQuery Job User) … プロジェクトレベルで設定します。
- ナビゲーションペインで [BigQuery] を選択します。
- データセット (画像では
QuickSight_Demo
) のオプションメニューを選択し、[共有] を選択します。 - [プリンシパルを追加] を選択します。
以上の手順により、ユーザーは QuickSight でデータを表示できるようになります。設定した権限に応じて、これは以前のロールのようにプロジェクトで実行することも、データセットやテーブルのレベルで実行することも可能です。
-
本ブログでは、
QuickSight_Demo
というデータセットを、quicksight.user@gmail.com のユーザーに、BigQuery データ閲覧者(BigQuery Data Viewer) というロールを選択して共有します。
BigQuery からの接続詳細の取得
QuickSight との接続を開始する際に、BigQuery から以下の情報を取得することが必要です:
- Google Cloud アカウントのメールアドレスとパスワード
- プロジェクト ID
- データセットの地域
以下の手順で情報を収集できます
- Google アカウントのメールアドレスとパスワードをお持ちでない場合は、Google アカウント管理者にお問い合わせください。
- プロジェクト ID を収集するには、Google Cloud コンソールを開き、プロジェクト名を選択します。
- ポップアップウィンドウで、プロジェクトの ID をコピーします。
または、BigQuery の管理者に連絡してプロジェクト ID を取得することも可能です。
- Google Cloud のナビゲーションペインで、[BigQuery] を選択します。
- エクスプローラで、QuickSight に取り込みたいデータセットを選択します。
- データセット情報の データのロケーション(Data location) からデータセットの地域を取得します。画像の例では、
QuickSight_Demo
をデータセットとして選択し、データのロケーションはデータセットの地域である US となっています。
または、BigQuery 管理者に連絡して、データセットの地域を確認することも可能です。
QuickSight で BigQuery のデータを分析する
QuickSight で BigQuery のデータを分析するためには、 BigQuery のデータソースを作成する必要があります。以下の手順を実行します
- QuickSight コンソールで、ナビゲーションペインの [データセット] を選択します。
- [新しいデータセット] を選択します。
- Google BigQuery をデータソースとして選択します。
- データソース名に分かりやすい名前を入力します。(本ブログでは BigQuery Demo としています)
- 先ほど収集したプロジェクト ID と地域の詳細を入力します。
- [サインイン] を選択します。
- プロンプトが表示されたら、Google アカウントのメールアドレスとパスワードを入力します。
- アクセスの詳細を確認し、[続行] を選択します。
これまでの手順により、指定したプロジェクト ID とデータセットリージョンを QuickSight で管理し、BigQuery データを表示する権限が QuickSight に付与されます。
以上で Amazon QuickSight での BigQuery データソースの作成は完了です。続けて以下のステップでデータセットを作成します。
- [データセット] にて、使用するデータセット (
QuickSight_Demo
) を選択します。 - 使用するテーブルを選択します。 (本ブログでは
Sample_All_Flights
を選択しています) - [データの編集/プレビュー] を選択、または独自の SQL 文を使用したい場合は [カスタムSQLを使用] を選択します。
- データ準備のページで、[保存して公開] を選択し、[発行して視覚化] を選択します。(こちらのデータは SPICE 上に取り込まれます)
- ビジュアルタイプを選択します。(本ブログでは、垂直積み上げ 100 パーセント棒グラフを使用します)
- 列を設定します。(本ブログでは、X軸、値、グループ/色として、それぞれ
fl_date
、origin_city_name
、late_aircraft_delay
を使用しします) - ダッシュボードを公開するには、[共有] を選択します。
棒グラフにカーソルを合わせると、サンプルデータに基づいて Dallas/Fort Worth が May 15, 2015 に 50 %の航空機遅延を経験していることが確認できます。
本ブログで使用したデータは、今回のデモのために作成されたサンプルであり、実際の空港やフライトのデータを表現しているわけではないことに注意してください。
まとめ
本ブログでは、QuickSight にデータをインポートし、シンプルなダッシュボードを構築するためにBigQuery で必要な権限と接続情報についてご説明しました。
もしまだお持ちでなければ、次のステップとして Enterprise Edition の QuickSight アカウントを作成することをおすすめします。本ブログでは、QuickSight の基本的な機能のみをご紹介しました。QuickSight の高度なトピックに関するディスカッションや回答については、QuickSight Community をご覧ください。 もしまだ BigQuery をご利用でない場合は、Google Cloud Console からサインアップしてください。
翻訳はソリューションアーキテクトの守田が担当しました。原文はこちらです。
著者について
Vignessh Baskaran は Amazon QuickSight のデータコネクティビティ領域を担当するプロダクトマネージャー。大規模データおよび分析ソリューションの開発において 7 年以上の経験を持つ。以前は、AWS の Sr. Sales Analytics Lead として、QuickSight を用いた包括的な BI ソリューションを構築し、AWS Worldwide Specialist Sales チームにグローバルで採用された。
Jobin George は Google の Staff Solutions Architect で、大規模データおよび分析ソリューションの設計と実装の 10 年以上の経験を持つ。Google の主要顧客や Data & Analytics パートナーに対して、技術的なガイダンスや設計に関するアドバイス、ソートリーダーシップを提供している。