The facility to modify a database schema (logical or storage schema) with no consequent requirement to modify user views or programs interacting with the database nor any need to reload data. To provide data independence has been a main motivation for the development of database management software. It is a relative term and different products provide different levels of data independence. It is particularly important for large shared databases that are required to evolve in line with user needs. The provision of data independence frequently conflicts with the need for efficient (i.e. fast) processing and usually necessitates some compromise in terms of the software techniques used. Logical data independence refers to the facility to change the logical schema and thus evolve the content of the database; physical data independence refers to the facility to change the storage schema and thus modify and improve performance.