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