Dataplex でデータ分析情報を生成する

データ分析情報により、データを探索して理解するための自動的かつ直感的な方法が提供されます。Gemini の大規模言語モデルを使用して、テーブルのメタデータに基づいてクエリを生成し、パターンの発見、データ品質の評価、統計分析を行うことができます。

このドキュメントでは、データ分析情報の主な機能と、分析情報を得るためのクエリ生成を自動化するプロセスについて説明します。

データの分析情報について

データ アナリストは、事前の知識がほとんどないかまったくない新しいデータセットを探索するときに、データ探索のコールド スタート問題に直面します。多くの場合、問題にはデータ構造、主要パターン、関連する分析情報に関する不確実性が含まれます。データの分析情報は、メタデータに基づく自動クエリ生成を使用することで、データ探索におけるコールド スタートの問題に対応できます。これらの分析情報は、十分な情報に基づいて判断し、データを詳細に分析するための貴重な手がかりとなります。空白のスレートから始めるのではなく、貴重な分析情報を提供する意味のあるクエリを使用して、より迅速にデータ探索を開始できます。

データの分析情報を使用して生成されたクエリは、公開されているプロファイル スキャンデータを使用して根拠付けされます。Data Insights は、公開されたプロフィール スキャンデータを使用して結果を返すクエリを作成し、効率的で信頼性の高い情報取得を行います。これにより、データ分析プロセスの開始が大幅に高速化し、より明確な方向と目的に沿ってデータを掘り下げることができます。

データ分析情報は、覚えのないデータセットを操作するという一般的な課題を解決し、情報に基づいた意思決定を行い、データ探索中にパターンをすばやく見つけるためのガイドツールとして機能します。

分析情報の実行例

次のテクニカル メタデータを含む telco_churn というテーブルについて考えてみましょう。

フィールド名
CustomerID STRING
性別 STRING
在職期間 INT64
PhoneService STRING
OnlineBackup STRING
依存者 BOOLEAN
契約 STRING
TechSupport STRING
PaymentMethod STRING
MonthlyCharges FLOAT
チャーン BOOLEAN

データの分析情報がこのテーブルに対して生成するサンプルクエリの一部を次に示します。

  • すべてのプレミアム サービスに登録し、50 か月以上利用されている顧客を特定します。

    SELECT
      CustomerID,
      Contract,
      Tenure
    FROM
      agentville_datasets.telco_churn
    WHERE
      OnlineSecurity = 'Yes'
      AND OnlineBackup = 'Yes'
      AND DeviceProtection = 'Yes'
      AND TechSupport = 'Yes'
      AND StreamingTV = 'Yes'
      AND StreamingMovies = 'Yes'
      AND Tenure > 50;
    
  • 解約数が最も多いインターネット サービスを特定する。

    SELECT
      InternetService,
      COUNT(DISTINCT customerID) AS total_customers
    FROM
      agentville_datasets.telco_churn
    WHERE
      Churn = TRUE
    GROUP BY
      InternetService
    ORDER BY
      total_customers DESC
    LIMIT 1;
    
  • 価値の高い顧客の離脱率が高い顧客セグメントを特定します。

    SELECT
      Contract,
      InternetService,
      Gender,
      PaymentMethod,
      COUNT(DISTINCT customerID) AS total_customers,
      SUM(CASE WHEN Churn = TRUE THEN 1 ELSE 0 END) AS churned_customers,
      (SUM(CASE WHEN Churn = TRUE THEN 1 ELSE 0 END) / COUNT(DISTINCT customerID))
    * 100 AS churn_rate
    FROM
      agentville_datasets.telco_churn
    WHERE
      MonthlyCharges > 100
    GROUP BY
      Contract,
      InternetService,
      Gender,
      PaymentMethod;
    

プロファイル スキャンを使用した分析情報の根拠づけについて

テーブルのデータ プロファイル スキャンを作成するときに、スキャン結果を BigQuery と Data Catalog に公開することを選択できます。データ分析情報は、この公開されたプロファイル スキャンデータを使用して、テーブルに関するより正確で関連性の高いクエリを生成します。

公開されたプロファイルのスキャンデータは、Google Cloud コンソールで表示できます。公開されたプロファイル スキャンデータを表示する方法の詳細については、レポートとモニタリングをご覧ください。

テーブルの公開プロファイル スキャンがアクセス可能な場合は、包括的な分析情報の生成に使用されます。それ以外の場合、分析情報は列名とそれぞれの説明に基づいて作成されます。このアプローチにより、プロファイル スキャンの可用性に関係なく、分析情報を確実に取得できます。

プロファイル スキャンデータは、データの分布、データ型、データセットの統計の概要に関する貴重な情報を提供します。クエリはプロファイル スキャンデータを使用して根拠付けされているため、データ分析情報により、生成されたクエリが意味のあるものになり、詳細な分析に役立つ結果が返されます。

プロファイル スキャンの詳細については、データ プロファイリングについてをご覧ください。

プロファイル スキャンの作成と公開の詳細については、データ プロファイル スキャンを作成して使用するをご覧ください。

次のセクションでは、データの分析情報が、公開されたプロファイル スキャンデータを使用してクエリを根拠づける方法について説明します。

プロファイルのスキャンデータについて

プロファイル スキャンデータは、データセットの内容を記述するメタデータです。これには次の情報が含まれます。

  • 列のデータ型
  • 最小値と最大値
  • 値の分布
  • null 値または欠損値
  • 上位の値
  • 一意の値とその頻度

