Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы Информационные системы.docx
Скачиваний:
15
Добавлен:
20.11.2019
Размер:
219.76 Кб
Скачать
  1. Реляционная модель данных. Пустые значения.

Пустое значение – это просто одно из множества возможных значений какого-то вполне определенного типа данных.

Перечислим наиболее «естественные», непосредственные пустые значения (т. е. пустые значения, которые мы могли бы выделить самостоятельно, не имея никакой дополнительной информации):

1) 0 (нуль) – нулевое значение является пустым для числовых типов данных;

2) false (неверно) – является пустым значением для логического типа данных;

3) B’’ – пустая строка бит для строк переменной длины;

4) “” – пустая строка для строк символов переменной длины.

В приведенных выше случаях определить, пустое значение или нет, можно путем сравнивания имеющегося значения с константой пустого значения, определенной для каждого типа данных. Но системы управления базами данных в силу реализованных в них схем долговременного хранения данных могут работать только со строками постоянной длины. Из-за этого пустой строкой бит можно назвать строку двоичных нулей. Или строку, состоящую из пробелов или каких-либо других управляющих символов, – пустой строкой символов.

Вот несколько примеров пустых строк постоянной длины:

1) B’0’;

2) B’000’;

3) ‘ ‘.

Как же в этих случаях определить, является ли строка пустой?

В системах управления базами данных для проверки на пустоту применяется логическая функция, т. е. предикат IsEmpty (<выражение>), что буквально означает «есть пустой». Этот предикат обычно встроен в систему управления базами данных и может применяться к выражению абсолютно любого типа. Если такого предиката в системах управления базами данных нет, то можно написать логическую функцию самим и включить ее в список объектов проектируемой базы данных.

Рассмотрим еще один пример, когда не так просто определить, пустое ли мы имеем значение. Данные типа «дата». Какое значение в этом типе считать пустым значением, если дата может варьироваться в диапазоне от 01.01.0100. до 31.12.9999? Для этого в СУБД вводится специальное обозначение для константы пустой даты {…}, если значения этого типа записывается: {ДД. ММ. ГГ} или {ГГ. ММ. ДД}. С этим значением и происходит сравнение при проверке значения на пустоту. Оно считается вполне определенным, «полноправным» значением выражения этого типа, причем наименьшим из возможных.

При работе с базами данных пустые значения часто используются как значения по умолчанию или применяются, если значения выражений отсутствуют.

  1. Эволюция систем управления базами данных.

Система управления базами данных (СУБД) является базовой структурой информационной системы, в корне изменившей методы работы многих организаций.

Предшественницей СУБД была файловая система, при работе с которой каждая программа определяла и управляла своими собственными данными. Использование файловой системы всегда сопряжено с большими проблемами, которые в основном связаны с избыточностью данных и зависимостью программ от данных.

Появление СУБД было вызвано необходимостью разрешить проблемы, характерные для файловых систем. База данных - это совместно используемый набор логически связанных данных (и описание этих данных), который предназначен для удовлетворения информационных потребностей организации. СУБД - это программное обеспечение, которое позволяет пользователям определять, создавать и обслуживать базу данных, а также управлять доступом к ней.

Доступ к базе данных осуществляется с помощью СУБД. В СУБД предусмотрен язык определения данных DDL, с помощью которого пользователи могут определять структуру базы данных, а также язык управления данными DML, с помощью которого пользователи могут вставлять, удалять и извлекать данные из базы.

СУБД позволяет организовать контроль за доступом пользователей к базе данных. Она предоставляет средства поддержки безопасности и целостности данных, обеспечивает параллельную работу многих приложений, средства копирования/восстановления, а также позволяет организовать доступный пользователям каталог. В типичной СУБД также предусмотрен механизм создания представлений, предназначенных для упрощения вида данных, с которыми имеют дело пользователи.

Среда СУБД состоит из аппаратного обеспечения (компьютеров), программного обеспечения (СУБД, операционной системы и приложений), данных, процедур и пользователей. В данном контексте к пользователям относятся администраторы данных и баз данных, проектировщики баз данных, прикладные программисты и конечные пользователи.

Иерархические и CODASYL-системы представляют собой первое поколение СУБД. Типичным представителем иерархической модели является система IMS (Information Management System), a сетевой (CODASYL-модели) - система IDS (Integrated Data System). Обе они появились в середине 60-х годов. Реляционная модель, впервые предложенная Э. Ф. Коддом в 1970 году, представляет собой второе поколение СУБД. Она оказала значительное влияние на сообщество разработчиков СУБД, и в настоящее время существует более 100 различных типов реляционных СУБД.

Третье поколение СУБД представляют объектно-реляционные СУБД и объектно-ориентированные СУБД.

В СССР в середине 70-х годов была разработана универсальная СУБД, которую с точки зрения сегодняшнего дня (с некоторыми оговорками) можно отнести к системам третьего поколения

Среди преимуществ подхода, основанного на использовании баз данных, следует отметить контролируемую избыточность данных, непротиворечивость данных, совместное использование данных, повышенную безопасность и целостность. А среди недостатков можно указать сложность, высокую стоимость и снижение производительности приложений, а также возможность весьма серьезных последствий при выходе системы из строя.

В настоящее время в мире используется достаточно большое количество универсальных промышленных СУБД. Среди них можно выделить трех несомненных лидеров (как по уровню развития технологий, так и по объему рынка – они вместе занимают более 90% мирового рынка СУБД). Это СУБД первого эшелона – Oracle, Microsoft SQL Server и IBM DB2. Список СУБД второго эшелона довольно велик, сюда относят такие СУБД, как Sybase, Informix, Ingress, Adabas, Interbase, Progress, Postgres, Cache, Linter, Firebird, Teradata и т д

Существуют также небольшие СУБД для нишевых (специализированных) решений и постоянно появляются прототипы новых специализированных СУБД (объектно-ориентированные СУБД, ХML СУБД, СУБД для обработки потоковых данных, СУБД для работы с текстами и т.д.).

Можно ли предсказать тенденции развития этих СУБД на ближайшие годы? Да можно, особенно для СУБД первого и второго эшелона. Предсказывать эти тенденции можно двумя путями: исходя из теоретических исследований и отчетов аналитиков и крупных специалистов в области СУБД или анализируя текущее состояние и планы развития лидеров рынка СУБД.