Lineage Trace Process Map
Purpose
この文書は、@rawsql-ts/transfer の監査、デバッグ、由来追跡のための Lineage 照会プロセスを整理する。
Concept Spec は概念の意味、責務、非責務、不変条件を定義する。 この文書は、destination table の行から Lineage を通じて元ネタ、実行文脈、宛先別文脈、関連履歴を確認する process map である。
この文書は Concept Spec 本文を再定義しない。 照会 SQL、画面、API、監査ログ実装は定義しない。
Lineage は immutable transfer model の転送時に存在する概念である。 この文書の trace 対象は、Lineage が存在する destination table の行に限る。 mutable transfer model の追跡は、Lineage ではなく処理ログ、監査ログ、または別の追跡概念で扱う。
Process Map Rule Reference
This document follows the shared Process Map Rules.
Diagram Legend
flowchart LR
Record[("Record / storage")]
State(["State machine / process"])
ExternalTable[/External physical table/]
DerivedView[["Derived view / query result"]]
Trace Origin From Destination Row flow
Trace Origin From Destination Row は、destination table の行を起点に、その行がどの元ネタから、どの実行文脈と宛先別文脈で作られたかを確認する。
主な用途は、転送先行を見た人が「この行はどうやってできたのか」を調べることである。
この process map では、読み取り専用の中間結果を Derived view として表す。 これは CTE や一時表の物理設計ではなく、照会結果を段階的に理解するための概念的な view である。
flowchart TD Start(["start"]) ResolveLineageMatch(["Resolve Lineage Match"]) BuildOriginContext(["Build Origin Context"]) Done(["done"]) Start --> ResolveLineageMatch ResolveLineageMatch --> BuildOriginContext BuildOriginContext --> Done
Resolve Lineage Match detail
Resolve Lineage Match は、調査対象の destination table 行に対応する Lineage 1行を特定し、後続プロセスで参照できる Matched Lineage Row を作る。
flowchart LR
DestinationTable[/destination table/]
Lineage[("Lineage")]
ResolveLineageMatch(["Resolve Lineage Match"])
MatchedLineageRow[["Matched Lineage Row"]]
DestinationTable -->|調査対象の転送先行| ResolveLineageMatch
Lineage -->|転送元と転送先の対応| ResolveLineageMatch
ResolveLineageMatch -->|対応する Lineage 1行| MatchedLineageRow
Build Origin Context detail
Build Origin Context は、Matched Lineage Row を起点に、元ネタ、実行文脈、転送設定、宛先別文脈を集めた Origin Trace View を作る。
flowchart LR
MatchedLineageRow[["Matched Lineage Row"]]
TransferRun[("Transfer Run")]
TransferSetting["Transfer Setting"]
DestinationLink["Destination Link"]
BuildOriginContext(["Build Origin Context"])
OriginTrace[["Origin Trace View"]]
MatchedLineageRow -->|source key 情報| BuildOriginContext
TransferRun -->|実行文脈| BuildOriginContext
TransferSetting -->|転送設定文脈| BuildOriginContext
DestinationLink -->|宛先別文脈| BuildOriginContext
BuildOriginContext -->|照会結果| OriginTrace
Trace Destination Row History flow
Trace Destination Row History は、destination table の行を起点に、同じ source key と Destination Link の文脈で作られた前後の Lineage を確認する。
主な用途は、その行が現在有効な行なのか、過去にどのような変更履歴があり、この後にどのような変更が起きたのかを調べることである。
flowchart TD Start(["start"]) ResolveLineageHistory(["Resolve Lineage History"]) BuildHistoryView(["Build Destination Row History View"]) Done(["done"]) Start --> ResolveLineageHistory ResolveLineageHistory --> BuildHistoryView BuildHistoryView --> Done
Resolve Lineage History detail
Resolve Lineage History は、調査対象の destination table 行に対応する Lineage を特定し、その Lineage と同じ source key と Destination Link の文脈にある履歴 N 行のキーを特定する。
Trace Origin From Destination Row が調査対象行に対応する Lineage 1行を取得するのに対し、このプロセスは履歴照会のために関連する Lineage N 行を取得する。
flowchart LR
DestinationTable[/destination table/]
Lineage[("Lineage")]
ResolveLineageHistory(["Resolve Lineage History"])
LineageHistoryKeyList[["Lineage History Key List"]]
DestinationTable -->|調査対象の転送先行| ResolveLineageHistory
Lineage -->|転送元と転送先の対応| ResolveLineageHistory
ResolveLineageHistory -->|関連する Lineage と転送先行のキー| LineageHistoryKeyList
Build Destination Row History View detail
Build Destination Row History View は、Lineage History Key List と destination table を使って、履歴照会結果として Destination Row History View を作る。
flowchart LR LineageHistoryKeyList[["Lineage History Key List"]] DestinationTable[/destination table/] BuildHistoryView(["Build Destination Row History View"]) DestinationRowHistory[["Destination Row History View"]] LineageHistoryKeyList -->|履歴キー一覧| BuildHistoryView DestinationTable -->|転送先行| BuildHistoryView BuildHistoryView -->|照会結果| DestinationRowHistory
Generated Review Metadata
This section is generated for human review. Edit the source Process Map and relationship metadata instead.