クエリベースコネクタのリファレンス
プレビュー
この機能は パブリック プレビュー段階です。
このページには、 LakeFlow Connectのクエリベースコネクタに関するリファレンスドキュメントが含まれています。これには、構成の制限、カーソル列の要件、削除追跡構文、およびエラー条件が含まれます。
パイプライン構成
クエリベースのコネクタでは、次のものがサポートされています。 これらの値をパイプライン構成のingestion_definitionブロックに設定してください。
パラメーター | Type | 必須 | 説明 |
|---|---|---|---|
| string | 外部接続の取り込みに必要 | ソースデータベースの認証情報を格納する接続の名前。 |
| boolean | フォーリンカタログの取り込みに必要 | レイクハウスフェデレーションが支援するフォーリンカタログから取り込むには、 |
| string | はい | ソース システムのカタログ (または、 |
| string | はい | 取り込むソースシステムのスキーマ。 |
| string | テーブルレベルのオブジェクトに必須 | 取り込むソーススキーマ内のテーブル。 |
| string | 外部接続の取り込みに必要 | 増分追跡に使用するカーソル列の名前。単調増加する単一の列である必要があります。カーソル列の要件を参照してください。 |
| 文字列のリスト | フォーリンカタログの取り込みに必要 | カーソル列名を含むリスト。サポートされている列は1つのみです。 |
| 文字列のリスト | 履歴追跡 ( SCD ) モードが | マージ操作で行を識別するために使用される主キー列。 |
| string | No | ソフト削除を表す行に対して |
| integer | No | ハード削除を検出するためのプライマリキースナップショットスキャン間の最小間隔(秒)。設定されていない場合、完全削除の追跡は無効になります。APIを使用してのみ設定可能です(ベータ版)。完全削除の追跡を参照してください。 |
| string | No | 宛先テーブルの履歴追跡(SCD)モード。サポートされている値: |
| string | はい | 書き込み先のテーブルを指定するカタログ。 |
| string | はい | 書き込み先のテーブルのスキーマ。 |
| string | No | 宛先テーブルの名前。指定しない場合は、ソーステーブル名がデフォルト値として使用されます。宛先テーブルの名前指定を参照してください。 |
カーソル列の要件
カーソル列は、パイプライン実行間の進捗状況を段階的に追跡します。コネクタは、各実行が成功するたびに最大カーソル値を保存し、次回の実行時にそれを下限フィルタとして使用します。
要件:
- カーソル列は1つだけ指定する必要があります。複合カーソルとして複数の列を指定することはできません。複数指定した場合、パイプラインは
INVALID_CURSOR_COLUMNSで失敗します。 - カーソル列は単調増加しなければならない。価値は決して低下してはならない。カーソル値が保存された最高水位マーク以下の行は、後続の実行時に再取り込みされません。
- カーソル列がNULLの行は取り込まれません。
サポートされている列タイプ:
- タイムスタンプまたは日付型(推奨)
- 数値型(整数、長整数、小数、倍精度浮動小数点数)
- バイナリ型(バイナリ数としてエンコードされたもの)
- 文字列型
削除条件
deletion_condition問題により、クエリベースのコネクタが論理的な削除を検出できるようになります。 この機能はAPIを使用してのみ設定可能です。
この値は、宛先テーブルで削除済みとして扱われるべき行に対してtrueと評価されるSQL式です。コネクタは、パイプラインの実行ごとにこの式を評価します。
構文:
"deletion_condition": "<sql-expression>"
例:
"deletion_condition": "deleted_at IS NOT NULL"
"deletion_condition": "is_deleted = 1"
"deletion_condition": "status = 'DELETED'"
行がdeletion_conditionに一致すると、コネクタは対応する行を宛先テーブルから削除するか ( SCD_TYPE_1の場合)、削除済みとしてマークします ( SCD_TYPE_2の場合)。
完全削除追跡
hard_deletion_sync_min_interval_in_seconds問題により、クエリベースのコネクタはハード削除、つまりソース テーブルから物理的に削除された行を検出できるようになります。 この機能はベータ版であり、APIを使用してのみ設定可能です。
ハード削除追跡は、ソーステーブルに存在する主キーのスナップショットを定期的に取得し、それを宛先テーブルと比較することによって機能します。宛先には存在するが、ソースのスナップショットには存在しない行は、削除されたものとして扱われます。
この値は、スナップショットスキャン間の最小間隔(秒単位)を設定します。この値は下限値として機能します。パイプラインの実行頻度がこの間隔よりも低い場合、ハード削除同期はより頻繁に実行されるのではなく、実際の取り込み頻度に合わせて実行されます。この問題を更新しても、完全なスナップショットはトリガーされません。
ハード削除の追跡には、テーブル上でprimary_keysを設定する必要があります。
構文:
"hard_deletion_sync_min_interval_in_seconds": <integer>
例:
"hard_deletion_sync_min_interval_in_seconds": 86400
この例では、ハード削除スキャンは24時間(86400秒)に1回以下実行されます。
エラー条件
最もよくあるエラーはINVALID_CURSOR_COLUMNSです。これは、カーソル列が正しく設定されていない場合に発生します。ステップのトラブルシューティングについては、 「無効なカーソル列」を参照してください。