DRDataRaft/ docs
GitHub ↗

dr_lineage()

Traverses dataset IDs while retaining version IDs on each returned edge. It does not infer column lineage or reconstruct a single historical DAG. Run results expose only recorded inputs for that exact execution, without querying the latest lake state or inferring unrecorded upstream edges.

Usage

dr_lineage(
  x,
  asset = NULL,
  direction = c("upstream", "downstream"),
  recursive = TRUE
)

Arguments

x
Connected lake, run result, measurement, measurement set, dbt result or dbt artifact directory. Measurement edges describe the input release and metric version; they have no execution run ID.


asset
Optional starting dataset ID (dbt unique ID for dbt inputs).


direction
Follow upstream inputs or downstream consumers.


recursive
Follow all reachable edges, with cycle protection.

Value

A tibble of lineage edges with endpoint IDs and versions. dbt edges have empty version fields because a manifest declares dependencies.

Examples

orders <- dr_product("orders", data.frame(id = 1:3))
totals <- dr_product("totals", orders) |>
  dr_add_recipe(dr_recipe() |> dr_step_summarise(n = dplyr::n()))
dr_lineage(dr_run(totals))
Documentation source snapshot · View source at d9cb454 ↗
Code examples are documented source examples; they are not executed in this website build.

Search documentation

Search functions, packages and guides.