By explaining how the result of an operation was derived from its inputs, data provenance has proven to be a useful tool that is applicable in a wide variety of applications. This monograph gives a comprehensive introduction to data provenance concepts, algorithms and methodology developed in the last few decades.