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