Тема_2 (1122332)
Текст из файла
Понятие модели данных. Обзорразновидностей моделей данныхС.Д. Кузнецов. Базы данных. Тема 2.План (1)Модель данныхРанние модели данныхМодель данных инвертированных таблицИерархическая модель данныхСтруктуры данныхМанипулирование даннымиОграничения целостностиИерархические структуры данныхМанипулирование даннымиОграничения целостностиСетевая модель данныхСетевые структуры данныхМанипулирование даннымиОграничения целостности16.09.2008С.Д.
Кузнецов. Базы данных.2Понятие модели даПлан (2)Неформальное введение в реляционнуюмодель данныхРеляционные структуры данныхМанипулирование реляционными даннымиЦелостность в реляционной модели данных16.09.2008С.Д. Кузнецов. Базы данных.3Понятие модели даПлан (3)Современные модели данныхОбъектно-ориентированная модель данныхМодель данных SQLТипы и структуры данных объектной моделиМанипулирование данными в объектной моделиОграничения целостности в объектной моделиТипы и структуры данных SQLМанипулирование данными в SQLОграничения целостности в модели SQLИстинная реляционная модельТипы и структуры данных истинной реляционной моделиМанипулирование данными в истинной реляционной моделиОграничения целостности в истинной реляционной модели16.09.2008С.Д.
Кузнецов. Базы данных.4Понятие модели даМодель данных (1)В модели данных описывается некоторый набор родовыхпонятий и признаков, которыми должны обладать всеконкретные СУБД и управляемые ими базы данных, еслиони основываются на этой модели.Наличие модели данных позволяет сравнивать конкретныереализации, используя один общий язык.Хотя понятие модели данных было введено Коддом,наиболее распространенная трактовка модели данных, повидимому, принадлежит Кристоферу Дейту.Согласно Дейту реляционная модель состоит из трех частей,описывающих разные аспекты реляционного подхода: структурной части, манипуляционной части и целостной части.16.09.2008С.Д. Кузнецов.
Базы данных.5Понятие модели даМодель данных (2)В структурной части модели данных фиксируются основные логическиеструктуры данных, которые могут применяться на уровне пользователяпри организации БД, соответствующих данной модели.Например, в модели данных SQL основным видом структур базы данныхявляются таблицы,а в объектной модели данных – объекты ранее определенных типов.Манипуляционная часть модели данных содержит спецификациюодного или нескольких языков, предназначенных для написаниязапросов к БД.Эти языки могут быть абстрактными, не обладающими точно проработаннымсинтаксисом –или законченными производственными языками,это свойственно языками реляционной алгебры и реляционного исчисления,используемым в реляционной модели данных,как в случае модели данных SQL.Основное назначение манипуляционной части модели данных – обеспечитьэталонный «модельный» язык БД, уровень выразительности которогодолжен поддерживаться в реализациях СУБД, соответствующих данноймодели.16.09.2008С.Д.
Кузнецов. Базы данных.6Понятие модели даМодель данных (3)В целостной части модели данных (которая явно выделяется не вовсех известных моделях) специфицируются механизмыограничений целостности, которые обязательно должныподдерживаться во всех реализациях СУБД, соответствующихданной модели.Например, в целостной части реляционной модели данныхкатегорически требуется поддержка ограничения первичного ключав любой переменной отношения,а аналогичное требование к таблицам в модели данных SQLотсутствует.Применим понятие модели данных для обзора как подходов,предшествовавших появлению реляционных баз данных, так и дляподходов, которые возникли позже.Не будем касаться особенностей каких-либо конкретных систем;это привело бы к изложению многих технических деталей, которые, хотяи интересны, находятся несколько в стороне от основной цели курса.16.09.2008С.Д.
Кузнецов. Базы данных.7Понятие модели даРанние модели данных (1)Начнем с рассмотрения общих подходов к организации трехтипов ранних систем, а именно, систем, основанных на инвертированных списках, иерархических и сетевых систем управления базами данных.Эти системы активно использовались в течение многих лет,задолго до появления работоспособных реляционных СУБД. Некоторые из ранних систем используются даже в нашевремя, накоплены громадные базы данных, и одной из актуальных проблем информационных системявляется использование этих систем совместно ссовременными системами.16.09.2008С.Д. Кузнецов.
Базы данных.8Понятие модели даРанние модели данных (2)Все ранние системы не основывались на каких-либоабстрактных моделях. Понятие модели данных фактически вошло в обиходспециалистов в области БД только вместе с реляционнымподходом. Абстрактные представления ранних систем появились позжена основе анализа и выявления общих признаков уразличных конкретных систем.В ранних системах доступ к БД производился на уровнезаписей. Пользователи этих систем осуществляли явную навигацию вБД, используя языки программирования, расширенныефункциями СУБД. Интерактивный доступ к БД поддерживался только путемсоздания соответствующих прикладных программ ссобственным интерфейсом.16.09.2008С.Д. Кузнецов.
Базы данных.9Понятие модели даРанние модели данных (3)Можно считать, что уровень средств ранних СУБДсоотносится с уровнем файловых систем примерно так же,как уровень языка Cobol соотносится с уровнем языковассемблера. Заметим, что при таком взгляде уровень реляционныхсистем соответствует уровню языков Ада или APL.Навигационная природа ранних систем и доступ к данным науровне записей заставляли пользователей самихпроизводить всю оптимизацию доступа к БД, без какой-либоподдержки системы.После появления реляционных систем большинство раннихсистем было оснащено «реляционными» интерфейсами. Однако в большинстве случаев это не сделало их понастоящему реляционными системами, посколькуоставалась возможность манипулировать данными вестественном для них режиме.16.09.2008С.Д. Кузнецов. Базы данных.10 Понятие модели даРанние модели данных (4)Модель данных инвертированных таблиц (1)К числу наиболее известных и типичных представителейсистем, в основе которых лежит эта модель данных,относятсяСУБД Datacom/DB, выведенная на рынок в конце 1960-х гг.
компаниейApplied Data Research, Inc. (ADR) и принадлежащая в настоящее времякомпании Computer Associates,и Adabas (Adaptable Database System), которая была разработанакомпанией Software AG в 1971 г. и до сих пор является ее основнымпродуктом.Организация доступа к данным на основеинвертированных таблиц используется практически вовсех современных реляционных СУБД, но в этих системахпользователи не имеют непосредственного доступа кинвертированным таблицам (индексам).Когда мы будем рассматривать внутренние интерфейсы реляционныхСУБД, можно будет увидеть, что они очень близки к пользовательскиминтерфейсам систем, основанных на инвертированных таблиц.16.09.2008С.Д. Кузнецов.
Базы данных.11 Понятие модели даРанние модели данных (5)Модель данных инвертированных таблиц (2). СтруктурыданныхБаза данных в модели инвертированных таблиц похожа наБД в модели SQL, но с тем отличием, что пользователям видны и хранимые таблицы, и пути доступа кним.Строки таблиц упорядочиваются системой в некоторойфизической, видимой пользователям последовательности.Физическая упорядоченность строк всех таблиц можетопределяться и для всей БД (так делается, например, вDatacom/DB).Для каждой таблицы можно определить произвольное числоключей поиска, для которых строятся индексы. Эти индексы автоматически поддерживаются системой, ноявно видны пользователям.16.09.2008С.Д. Кузнецов.
Базы данных.12 Понятие модели даРанние модели данных (6)Модель данных инвертированных таблиц (3). Манипулирование данными (1)Поддерживаются два класса операций:Операции, устанавливающие адрес записи иразбиваемые на два подкласса:1.2.прямые поисковые операторы (например, установитьадрес первой записи таблицы по некоторому путидоступа);операторы, устанавливающие адрес записи приуказании относительной позиции от предыдущейзаписи по некоторому пути доступа.Операции над адресуемыми записями.16.09.2008С.Д.
Кузнецов. Базы данных.13 Понятие модели даРанние модели данных (7)Модель данных инвертированных таблиц (4). Манипулирование данными (2)Типичный набор операций:LOCATE FIRST – найти первую запись таблицы T вфизическом порядке;LOCATE FIRST WITH SEARCH KEY EQUAL – найти первуюзапись таблицы T с заданным значением ключа поиска k;возвращается адрес записи;возвращается адрес записи;LOCATE NEXT – найти первую запись, следующую зазаписью с заданным адресом в заданном пути доступа;возвращается адрес записи;LOCATE NEXT WITH SEARCH KEY EQUAL – найтиcледующую запись таблицы T в порядке пути поиска сзаданным значением k;должно быть соответствие между используемым способомсканирования и ключом k;возвращается адрес записи;16.09.2008С.Д.
Кузнецов. Базы данных.14 Понятие модели даРанние модели данных (8)Модель данных инвертированных таблиц (5). Манипулирование данными (3)LOCATE FIRST WITH SEARCH KEY GREATER – найтипервую запись таблицы T в порядке ключа поиска k cозначением ключевого поля, большим заданного значения k;возвращается адрес записи;RETRIVE – выбрать запись с указанным адресом;UPDATE – обновить запись с указанным адресом;DELETE – удалить запись с указанным адресом;STORE – включить запись в указанную таблицу;операция генерирует и возвращает адрес записи.16.09.2008С.Д.
Характеристики
Тип файла PDF
PDF-формат наиболее широко используется для просмотра любого типа файлов на любом устройстве. В него можно сохранить документ, таблицы, презентацию, текст, чертежи, вычисления, графики и всё остальное, что можно показать на экране любого устройства. Именно его лучше всего использовать для печати.
Например, если Вам нужно распечатать чертёж из автокада, Вы сохраните чертёж на флешку, но будет ли автокад в пункте печати? А если будет, то нужная версия с нужными библиотеками? Именно для этого и нужен формат PDF - в нём точно будет показано верно вне зависимости от того, в какой программе создали PDF-файл и есть ли нужная программа для его просмотра.