ブロックリファレンス

BLOCKS Reference

BigQuery

単一テーブルから GCS へエクスポート

概要

BigQueryopen_in_newのテーブルをGCSopen_in_new上のファイルへ出力(エクスポート)するブロックです。

単一テーブルからGCSへエクスポートブロックの概念図

エクスポートするファイルのデータ形式は、以下いずれかのフォーマットが選択できます。

フォーマット 説明
CSV CSV形式のデータです。
NEWLINE_DELIMITED_JSON 改行区切りのJSON形式データです。JSON Linesと同形式です。

プロパティ

プロパティ名 説明
ブロック名

編集パネルに配置した当該ブロックの表示名が変更できます。

ブロックリストパネル中のブロック名は変更されません。

GCPサービスアカウント このブロックで使用するGCPサービスアカウントを選択します。
出力先ファイルのGCS URL

出力先GCS上のファイルURL("gs://バケット名/ファイル名"のようなURL)を指定します。

エクスポートサイズによる使い分け:

  • 1GB以下の場合:ワイルドカードなしで単一ファイルに出力できます。
    例:gs://my-bucket/data.json
  • 1GBを超える場合:ワイルドカード(*)を使用して複数ファイルに分割する必要があります(必須)。
    例:gs://my-bucket/data-*.json
    → 実際に生成されるファイル名:data-000000000000.jsondata-000000000001.json、...(12桁の0埋め連番)

ワイルドカードはファイル名部分の任意の位置に1つまで使用できます。「複数のワイルドカードURI」はサポートしていません。

制限事項や留意事項など詳しくは、Googleのドキュメント「テーブルデータのエクスポートopen_in_new」を参照してください。

変数展開の指定が可能][%形式の文字列書式の指定が可能]
出力元のデータセット

出力元のデータセットIDを指定します。

変数展開の指定が可能][%形式の文字列書式の指定が可能]
出力元のテーブル

出力元のテーブルIDを指定します。

変数展開の指定が可能][%形式の文字列書式の指定が可能]
ブロックメモ このブロックに関するメモが記載できます。このブロックの処理に影響しません。
ファイル形式

出力するファイルのフォーマットを選択します。選択できるフォーマットは次のいずれかです。

  • CSV
  • NEWLINE_DELIMITED_JSON
CSVの区切り文字

「ファイル形式」がCSVの場合の区切り文字を選択もしくは指定します。選択できる区切り文字は以下のいずれかです。

  • カンマ
  • タブ
  • パイプ
  • その他

「その他」を選択した場合は、「その他」の横の入力フィールドに、区切り文字を指定してください。

ヘッダー行を出力する 「ファイル形式」がCSVの場合、ヘッダ行を出力するかしないかを指定します。
ファイル圧縮

出力するファイルを圧縮するかどうかを選択します。

  • 圧縮しない
  • GZIP

このプロパティを使って圧縮したファイルは、そのまま「GCSから単一テーブルへロード」や「GCSから複数テーブルへロード」を使ってBigQueryのテーブルにロードできます。

圧縮を使用する場合の考慮事項

ファイル圧縮には、メリットとデメリットがあります。用途に応じて使い分けることが重要です。

項目 説明
メリット
  • ストレージコストの削減: ファイルサイズが大幅に削減されます(圧縮率はデータの性質に依存します)。
  • 転送時間の短縮: ネットワーク転送量が削減されるため、GCSへのエクスポート時間が短縮されます。
  • 転送コストの削減: データ転送量が減少するため、帯域制限がある環境で有効です。
デメリット
  • ロード時のパフォーマンス低下: GZIP圧縮ファイルは並列読み込みができないため、BigQueryへのロード速度が低下します。
  • ファイルサイズ制限: 圧縮後のCSV/JSONファイルは4GB以下である必要があります。この制限を超えるとロードジョブがエラーになります。
  • 圧縮処理時間: エクスポート時に圧縮処理の時間が追加されます。
warning 重要な制約事項
  • 圧縮ファイルは並列読み込みができません。GZIP形式は分割不可能なため、各ファイルは順次処理されます。
  • 圧縮CSV/JSONファイルは4GB以下である必要があります。大容量データをエクスポートする場合は、「出力先ファイルのGCS URL」にワイルドカード(*)を使用して複数ファイルに分割してください。例: gs://bucket/export-*.csv.gz
  • 同一ロードジョブ内で圧縮ファイルと非圧縮ファイルを混在させることはできません。
推奨される使用ケース
状況 推奨
ストレージコスト削減が最優先 GZIP圧縮を使用します。特にGCSに長期保存する場合に有効です。
ネットワーク帯域が制限されている GZIP圧縮を使用します。転送時間とコストを削減できます。
ロード速度が最優先 圧縮を使用しないでください。非圧縮ファイルは並列読み込みが可能で、最速のロードが実現できます。
頻繁なロード処理が必要 圧縮を使用しないでください。リアルタイムまたは頻繁なロード処理では、パフォーマンスが重要です。
バッチ処理で夜間実行 GZIP圧縮を使用できます。ロード時間に余裕がある場合は、ストレージコストを優先できます。

詳細については、Googleのドキュメント「テーブルデータのエクスポートopen_in_new」および「Cloud StorageからのCSVデータの読み込みopen_in_new」を参照してください。

出力ファイルにBOMを追加

チェックボックスにチェックを付けると出力ファイルにBOMopen_in_newを追加します。

この情報は役に立ちましたか?