Если система базы данных не является многоуровневой, то становится трудно вносить какие-либо изменения в систему базы данных. Системы баз данных спроектированы в несколько слоев, как мы узнали ранее.
Независимость данных
Система баз данных обычно содержит много данных в дополнение к данным пользователей. Например, он хранит данные о данных, известные как метаданные, чтобы легко находить и получать данные. Довольно сложно изменить или обновить набор метаданных после их сохранения в базе данных. Но по мере расширения СУБД она должна со временем меняться, чтобы удовлетворить требования пользователей. Если все данные зависят, это станет утомительной и очень сложной задачей.
Метаданные сами по себе следуют многоуровневой архитектуре, поэтому при изменении данных на одном уровне они не влияют на данные на другом уровне. Эти данные независимы, но сопоставлены друг с другом.
Независимость логических данных
Логические данные — это данные о базе данных, то есть они хранят информацию об управлении данными внутри. Например, таблица (отношение), хранящаяся в базе данных, и все ее ограничения, примененные к этому отношению.
Независимость логических данных — это своего рода механизм, который освобождает себя от фактических данных, хранящихся на диске. Если мы внесем некоторые изменения в формат таблицы, это не должно изменить данные, хранящиеся на диске.
Независимость физических данных
Все схемы являются логическими, а фактические данные хранятся в битовом формате на диске. Независимость от физических данных — это возможность изменять физические данные без влияния на схему или логические данные.
Например, в случае, если мы хотим изменить или обновить саму систему хранения — предположим, что мы хотим заменить жесткие диски на SSD — это не должно оказывать никакого влияния на логические данные или схемы.