Google Cloud Storage

Google Cloud Storage(GCS)と双方向のデータ連携が可能です。

データ連携のパターン

事前準備

Google Cloud Storageのコンソールから、KARTE側のGCPサービスアカウントに対して権限を付与してください。

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

[データハブ設定] 画面 > [サービスアカウント管理] タブ > [ビルトインGoogleサービスアカウント]

必要な権限

  • Datahubにインポートする場合
    • storage.objects.get
    • storage.objects.list
  • Datahubからエクスポートする場合
    • storage.objects.create
    • 上書きをする場合は overwrite 権限をもつroleが必要です。

GCP側の権限に関する詳細は、こちらをご参照ください。

Datahubクエリから直接参照する場合

Datahubジョブ設定

インポート

「ファイルパス」と「プレフィックス」はどちらか一方を指定してください。

  • [バケット]
    • 例: karte-bucket
  • [ファイルパス]
  • [プレフィクス]
    • 前方一致で指定します
      • こちらを入力すると、合致する全てのファイルがインポート対象になります
      • 例: karte-bucket の配下に karte1.csv karte2.csv karte3.csv のファイルがあった場合
        • プレフィクスをkarteとすると全てのファイルがインポートされます
        • karte1karte1.csv では karte-bucket/karte1.csv のみが対象となります
    • ジョブ実行日時を使ったプレフィックスの動的指定に対応しています
  • [区切り文字]
    • 入力ファイルの区切り文字を以下から選択します
      • カンマ
      • タブ
      • パイプ
  • [フォーマット]
    • 入力ファイルのフォーマットを以下から選択します
      • CSV
        • デフォルト
      • JSON(改行区切り)
  • [スキーマ]
    • 以下のような形式で、各フィールドの型を指定してください
      • column_name1:type_name1,column_name2:type_name2,...
      • 例: user_id:STRING,age:INT64
    • 型名は、BigQueryの型名を指定してください
    • BigQueryのスキーマの自動検出機能を利用して取り込む場合は、「自動型判定を有効にする」にチェックを入れてください
  • [引用符で囲まれた改行を許可する]
    • 改行を許可する場合はチェックを入れてください
      • その際、ファイル中の改行は必ず囲み文字で囲んでください

エクスポート

  • [バケット]
    • 例: karte-bucket
  • [ファイルパス]
    • 完全一致で指定します
      • 例: foo/bar/baz.csv
    • ジョブ実行日時を使ったプレフィックスの動的指定に対応しています
    • 1GBを超えるファイルは分割されてエクスポートされます
      • ファイル名をfoo/bar/baz.csv のように指定した場合、foo/bar/baz-00000001.csv のように変更されて出力されます
  • [出力形式]
    • 出力ファイルの出力形式を以下から選択します
      • CSV
        • デフォルト
      • JSON (改行区切り)
  • [ヘッダー行を出力する]
    • ファイルにヘッダー行を出力する場合はチェックを入れてください

📘

KARTEからGCSバケットを払い出す機能について

GCSの簡易的な利用のために、GCSバケットをKARTEのプロジェクトに対して払い出すことも可能です。詳しくはこちらをご覧ください。

FAQ

Q. 東京リージョンのGCSバケットとDatahubデータセットの間でデータをインポート/エクスポートすることは可能ですか?

  • ジョブフローを利用することで可能です

Q. エクスポート時の文字コードと改行コードは?

エクスポート時の改行コードは以下の通りです

  • 文字コード
    • UTF-8
  • 改行コード
    • LF