Data lineage and metadata
Data lineage
Data lineage tracks the origin and ownership of the data, and how the data changes and moves over time. Data lineage provides visibility and simplifies tracing errors back to the root cause in a data analytics process.
In Infrahub, data points such as attributes and relationships have data lineage associated with the object, provided via metadata
.
Metadata
One of the core features of Infrahub is that we can define metadata
on all data points: attributes and relationships.
The current supported metadata are:
- Source: Where is the data coming from. (By default, it can be an
Account
or aRepository
) - Owner: Who is the owner of this data (By default, it be a
Group
, anAccount
or aRepository
) - Is Protected: Flag to indicate if a value should be protected or not
- Is Visible: An attribute that is not visible, won't show up in the frontend but it will remain available via GraphQL
Currently the list of metadata available is fixed, but in the future it will be possible to define your own list of metadata.
Protected fields
When a field is marked as protected, all users that aren't listed as the owner won't be able to modify this specific attribute when trying to edit the object. They will still be able to modify the other attributes.
Note that accounts defined with the role of admin
can always update protected fields, regardless of Owner
.