転送実行記録
転送実行が生成する実行引数記録兼プロセスヘッダー
defined
validation: okcoverage: completeopen questions none
meaning: presentresponsibilities: presentboundaries: presentinvariants: presentrationale: presentevidence: presentlinked concepts: present
Open Questions
- None
Definition Statements
Meaning
7 statements
| Statement | Text |
|---|---|
転送実行が生成する実行引数記録兼プロセスヘッダーtransfer-execution-run-arguments-record-produce | 転送実行記録とは、`転送実行` が生成する実行引数記録兼プロセスヘッダーである。 |
Transfer Execution の引数を記録transfer-execution-run-record | Transfer Run は、`Transfer Execution` の引数を記録する。 |
実行開始時の引数と、実行全体のライフサイクル状態を保持transfer-run-lifecycle-state-hold | Transfer Run は、実行開始時の引数と、実行全体のライフサイクル状態を保持する。 |
必ず1つの Transfer Setting を対象にtransfer-run-setting-target-requires-one | Transfer Run は、必ず1つの `Transfer Setting` を対象にする。 |
Transfer Setting が分かれば、その転送設定に紐づく Destination 群を特定できるdestination-transfer-setting-belongs | `Transfer Setting` が分かれば、その転送設定に紐づく `Destination` 群を特定できる。 |
Transfer Execution に従属transfer-execution-run | Transfer Run は、`Transfer Execution` に従属する。 |
転送実行が生成する実行引数記録兼プロセスヘッダーであり、事前に積まれるキューではない。transfer-execution-run-arguments-record-produce-2 | Transfer Run は、`Transfer Execution` が生成する実行引数記録兼プロセスヘッダーであり、事前に積まれるキューではない。 |
Responsibilities
8 statements
| Statement | Text |
|---|---|
どの Transfer Setting に対する実行かを示すtransfer-run-setting | Transfer Run は、どの `Transfer Setting` に対する実行かを示す。 |
実行開始時の任意引数を保持transfer-run-optional-arguments-hold | Transfer Run は、実行開始時の任意引数を保持する。 |
実行全体のライフサイクル状態を示すtransfer-run-lifecycle-state | Transfer Run は、実行全体のライフサイクル状態を示す。 |
Transfer Execution のプロセスヘッダーとして、監査やデバッグで参照できる実行文脈を提供transfer-execution-run-context-reference | Transfer Run は、`Transfer Execution` のプロセスヘッダーとして、監査やデバッグで参照できる実行文脈を提供する。 |
後続の Lineage や Dirty Key Processing から参照できる実行単位を提供dirty-key-processing-lineage-transfer-run-unit-reference | Transfer Run は、後続の `Lineage` や `Dirty Key Processing` から参照できる実行単位を提供する。 |
日次、月次、手動、再実行などの実行契機の由来や分類を記録してよい。transfer-run-record | Transfer Run は、日次、月次、手動、再実行などの実行契機の由来や分類を記録してよい。 |
必要に応じて転送元スナップショットを取った時点を説明できる情報を保持してよい。transfer-run-source-hold | Transfer Run は、必要に応じて転送元スナップショットを取った時点を説明できる情報を保持してよい。 |
必要に応じて実行者、開始日時、終了日時、エラー情報などを保持してよい。transfer-run-hold | Transfer Run は、必要に応じて実行者、開始日時、終了日時、エラー情報などを保持してよい。 |
Boundaries
10 statements
| Statement | Text | Similarity negated |
|---|---|---|
転送対象行を直接管理しないnot-transfer-run-target-row-manage | Transfer Run は転送対象行を直接管理しない。 | - |
どの行を転送すべきかを管理しないnot-transfer-run-manage | Transfer Run は、どの行を転送すべきかを管理しない。 | - |
転送対象かどうかは、Transfer Target Decision で判断not-transfer-target-context-decide-work-item | 転送対象かどうかは、`Transfer Target Decision` で判断する。 | - |
Destination の定義を持たない。not-destination-transfer-run | Transfer Run は `Destination` の定義を持たない。 | destination |
転送元 SQL や転送先 SQL を持たない。not-transfer-run-source-destination-sql | Transfer Run は転送元 SQL や転送先 SQL を持たない。 | - |
転送先行の由来追跡を管理しないnot-lineage-transfer-run-destination-row-trace-manage | Transfer Run は、転送先行の由来追跡を管理しない。 | lineage |
赤伝時に参照すべき現在有効な黒を管理しないnot-transfer-run-active-black-red-reference-manage | Transfer Run は、赤伝時に参照すべき現在有効な黒を管理しない。 | - |
変更検知履歴の登録方法を定義しないnot-transfer-run-change-detection-history-define | Transfer Run は、変更検知履歴の登録方法を定義しない。 | - |
転送対象行がどのように固定化されるかの具体手順を定義しないnot-transfer-run-target-row-define | Transfer Run は、転送対象行がどのように固定化されるかの具体手順を定義しない。 | - |
スケジューリングそのものを管理しないnot-transfer-run-manage-2 | Transfer Run は、スケジューリングそのものを管理しない。 | - |
Invariants
10 statements
| Statement | Text |
|---|---|
必ず1つの Transfer Setting を対象にtransfer-run-setting-target-requires-one-2 | Transfer Run は、必ず1つの `Transfer Setting` を対象にする。 |
Transfer Execution によって生成される。transfer-execution-run-produce | Transfer Run は、`Transfer Execution` によって生成される。 |
Transfer Execution に従属transfer-execution-run-2 | Transfer Run は、`Transfer Execution` に従属する。 |
実行開始時の引数を後から追跡できる形で保持transfer-run-trace-hold | Transfer Run は、実行開始時の引数を後から追跡できる形で保持する。 |
の任意引数は、Transfer Setting の基礎 SQL で利用される可能性があるが、その解釈は Transfer Run 単独では決まらないtransfer-run-setting-base-sql-optional-arguments | Transfer Run の任意引数は、`Transfer Setting` の基礎 SQL で利用される可能性があるが、その解釈は Transfer Run 単独では決まらない。 |
転送対象行の正本ではない。transfer-run-target-row | Transfer Run は、転送対象行の正本ではない。 |
転送対象行を受け付けない。transfer-run-target-row-2 | Transfer Run は、転送対象行を受け付けない。 |
Lineage や Dirty Key Processing から参照可能である必要がある。dirty-key-processing-lineage-transfer-run-reference | Transfer Run は、`Lineage` や `Dirty Key Processing` から参照可能である必要がある。 |
が転送元スナップショットの時点を保持する場合、その情報は Lineage から参照される実行文脈として扱うlineage-transfer-run-source-context-reference-hold | Transfer Run が転送元スナップショットの時点を保持する場合、その情報は `Lineage` から参照される実行文脈として扱う。 |
の状態は、実行全体のライフサイクル状態を示すものであり、個別の実行試行、Destination ごとの成否、キーごとの処理結果を表すものではないdestination-transfer-run-lifecycle-state | Transfer Run の状態は、実行全体のライフサイクル状態を示すものであり、個別の実行試行、`Destination` ごとの成否、キーごとの処理結果を表すものではない。 |
Rationale
6 statements
| Statement | Text |
|---|---|
Targets One Transfer Settingdestination-transfer-execution-run-setting-arguments-target-record | Transfer Run Targets One Transfer Setting: Transfer Run は、`Transfer Execution` が生成する実行引数記録兼プロセスヘッダーである。 Transfer Run は、必ず1つの `Transfer Setting` を対象にする。 `Transfer Setting` が分かれば、その `Transfer Setting` に紐づく `Destination` 群を特定できる。 Transfer Run は、`Transfer Execution` がどの `Transfer Setting` を実行対象にしたかを示す。 |
Run Arguments Are Run Conditionstransfer-execution-run-setting-base-sql-optional-arguments | Run Arguments Are Run Conditions: Transfer Run は、`Transfer Execution` の実行開始時任意引数を持ってよい。 任意引数の例: - 処理日 - 対象年月 - 支店 - 顧客 - 実行者 - 再実行理由 - 手動実行フラグ これらの引数は、`Transfer Setting` の基礎 SQL で条件値として利用される可能性がある。 ただし、Transfer Run はそれらの引数をどのように SQL へ反映するかを定義しない。 任意検索条件の具体的な扱いは、`Transfer Setting` の基礎 SQL と [SSSQL](/guide/sssql-overview) に従う。 |
Run Status Is Run Lifecycle Statedestination-transfer-run-state-status-lifecycle-yaml-created | Run Status Is Run Lifecycle State: Transfer Run は、実行に対する進捗状態を持ってよい。 状態の例: ```yaml run_status: - created - running - succeeded - failed - cancelled ``` この状態は、実行全体の状態を示す。 個別の実行試行、`Destination` ごとの成否、キーごとの処理結果を表すものではない。 状態値の最終的な集合は、後続の実装 Issue で決めてよい。 ただし、Transfer Run の状態は「実行全体の進捗」を表す、という意味を変えてはならない。 |
Is Generated by Executiontransfer-execution-run-arguments-record-produce-generated | Transfer Run Is Generated by Execution: Transfer Run は、`Transfer Execution` が生成するプロセスヘッダーである。 `Transfer Execution` が Transfer Run を取り出して実行するのではなく、`Transfer Execution` が実行引数を Transfer Run として記録する。 |
Does Not Own Target Rowstransfer-run-target-row-context-decide-does-not | Transfer Run Does Not Own Target Rows: Transfer Run は、転送実行の条件を管理する。 Transfer Run は、転送対象行を受け付けるものではない。 どの行を転送すべきかは、`Work Item` の文脈で判断する。 Transfer Run は、転送対象行の正本ではない。 |
Is Referenced by Later Recordsdirty-key-processing-lineage-transfer-run-source-destination | Transfer Run Is Referenced by Later Records: Transfer Run は、後続の `Lineage` や `Dirty Key Processing` から参照される実行単位である。 `Lineage` は、どの転送元キーが、どの転送先キーへ、どの実行で転送されたかを記録する。 `Lineage` が参照するスナップショットの時点は、Transfer Run の実行文脈として説明される。 Transfer Run は、`Lineage` が参照する実行文脈である。 `Dirty Key Processing` は、どの実行で Dirty Key が処理されたかと、その処理結果を記録する。 |
Internal Links
- None
External Relationships
| Concept | Kind | Reason | Supported by | Evidence |
|---|---|---|---|---|
転送設定transfer-setting | targets | Transfer Run は必ず1つの Transfer Setting を対象にする。 | destination-transfer-setting-belongs, transfer-run-setting, transfer-run-setting-target-requires-one-2 | spec:transfer-run |
転送設定transfer-setting | must-not-redefine | Transfer Run は Transfer Setting の内容を再定義しない。 | destination-transfer-setting-belongs, transfer-run-setting, transfer-run-setting-target-requires-one-2 | spec:transfer-run |
変更キーdirty-key | must-not-redefine | Transfer Run は Dirty Key の意味を再定義しない。 | dirty-key-processing-lineage-transfer-run-unit-reference, dirty-key-processing-lineage-transfer-run-reference, dirty-key-processing-lineage-transfer-run-source-destination | spec:transfer-run |
Coverage
| Area | Coverage | Reason | Resolution criteria |
|---|---|---|---|
definition | complete | concept.json の意味、責務、境界、不変条件、理由を curated statement として移植済み。 | - |
relationships | complete | concept-relationship.json と移行元 concept.json の外部関係を反映済み。 | - |
Evidence
| Evidence ID | Type | Path | Exists |
|---|---|---|---|
spec:transfer-run | spec | concept.json | yes |
Validation
- No validation issues.
Technical Metadata
- Source JSON:
packages/transfer/docs/concepts/transfer-run/concept.json