データの分析情報は、この情報を使用して、特定のデータセットに合わせて調整されたクエリを生成し、意味のある分析情報を提供します。

データの分析情報がプロファイル スキャンデータを使用してクエリを根拠づける方法

データ分析情報は、プロファイル スキャンデータを使用して、データセット内の実際のデータ分布とパターンに基づくクエリを作成します。このプロセスには、次のステップが含まれます。

  • プロファイル スキャンデータを分析して、データの興味深いパターン、傾向、外れ値を特定する。
  • 分析情報を得るために、これらのパターン、傾向、外れ値に焦点を当てたクエリを生成する。
  • プロファイル スキャンデータに対して生成されたクエリを検証し、クエリが意味のある結果を返すことを確認する。

データ分析情報のメリットを最大化するためのヒント

根拠付けされたクエリを使用することで、取得した分析情報が正確で関連性が高く、実用的なものになるため、データドリブンな意思決定をより適切に行えるようになります。プロファイル スキャンデータを使用して根拠付けされたクエリを最大限に活用するには、次のヒントを参考にしてください。

  • テーブルに、最新の公開プロファイル スキャンデータがあることを確認してください。これにより、データ分析情報により正確で関連性の高いクエリを生成できます。
  • 生成されたクエリを確認して、プロファイル スキャンデータにどのように根拠づけられているかを把握します。これにより、結果を解釈して、データに関するより深いインサイトを得ることができます。
  • 生成されたクエリが関連性がなく、有用でない場合は、テーブルのプロファイル スキャン設定を調整するか、データ分析情報に追加のコンテキストを提供します。

料金

このプレビュー期間中、Dataplex のデータ分析情報機能は無料でご利用いただけます。

制限事項

  • データ分析情報は、ネイティブの BigQuery テーブル、BigLake テーブル、外部テーブル、ビューで使用できます。
  • マルチクラウドのお客様の場合、他のクラウドのデータは利用できません。
  • データの分析情報は、すべての Dataplex リージョンで利用できます。
  • データ分析情報は、Geo または JSON 列型をサポートしていません。
  • Insights の実行では、クエリが毎回表示されるとは限りません。より魅力的なクエリが生成される可能性を高めるには、分析情報パイプラインを再開します。
  • 列レベルのアクセス制御(ACL)があり、ユーザー権限が制限されているテーブルでは、テーブルのすべての列に対する読み取りアクセス権がある場合は、分析情報を生成できます。生成されたクエリを実行するには、それぞれの権限が必要です。

始める前に

必要なロールと権限

データの分析情報を作成、管理、取得するには、管理者に次の IAM ロールを付与するよう依頼してください。

生成された分析情報への読み取り専用権限を取得するには、管理者に次の IAM ロールを付与するよう依頼してください。

公開されたデータ プロファイル スキャンを読み取るために必要な権限が Dataplex サービス アカウントに付与されるように、プロジェクトの Dataplex サービス エージェントと次の IAM ロールの付与を管理者に依頼してください。これにより、BigQuery テーブルに存在する実際の値を使用して生成されたクエリを根拠づけることができます。

ロールの付与の詳細については、サービス アカウントに対するアクセス権の管理をご覧ください。

必要な権限は、カスタムロールや他の事前定義ロールから取得することもできます。

API を有効にする

データ分析情報を使用するには、プロジェクトで次の API を有効にします。

Gemini API を有効にする方法については、Google Cloud プロジェクトで Gemini Code Assist を有効にするをご覧ください。

BigQuery テーブルの分析情報を生成する

BigQuery テーブルの分析情報を生成するには、Dataplex Search を使用して Dataplex のテーブル エントリにアクセスする必要があります。

  1. Google Cloud コンソールで、Dataplex の [検索] ページに移動します。

    Dataplex Search に移動

  2. Dataplex でテーブル エントリを検索します。

  3. [分析情報] タブをクリックします。タブが空の場合は、このテーブルの分析情報がまだ生成されていないことを意味します。

  4. 分析情報パイプラインをトリガーするには、[分析情報を生成] をクリックします。

    分析情報が表示されるまで 5~10 分かかります。

  5. [分析情報] タブで、生成されたクエリとその説明を確認します。

  6. クエリを実行するには、[BigQuery で開く] をクリックします。クエリが BigQuery で開きます。

  7. 新しいクエリセットを生成するには、[分析情報を生成] をクリックしてパイプラインを再度トリガーします。

BigQuery 外部テーブルの分析情報を生成する

Dataplex のデータ分析情報は、同じ Google Cloud プロジェクトにある BigQuery 外部テーブルをサポートしています。BigQuery テーブルが別の Google Cloud プロジェクトの Cloud Storage に保存されているデータを参照する場合、分析情報の生成は失敗します。

BigQuery 外部テーブルの分析情報を生成するには、このドキュメントの BigQuery テーブルの分析情報を生成するセクションをご覧ください。

BigLake テーブルの分析情報を生成する

BigLake テーブルの分析情報を生成するには、次の手順を行います。

  1. プロジェクトで BigQuery Connection API を有効にします。

    BigQuery Connection API を有効にする

  2. BigQuery Connection を作成します。詳細については、接続を管理するをご覧ください。

  3. 作成した BigQuery 接続に対応するサービス アカウントに、ストレージ オブジェクト閲覧者(roles/storage.objectViewer)IAM ロールを付与します。

    サービス アカウント ID は、そのサービス アカウントの接続情報ページから取得できます。

  4. 分析情報を生成するには、このドキュメントの BigQuery テーブルの分析情報を生成するで説明されている手順を行います。

次のステップ