ジョブフローは、複数のジョブを順番に実行する機能です。スケジュール設定や特定のデータテーブルの更新をトリガーに、データのインポート・エクスポートを自動化できます。ここでは、ジョブフローの作成と各種設定方法について説明します。
[Datahub > ジョブフロー]を開き、「ジョブフローを作成」 をクリックし、ジョブフローの設定画面を開きます。
ジョブフローを設定する
ジョブフローを設定する手順は簡単に書くと、次のとおりです。
ジョブを設定する
オプションを設定する
設定内容を保存する
以降では、1,2について説明します。
ジョブを設定する
「ジョブを追加」をクリックすると、追加するジョブタイプを選択できます。ジョブフローには複数のジョブ(最大で8つのジョブ)を追加でき、追加した順番に実行されます。
ジョブタイプには次の2種類があります。
| ジョブタイプ | 説明 |
|---|---|
| データテーブルへインポート | 外部サービスやクエリの実行結果からデータをインポートします |
| クエリ実行結果のエクスポート | クエリの実行結果を外部サービスへエクスポートします |
データテーブルへインポート
外部サービスやクエリの実行結果をデータテーブルにインポートするジョブです。
このジョブタイプでは、「インポート元」と「インポート先」を選択する必要があります。
インポート元
次の3種類から選択します。
クエリの実行結果
KARTE紐付けテーブル
外部サービス
「外部サービス」を選択した場合の手順について補足します。
接続先を指定する
あらかじめ作成されている接続先を選択してください。
まだ作成されていない場合は、「接続先の作成・管理」より作成してください。
接続先に応じた個別設定をする
各接続先に応じた設定を行います。
詳細の設定方法については、各外部サービスの接続方法の記事をご確認ください。
なお、GCS、S3、SFTPなど一部の接続先には共通の設定があります。
スキーマ
共通設定の1つに「スキーマ」があります。
「自動型判定を有効にする」にチェックを入れると、スキーマの自動検出が実施されます。
ただし、自動検出の場合、想定した型とは異なる型としてファイルが読み込まれてしまう場合があります。そのため、可能な限りスキーマは明示的に指定してください。
「自動型判定を有効にする」のチェックを外すことで、スキーマを明示的に指定できます。
スキーマの入力は「スキーマ(UI)」と「スキーマ(テキスト)」の2つのモードを切り替えて使用できます。
スキーマ(UI):フォーム上でカラム名・データ型・モードを1行ずつ入力します。「フィールドを追加」をクリックするとカラムを追加できます。
スキーマ(テキスト):テキスト形式でまとめて入力できます。
カラム名:データ型の組をカンマ区切りで指定します。形式:
column_name1:TYPE1,column_name2:TYPE2,...例:
user_id:STRING,age:INTEGER,created_at:TIMESTAMP
カラム名の規約
カラム名に使用できる文字は次のとおりです。
最初の文字:英字(a-z、A-Z)またはアンダースコア(_)
2文字目以降:英字(a-z、A-Z)、アンダースコア(_)、数字(0-9)
最大128文字
指定可能なデータ型
| データ型 | 説明 | 例 |
|---|---|---|
| STRING | 文字列 | "山田太郎" |
| BYTES | バイト列 | { "0": 116, "1": 101, "2": 115, "3": 116 } |
| INTEGER | 整数 | 42 |
| FLOAT | 浮動小数点数 | 3.14 |
| NUMERIC | 精度の高い数値 | 1234.56 |
| BIGNUMERIC | より大きな精度の数値 | 123456789.123456789 |
| BOOLEAN | 真偽値 | TRUE, FALSE |
| TIMESTAMP | タイムスタンプ(日時+タイムゾーン) | 2026-01-01T09:00:00.000Z |
| DATE | 日付 | 2026-01-01 |
| TIME | 時刻 | 09:00:00 |
| DATETIME | 日時(タイムゾーンなし) | 2026-01-01T09:00:00 |
| GEOGRAPHY | 地理情報 | POINT(139.767 35.681) |
| RECORD | ネストされたフィールド | NULLABLE: {"name": "Alice", "age": 30}REPEATED: [{"name": "Alice", "age": 30}, {"name": "John", "age": 35}] |
| JSON | JSON形式のデータ | {"name": "Alice", "age": 30} |
詳細については、BigQueryの型名をご確認ください。
モードの種類
| モード | 説明 |
|---|---|
| NULLABLE | NULLを格納できます |
| REPEATED | 1行に複数のオブジェクトを配列で格納できます |
インポート先
データテーブル、そしてデータをインポートするルールを選択します。
データテーブル
既存のテーブルの選択、もしくは新規のテーブルを作成できます。
作成方法については、データテーブルを作成するをご確認ください。
ルール
選択できるルールは次の2種類です。
| ルール | 説明 |
|---|---|
| 置き換え | 既存のデータを置き換えます |
| 追加 | 既存のデータを保持したまま、新しいデータを追加します |
クエリ実行結果のエクスポート
クエリの実行結果をエクスポートするジョブです。
このジョブタイプでは、「エクスポート元」と「エクスポート先」を選択する必要があります。
エクスポート元
エクスポートするクエリを選択します。
エクスポート先
次の3種類から選択します。
KARTEアクションテーブル
KARTE紐付けテーブル
外部サービス
オプションを設定する
オプションとして、ジョブフローの「実行スケジュールのカスタマイズ」「実行後の処理」の設定を行うことができます。
スケジュール実行を有効にする
「スケジュール実行を有効にする」にチェックを入れると、指定した日時にジョブフローを実行できます。
このオプションで実現できることは次のとおりです。
ジョブフローの単発での実行
「繰り返し実行を有効にする」にチェックを入れない場合、ジョブフローは単発での実行となります。
ジョブフローの繰り返しでの実行
「繰り返し実行を有効にする」にチェックを入れると、指定した日時においてジョブフローは繰り返しでの実行となります。
「実行間隔」を指定することで、次のような日時を指定できます。
毎月3日 10:00
毎週日曜日 15:30
平日 18:00
毎時15分
注意点
ジョブフローの繰り返しでの実行を設定していても、次のケースに合致する場合、そのジョブフロー実行はスキップされます。
ジョブフローがアーカイブされている場合
あるジョブフロー実行の開始時点で前回のジョブフロー実行が終了していない場合
特定のデータテーブルが更新されたら実行する
特定のデータテーブルが更新されたときのジョブフローを実行できるようにするオプションです。
「特定のデータテーブルが更新されたら実行する」にチェックを入れ、対象とするテーブルを選択することで利用できます。
注意点
フェデレーションテーブルに登録している元データソースの更新を検知してジョブフローを実行することはできません
ワイルドカードテーブル(シャーディングテーブル、日付別テーブル)を指定して、該当するいずれかのテーブルの更新を検知してジョブフローを実行することはできません
「特定のデータテーブルが更新されたら実行する」機能を利用するときの注意点にあるように、対象のデータテーブルの更新が1回でも失敗すると、監視機能が自動的に停止します
実行後の処理
ジョブフローの実行終了後にアーカイブできるようにするオプションです。
「ジョブ実行終了後にアーカイブ」にチェックを入れることで利用できます。