23.8.5.2. Реляционная модель

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

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

В отличие от иерархических и сетевых моделей данных в реляционной модели операции над данными базы данных имеют множественный характер. Каждая операция манипулирования данными в такой модели обрабатывает множество строк таблицы. Это дает возможность пользователям формулировать их запросы более компактно, в терминах языка более высокого уровня.

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

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