Most data management scenarios today rarely have a situation in which all the data that needs to be managed can fit nicely
into a conventional relational DBMS, or into any other single data model or system. Instead, we see a set of loosely connected
data sources, typically with the following recurring challenges:
– Users want be able to search the entire collection without having knowledge of individual sources, their schemas or interfaces.
In some cases, they merely want to know where the information exists as a starting point to further exploration.
– An organization may want to enforce certain rules, integrity constraints, or conventions (e.g., on naming entities) across
the entire collection, or track flow and lineage between systems. Furthermore, the organization needs to create a coherent
external view of the data.
– The administrators may want to impose a single “support system” in terms of recovery, availability, and redundancy, as well
as uniform security and access controls.
– Users and administrators need to manage the evolution of the data, both in terms of content and schemas, in particular as
new data sources get added (e.g., as a result of mergers or new partnerships).