フェデレーションテーブルを作成する

フェデレーションテーブルとは

外部データソースを参照するテーブルのことをいいます。
外部データソースの概要 - BigQuery

🚧

フェデレーションテーブルのデータの読み書きには時間当たりの制限があります

クエリやジョブフローで下記のようなエラーが発生した場合は、時間あたりのリクエスト制限を超えているため、時間をおいてから実行してください

Quota exceeded for quota metric 'Read requests' and limit 'Read requests per minute per user' of service 'sheets.googleapis.com' for consumer 'project_number:834070187048'

フェデレーションテーブルの作成

  • [データセット画面]でテーブルを追加するデータセットを選択します
  • [テーブルを作成] > [フェデレーションテーブルを作成]ボタンから新規作成できます
  • データテーブル作成時に、以下を入力します
    • テーブル名
    • 追加先データセット
    • 外部データソース
    • データフォーマット
    • ソースURI
    • スキーマ
    • オプション

テーブル名

  • 使用できる文字
    • 英字(a-z、A-Z)、アンダースコア(_)、数字(0-9)
  • 最大長
    • 1,024 文字

スキーマ

  • 自動型判定を有効にしない場合はスキーマを指定する必要があります。

外部データソースの種類

以下の外部データソースに対応しています

  • Googleスプレッドシート
  • Google Cloud Storage

Google Spread Sheets

読み取り権限を付与する

  • GoogleスプレッドシートからKARTE側のGoogleサービスアカウント ( dp-<project_id>@prd-karte-service-account.iam.gserviceaccount.com ) に対し、閲覧権限を付与してください。
  • 権限の付与(共有設定)は、Googleスプレッドシートの右上 [共有] > [他のユーザーと共有] から設定できます。

📘

KARTE側のGoogleサービスアカウントの確認方法

[Datahub設定] 画面 > [Googleサービスアカウント] タブ > [Googleサービスアカウント] > [メールアドレス]

データフォーマット

  • GOOGLE_SHEETS

ソース URI

Googleスプレッドシート の URI
例: https://docs.google.com/spreadsheets/d/file_id

オプション

読み取りをスキップする先頭の行数

0 以上の整数 (デフォルトは 0)

シートの範囲

  • 次の形式で指定します sheet_name!top_left_cell_id:bottom_right_cell_id
  • 例: シート 1!A1:B20
  • デフォルトでは 1 つ目のシートの全セル を参照します

Google Cloud Storage

❗️

注意事項

Clous Storageのバケットは US マルチリージョンロケーション に配置する必要があります。

読み取り権限を付与する

  • Google Cloud StorageのコンソールからKARTE側のGoogleサービスアカウント ( dp-<project_id>@prd-karte-service-account.iam.gserviceaccount.com ) に対し、閲覧権限を付与してください。

📘

KARTE側のGoogleサービスアカウントの確認方法

[Datahub設定] 画面 > [Googleサービスアカウント] タブ > [Googleサービスアカウント] > [メールアドレス]

データフォーマット

  • CSV
  • NEWLINE_DELIMITED_JSON (改行区切りの JSON)

ソース URI

Cloud Storage URI
例: gs://bucket/object/name
Cloud Storage URI の取得  - BigQuery

CSV オプション

区切り文字

  • カンマ (デフォルト)
  • タブ

読み取りをスキップする先頭の行数

0 以上の整数 (デフォルトは 0)

囲み文字

デフォルトはダブルクォート(")
データに囲み文字が含まれていない場合は空の文字列が設定されます。

囲み文字で囲まれた改行文字を許可する

  • デフォルトは無効