A pattern that provides an abstract interface to some type of database or other persistence mechanism.