Watch the loop: sources flow into a job, the job writes a destination, and Assign attaches an owner from user_email. Tables no job touches stay unreferenced — on the Desk, not in a catalog.
Not Dataplex / Knowledge Catalog Data Lineage. We use JOBS referenced_tables, destination, bytes billed, and slot-ms. If ownership is not knowable, the finding stays needs owner. Never AutoApply.
referenced_tables plus bytes billed and slot-ms. That is the graph we use — not how data moved through Dataplex.
A job that reads more tables than the destination justifies ranks as waste, not as a catalog edge.
Tables that never appear on a job stay on the Desk. Operational metadata — not a missing Dataplex event.
Resolve user_email and destination to a workload owner. If it is not knowable, we do not invent one.
Dataplex / Knowledge Catalog Data Lineage is the right tool for process, run, and event graphs. It is not a workload owner, and it does not rank unreferenced tables or fan-out scan as waste.
Processes, runs, and events show how data moved. Assign still needs user_email, destination table, and a resolvable workload — or the finding stays needs owner.
JOBS referenced_tables plus bytes billed and slot-ms show jobs that read far more tables than the destination justifies. That is waste, not a catalog edge.
The Desk can flag tables that never appear in referenced_tables. That is operational metadata — not a claim that Dataplex is missing an event.
JOBS / JOBS_BY_PROJECT: referenced_tables, user_email, destination table, bytes billed, slot-ms. The Private Knowledge Graph is ownership memory — it does not AutoApply, and it does not invent an owner.
Four stages. Job-level referenced_tables. Not a Dataplex catalog. Never AutoApply.
Rank fan-out scan waste and unreferenced tables from JOBS referenced_tables, bytes billed, and slot-ms — not a process graph of how data moved.
Resolve user_email and destination table to a workload owner. If ownership is not knowable, the finding stays needs owner. The Private Knowledge Graph is ownership memory — it does not AutoApply.
The query or job-config change goes through your review process until it is applied, deferred with a reason, or dismissed.
The finding closes when scanned bytes, slot-ms, or the unreferenced-table count return to normal. Closure is from the data, not a catalog checkbox.
We do not replace Dataplex or Knowledge Catalog Data Lineage. We attach job-level table references to an owner and a closed decision.
In product. Metadata only. Not a Dataplex catalog.
referenced_tables (plus user_email, destination table, bytes billed, and slot-ms) so Assign can name an owner.