
Data provenance

Keeping track of data provenance means being able to reconstruct the complete history of each calculation or scientific result, including all steps that lead up to it and all parameters used in intermediate calculations.

In AiiDA, data provenance is tracked automatically and stored in the form of a directed acyclic graph. For example, each calculation is represented by a node, that is linked to its input and output data nodes. The provenance graph is stored in a local database that can be queried using a high-level python interface that allows for performant queries on millions of nodes.