1. Разделение и изоляция данных (изолированы в отдельных файлах и доступ к ним затруднен);
2. Дублирование данных (из-за децентрализованной работы с данными, что может привести к а) неэкономному расходу ресурсов и б) к нарушению их целостности);
2. Зависимость от данных (из-за того, что физическая структура и способ хранения файлов данных жестко зафиксированы в коде программ приложений);
3. Несовместимость файлов (приложения могут создаваться в разных системах программирования, независимо друг от друга);
4. Фиксированные запросы/ быстрое увеличение количества приложений (запросы формируются программистом при создании приложения).
Все перечисленные ограничения файловых систем являются следствием двух факторов:
1. - Определение данных содержится внутри приложений, а не хранится отдельно и независимо от них;
2. – Помимо приложений не предусмотрено никаких других инструментов доступа к данным и их обработки.
Как было показано в первой лекции, традиционных возможностей файловых систем оказывается недостаточно для построения даже простых информационных систем. Мы выявили несколько потребностей, которые не покрываются возможностями систем управления файлами: поддержание логически согласованного набора файлов; обеспечение языка манипулирования данными; восстановление информации после разного рода сбоев; реально параллельная работа нескольких пользователей. Можно считать, что если прикладная информационная система опирается на некоторую систему управления данными, обладающую этими свойствами, то эта система управления данными является системой управления базами данных (СУБД).
База данных: Совместно используемый набор логически связанных данных (и описание этих данных), предназначенный для удовлетворения информационных потребностей организации.
Более точно, к числу функций СУБД принято относить следующие:
Эта функция включает обеспечение необходимых структур внешней памяти как для хранения данных, непосредственно входящих в БД, так и для служебных целей, например, для убыстрения доступа к данным в некоторых случаях (обычно для этого используются индексы). В некоторых реализациях СУБД активно используются возможности существующих файловых систем, в других работа производится вплоть до уровня устройств внешней памяти. Но подчеркнем, что в развитых СУБД пользователи в любом случае не обязаны знать, использует ли СУБД файловую систему, и если использует, то как организованы файлы. В частности, СУБД поддерживает собственную систему именования объектов БД.