в чем преимущества базовой блочной организации файлов
5rik.ru
Материалы для учебы и работы
Лекция 2. Введение в реляционную модель данных.
Тесты
Заключение
Мы начали эту лекцию с демонстрации истоков систем управления внешней памятью. Развитие аппаратных и программных средств управления внешней памятью диктовалось потребностями информационных систем, для построения которых требовалась возможность надежного долговременного хранения больших объемов данных, а также обеспечение достаточно быстрого доступа к этим данным.
Системы управления файлами во внешней памяти обеспечивают минимальные потребности информационных систем, предоставляя средства распределения и структуризации дисковой памяти, именования файлов, авторизации доступа и поддержки многопользовательского режима. По мере развития технологии информационных систем возрастают их потребности, выходя за пределы возможностей, обеспечиваемых файловыми системами.
Следует особо обратить внимание на то, что и сегодня основной класс устройств внешней памяти базируется на магнитных дисках с подвижными головками. Поэтому временные соотношения, приведенные в связи с рис. 1.1, продолжают быть весьма актуальными. На этих соотношениях, главным образом, базируются оптимизационные методы, применяемые в современных системах управления данными во внешней памяти.
Далее, на примере тривиальной информационной системы были показаны ситуации, в которых возможности файловых систем являются явно недостаточными. Более того, попытки расширения возможностей файловой системы путем включения в приложение дополнительных программных компонентов во многих случаях не приводят к успеху. В пределе такие попытки могут привести к появлению самостоятельного программного продукта, обладающего некоторыми чертами СУБД. Однако настоящие СУБД являются настолько большими и сложными программными системами, что вероятность успешного создания “самодельной” СУБД пренебрежимо мала.
Еще одним выводом является то, что при выборе технологии построения информационной системы нужно тщательно оценивать и прогнозировать ее потенциальные потребности в средствах управления данными. Конечно, любую информационную систему можно основывать на использовании промышленной, большой и мощной СУБД. Но вполне может оказаться так, что в действительности приложение будет использовать доли процентов общих возможностей СУБД. Накладные расходы (затраты на дополнительную аппаратуру, лицензирование дорогого программного продукта, увеличение общего времени выполнения операций пользователей) могут оказаться абсолютно неоправданными.
1 (1) Почему магнитные барабаны обеспечивают большую скорость обменов, чем магнитные диски?
потому что они быстрее вращаются
потому что у них выше плотность записи
потому что у них фиксированные магнитные головки
1(2) Какого рода файлы наиболее целесообразно сохранять на магнитных лентах?
2 (1) Какими потенциальными преимуществами обладает организация файлов на магнитном диске с записями произвольного размера?
более эффективно используется основная память
более эффективно используется внешняя память
уменьшается время доступа к записи файла
2 (2) В чем преимущества базовой блочной организации файлов?
ускоряется работа с внешней памятью
более эффективно используется внешняя память
более эффективно используется основная память
3 (1) Предположим, что в информационной системе, работающей с базой данных из двух файлов с рис. 1.7, нужно реализовать операцию ликвидации отдела. Какие из перечисленных способов выполнения этой операции осмысленны?
удалить соответствующую запись из файла ОТДЕЛЫ
до удаления записи о ликвидируемом отделе из файла ОТДЕЛЫ удалить из файла СЛУЖАЩИЕ все записи о служащих, относящихся к этому отделу
запретить выполнение операции, если в ликвидируемом отделе числится хотя бы один служащий
3 (2) Предположим, что в информационной системе, работающей с базой данных из двух файлов с рис. 1.7, нужно реализовать операцию изменения номера существующего отдела с n на m. Пусть при выполнении одного из шагов этой операции происходит отключение питания компьютера. При каком способе выполнения этой операции описанная в разд. 1.3 процедура восстановления содержимого базы данных позволит сохранить данные о служащих отдела?
сначала изменить с n на m содержимое поля СЛУ_ОТД_НОМЕР во всех записях файла СЛУЖАЩИЕ, соответствующих служащим данного отдела, а потом изменить с n на m содержимое поля ОТД_НОМЕР нужной записи файла ОТДЕЛЫ
сначала изменить с n на m содержимое поля ОТД_НОМЕР нужной записи файла ОТДЕЛЫ, а потом изменить с n на m содержимое поля СЛУ_ОТД_НОМЕР во всех записях файла СЛУЖАЩИЕ, соответствующих служащим данного отдела
в файле ОТДЕЛЫ создать копию записи, соответствующей отделу с номером n, со значением m в поле ОТД_НОМЕР; затем изменить с n на m содержимое поля СЛУ_ОТД_НОМЕР во всех записях файла СЛУЖАЩИЕ, соответствующих служащим данного отдела; в заключение ликвидировать в файле ОТДЕЛЫ исходную запись об отделе с номером n.
4 (1) Предположим, что пользователю информационной системы, работающей с базой данных из двух файлов с рис. 1.7, требуется получить номер удостоверения и имя руководителей всех отделов. Какая из перечисленных ниже процедур наиболее эффективно приведет к получению правильных данных? (1 соответствует наименее эффективному способу.)
Последовательно выбирать записи из файла СЛУЖАЩИЕ. Для каждой записи последовательно выбирать записи из файла ОТДЕЛЫ до конца файла или до тех пор, пока не будет выбрана запись, значение поля ОТД_РУК которой равняется значению поля СЛУ_НОМЕР текущей записи из файла СЛУЖАЩИЕ. Выдать в результат значения полей СЛУ_НОМЕР и СЛУ_ИМЯ этой записи.
Последовательно выбирать записи из файла ОТДЕЛЫ. Для каждой записи последовательно выбирать записи из файла СЛУЖАЩИЕ или до тех пор, пока не будет выбрана запись, значение поля СЛУ_НОМЕР которой равняется значению поля ОТД_РУК текущей записи из файла ОТДЕЛЫ. Выдать в результат значения полей СЛУ_НОМЕР и СЛУ_ИМЯ текущей записи файла СЛУЖАЩИЕ.
Последовательно выбирать записи из файла ОТДЕЛЫ. Из очередной записи взять значение поля ОТД_РУК и воспользоваться им как значением ключа файла СЛУЖАЩИЕ по полю СЛУ_НОМЕР. Выдать в результат значения полей ОТД_РУК текущей записи файла ОТДЕЛЫ и СЛУ_НОМЕР записи файла СЛУЖАЩИЕ, выбранной по этому ключу.
4 (2) Предположим, что пользователю информационной системы, работающей с базой данных из двух файлов с рис. 1.7, требуется получить номер удостоверения каждого служащего вместе с номером удостоверения руководителя отдела, в котором работает данный служащий. Какие из перечисленных ниже процедур приведут к получению правильных данных? Какая из них наиболее эффективна?
(а) Последовательно выбирать записи из файла СЛУЖАЩИЕ. Для каждой записи последовательно выбирать записи из файла ОТДЕЛЫ до тех пор, пока не будет выбрана запись, значение поля ОТД_НОМЕР которой равняется значению поля СЛУ_ОТД_НОМЕР текущей записи из файла СЛУЖАЩИЕ. Выдать в результат значения полей СЛУ_НОМЕР текущей записи файла СЛУЖАЩИЕ и ОТД_РУК текущей записи файла ОТДЕЛЫ.
(б) Последовательно выбирать записи из файла ОТДЕЛЫ. Для каждой записи последовательно выбирать те записи из файла СЛУЖАЩИЕ, значение поля СЛУ_ОТД_НОМЕР которых равняется значению поля ОТД_НОМЕР текущей записи из файла ОТДЕЛЫ. Для каждой такой записи выдать в результат значение ее поля СЛУ_НОМЕР и значение поля ОТД_РУК текущей записи файла ОТДЕЛЫ.
(в) Последовательно выбирать записи из файла СЛУЖАЩИЕ. Из очередной записи взять значение поля СЛУ_ОТД_НОМЕР и воспользоваться им как значением ключа файла ОТДЕЛЫ по полю СЛУ_НОМЕР. Выдать в результат значения полей СЛУ_НОМЕР текущей записи файла СЛУЖАЩИЕ и ПРО_РУК записи файла ОТДЕЛЫ, выбранной по этому ключу.
В этом курсе, главным образом, обсуждаются различные аспекты реляционных баз данных. Принято считать, что реляционный подход к организации баз данных был заложен в конце 1960-х Эдгаром Коддом. В последние десятилетия этот подход является наиболее распространенным (с той оговоркой, что в называемых в обиходе реляционными системах баз данных, основанных на языке SQL, в действительности нарушаются некоторые важные принципы классического реляционного подхода). Признанными достоинствами реляционного подхода принято считать следующие свойства:
· реляционный подход основывается на небольшом числе интуитивно понятных абстракций, на основе которых возможно простое моделирование наиболее распространенных предметных областей; эти абстракции могут быть точно и формально определены;
· теоретическим базисом реляционного подхода к организации баз данных служит простой и мощный математический аппарат теории множеств и математической логики;
· реляционный подход обеспечивает возможность ненавигационного манипулирования данными без необходимости знания конкретной физической организации баз данных во внешней памяти.
Компьютерный мир далеко не сразу признал реляционные системы. В 70-е гг. прошлого века, когда уже были получены почти все основные теоретические результаты, и даже существовали первые прототипы реляционных СУБД, многие авторитетные специалисты отрицали возможность добиться эффективной реализации таких систем. Однако преимущества реляционного подхода и развитие методов и алгоритмов организации и управления реляционными базами данных привели к тому, что к концу 80-х годов реляционные системы наняли на мировом рынке СУБД доминирующее положение.
В этой лекции на сравнительно неформальном уровне вводятся основные понятия реляционных баз данных, а также определяется существо реляционной модели данных. Основной целью лекции является демонстрация простоты и возможности интуитивной интерпретации этих понятий. В следующих лекциях будут приводиться более формальные определения, на которых основывается теория реляционных баз данных.
Блочные системы хранения данных: когда и чем они лучше
Существует три основных способа организации систем хранения данных (СХД) в корпоративных ИТ-системах и в системах облачных провайдеров:
Блочные системы называются так потому, что хранимые в них данные разбиваются на блоки одинакового размера. Блок данных – это не файл, не законченный объект, а просто некие данные в куске фиксированного размера (по-английски – chunk). Файл данных может быть размещен в конечном числе блоков, и если последний из этих блоков остается незаполненным, то он все равно будет иметь тот же фиксированный размер, что и заполненные блоки. Сервер получает доступ к этим блокам через сеть хранения данных SAN (storage attached network).
Блочная СХД может быть использована любой операционной системой как дисковый том этой системы. Каждому серверу может быть предоставлен практически неограниченный размер диска. Пользователь видит этот диск в интерфейсе операционной системы сервера. ОС сервера может подключаться к блокам данных через высокоскоростные интерфейсы FC (Fiber Channel) или iSCSI. Поэтому основное достоинство блочных систем – высокое быстродействие.
Операционная система сервера может быть как физической (хост), так и виртуальной (виртуальная машина). Следует отметить, что физическим серверам нужны дополнительные контроллеры для того, чтобы получать доступ к исходным блокам.
Размер блоков определяется производителем оборудования. Однако архитектор, разрабатывающий дизайн корпоративной ИТ-системы, может определять размер блока данных в зависимости от требований конфигурации и сценария применения. Размер блока может зависеть и от типа физических дисков в системах хранения (жесткие диски HDD или флеш-накопители SSD), а также от типа самих данных клиентов. Правильный выбор размера диска во многих случаях помогает оптимизировать параметры работы корпоративной ИТ-системы в целом.
Операционная система сервера присваивает каждому блоку данных простой идентификатор расположения (location ID), по которому его можно быстро найти в SAN, именно поэтому блочная СХД имеет высокое быстродействие.
Заметим, что, например, в объектных системах хранения в качестве такого идентификатора используются метаданные (тип файла, название файла, дата и пр). Понятно, что при таком механизме время поиска объекта в системе увеличивается, хотя объектные системы хранения имеют много преимуществ для других ситуаций.
Когда нужны блочные системы
Обычно блочные системы хранения выбирают, когда при проектировании ИТ-системы критичными являются такие параметры, как скорость ввода-вывода данных IOPS (input output operations per second), а также задержка (latency) доступа к данным через SAN. Например, это могут быть серверы баз данных или бизнес-критичных приложений, требующих высокого быстродействия и высокой надежности.
В таких базах данных, как Oracle или SAP Hana, используются именно блочные системы. Виртуальные машины VMware также по умолчанию используют блочное хранение, поскольку при этом можно построить быстродействующую и многофункциональную виртуальную инфраструктуру. Блочное хранение может быть также использовано практически во всех архитектурах ЦОД, будь то единичный сервер или же высоконадежные кластерные серверные решения.
Блочные системы хранения в настоящий момент являются безусловным лидером по доле в корпоративном хранении данных как в малых предприятиях, так и в ИТ-системах крупных корпораций.
Наиболее употребительные области применения блочных СХД:
Блочное хранение в облаке
Блочное хранение данных – очень популярная услуга облачных провайдеров. Она дает возможность использовать такое полезное качество, как эластичность. То есть пользователю нет необходимости закупать оборудование для СХД с «запасом на будущее». Он может заказать у провайдера емкость хранения в соответствии с текущими потребностями и потом быстро «дозаказать» ее при необходимости. В большинстве случаев этот процесс может занять несколько минут. При этом данные будут хорошо защищены высокой доступностью услуги облачного хранения и технологией репликации в облаке. Кроме того, шифрование, которое обеспечивает облачный провайдер, не позволит другим серверам, использующим ту же облачную СХД, получить доступ к чужим данных. Таким образом, когда нужно быстро и недорого расширить имеющееся блочное хранилище, использование услуги блочной СХД в облаке может быть оптимальным вариантом.
Если говорить не о публичном, а о частном облаке ИТ-системы или дата-центра (центров) крупной организации, то и здесь можно использовать сходные механизмы блочного хранения. При этом вместо разных заказчиков, данные которых нужно разделять в облаке, будут выступать подразделения (отделы, сервисы, филиалы) этой организации. И здесь использование блочного хранения чаще всего будет предпочтительным вариантом, поскольку эта технология обеспечивает высокую скорость бизнес-процессов организации, а также достаточную гибкость перераспределения ресурсов в масштабах организации.
Достоинства и недостатки блочной СХД
В современных ЦОДах блочное хранение очень распространено вследствие следующих достоинств:
Недостатки у блочной СХД тоже есть. К ним можно отнести следующее:
Итоги сравнения блочных СХД с файловыми и объектными можно свести в следующую таблицу:
Как устроены хранилища данных: обзор для новичков
Международный рынок гипермасштабируемых дата-центров растет с ежегодными темпами в 11%. Основные «драйверы» — предприятия, подключенные устройства и пользователи — они обеспечивают постоянное появление новых данных. Вместе с объемом рынка растут и требования к надежности хранения и уровню доступности данных.
Ключевой фактор, влияющий на оба критерия — системы хранения. Их классификация не ограничивается типами оборудования или брендами. В этой статье мы рассмотрим разновидности хранилищ — блочное, файловое и объектное — и определим, для каких целей подходит каждое из них.
Типы хранилищ и их различия
Хранение на уровне блоков лежит в основе работы традиционного жесткого диска или магнитной ленты. Файлы разбиваются на «кусочки» одинакового размера, каждый с собственным адресом, но без метаданных. Пример — ситуация, когда драйвер HDD пишет и считывает блоки по адресам на отформатированном диске. Такие СХД используются многими приложениями, например, большинством реляционных СУБД, в списке которых Oracle, DB2 и др. В сетях доступ к блочным хостам организуется за счет SAN с помощью протоколов Fibre Channel, iSCSI или AoE.
Файловая система — это промежуточное звено между блочной системой хранения и вводом-выводом приложений. Наиболее распространенным примером хранилища файлового типа является NAS. Здесь, данные хранятся как файлы и папки, собранные в иерархическую структуру, и доступны через клиентские интерфейсы по имени, названию каталога и др.
При этом следует отметить, что разделение «SAN — это только сетевые диски, а NAS — сетевая файловая система» искусственно. Когда появился протокол iSCSI, граница между ними начала размываться. Например, в начале нулевых компания NetApp стала предоставлять iSCSI на своих NAS, а EMC — «ставить» NAS-шлюзы на SAN-массивы. Это делалось для повышения удобства использования систем.
Что касается объектных хранилищ, то они отличаются от файловых и блочных отсутствием файловой системы. Древовидную структуру файлового хранилища здесь заменяет плоское адресное пространство. Никакой иерархии — просто объекты с уникальными идентификаторами, позволяющими пользователю или клиенту извлекать данные.
Марк Горос (Mark Goros), генеральный директор и соучредитель Carnigo, сравнивает такой способ организации со службой парковки, предполагающей выдачу автомобиля. Вы просто оставляете свою машину парковщику, который увозит её на стояночное место. Когда вы приходите забирать транспорт, то просто показываете талон — вам возвращают автомобиль. Вы не знаете, на каком парковочном месте он стоял.
Большинство объектных хранилищ позволяют прикреплять метаданные к объектам и агрегировать их в контейнеры. Таким образом, каждый объект в системе состоит из трех элементов: данных, метаданных и уникального идентификатора — присвоенного адреса. При этом объектное хранилище, в отличие от блочного, не ограничивает метаданные атрибутами файлов — здесь их можно настраивать.
/ 1cloud
Применимость систем хранения разных типов
Блочные хранилища
Блочные хранилища обладают набором инструментов, которые обеспечивают повышенную производительность: хост-адаптер шины разгружает процессор и освобождает его ресурсы для выполнения других задач. Поэтому блочные системы хранения часто используются для виртуализации. Также хорошо подходят для работы с базами данных.
Недостатками блочного хранилища являются высокая стоимость и сложность в управлении. Еще один минус блочных хранилищ (который относится и к файловым, о которых далее) — ограниченный объем метаданных. Любую дополнительную информацию приходится обрабатывать на уровне приложений и баз данных.
Файловые хранилища
Среди плюсов файловых хранилищ выделяют простоту. Файлу присваивается имя, он получает метаданные, а затем «находит» себе место в каталогах и подкаталогах. Файловые хранилища обычно дешевле по сравнению с блочными системами, а иерархическая топология удобна при обработке небольших объемов данных. Поэтому с их помощью организуются системы совместного использования файлов и системы локального архивирования.
Пожалуй, основной недостаток файлового хранилища — его «ограниченность». Трудности возникают по мере накопления большого количества данных — находить нужную информацию в куче папок и вложений становится трудно. По этой причине файловые системы не используются в дата-центрах, где важна скорость.
Объектные хранилища
Что касается объектных хранилищ, то они хорошо масштабируются, поэтому способны работать с петабайтами информации. По статистике, объем неструктурированных данных во всем мире достигнет 44 зеттабайт к 2020 году — это в 10 раз больше, чем было в 2013. Объектные хранилища, благодаря своей возможности работать с растущими объемами данных, стали стандартом для большинства из самых популярных сервисов в облаке: от Facebook до DropBox.
Такие хранилища, как Haystack Facebook, ежедневно пополняются 350 млн фотографий и хранят 240 млрд медиафайлов. Общий объем этих данных оценивается в 357 петабайт.
Хранение копий данных — это другая функция, с которой хорошо справляются объектные хранилища. По данным исследований, 70% информации лежит в архиве и редко изменяется. Например, такой информацией могут выступать резервные копии системы, необходимые для аварийного восстановления.
Но недостаточно просто хранить неструктурированные данные, иногда их нужно интерпретировать и организовывать. Файловые системы имеют ограничения в этом плане: управление метаданными, иерархией, резервным копированием — все это становится препятствием. Объектные хранилища оснащены внутренними механизмами для проверки корректности файлов и другими функциями, обеспечивающими доступность данных.
Плоское адресное пространство также выступает преимуществом объектных хранилищ — данные, расположенные на локальном или облачном сервере, извлекаются одинаково просто. Поэтому такие хранилища часто применяются для работы с Big Data и медиа. Например, их используют Netflix и Spotify. Кстати, возможности объектного хранилища сейчас доступны и в сервисе 1cloud.
Благодаря встроенным инструментам защиты данных с помощью объектного хранилища можно создать надежный географически распределенный резервный центр. Его API основан на HTTP, поэтому к нему можно получить доступ, например, через браузер или cURL. Чтобы отправить файл в хранилище объектов из браузера, можно прописать следующее:
После отправки к файлу добавляются необходимые метаданные. Для этого есть такой запрос:
Богатая метаинформация объектов позволит оптимизировать процесс хранения и минимизировать затраты на него. Эти достоинства — масштабируемость, расширяемость метаданных, высокая скорость доступа к информации — делают объектные системы хранения оптимальным выбором для облачных приложений.
Однако важно помнить, что для некоторых операций, например, работы с транзакционными рабочими нагрузками, эффективность решения уступает блочным хранилищам. А его интеграция может потребовать изменения логики приложения и рабочих процессов.
Лекция 2. Введение в реляционную модель данных
Тесты
Заключение
Мы начали эту лекцию с демонстрации истоков систем управления внешней памятью. Развитие аппаратных и программных средств управления внешней памятью диктовалось потребностями информационных систем, для построения которых требовалась возможность надежного долговременного хранения больших объемов данных, а также обеспечение достаточно быстрого доступа к этим данным.
Системы управления файлами во внешней памяти обеспечивают минимальные потребности информационных систем, предоставляя средства распределения и структуризации дисковой памяти, именования файлов, авторизации доступа и поддержки многопользовательского режима. По мере развития технологии информационных систем возрастают их потребности, выходя за пределы возможностей, обеспечиваемых файловыми системами.
Следует особо обратить внимание на то, что и сегодня основной класс устройств внешней памяти базируется на магнитных дисках с подвижными головками. Поэтому временные соотношения, приведенные в связи с рис. 1.1, продолжают быть весьма актуальными. На этих соотношениях, главным образом, базируются оптимизационные методы, применяемые в современных системах управления данными во внешней памяти.
Далее, на примере тривиальной информационной системы были показаны ситуации, в которых возможности файловых систем являются явно недостаточными. Более того, попытки расширения возможностей файловой системы путем включения в приложение дополнительных программных компонентов во многих случаях не приводят к успеху. В пределе такие попытки могут привести к появлению самостоятельного программного продукта, обладающего некоторыми чертами СУБД. Однако настоящие СУБД являются настолько большими и сложными программными системами, что вероятность успешного создания “самодельной” СУБД пренебрежимо мала.
Еще одним выводом является то, что при выборе технологии построения информационной системы нужно тщательно оценивать и прогнозировать ее потенциальные потребности в средствах управления данными. Конечно, любую информационную систему можно основывать на использовании промышленной, большой и мощной СУБД. Но вполне может оказаться так, что в действительности приложение будет использовать доли процентов общих возможностей СУБД. Накладные расходы (затраты на дополнительную аппаратуру, лицензирование дорогого программного продукта, увеличение общего времени выполнения операций пользователей) могут оказаться абсолютно неоправданными.
1 (1) Почему магнитные барабаны обеспечивают большую скорость обменов, чем магнитные диски?
потому что они быстрее вращаются
потому что у них выше плотность записи
потому что у них фиксированные магнитные головки
1(2) Какого рода файлы наиболее целесообразно сохранять на магнитных лентах?
2 (1) Какими потенциальными преимуществами обладает организация файлов на магнитном диске с записями произвольного размера?
более эффективно используется основная память
более эффективно используется внешняя память
уменьшается время доступа к записи файла
2 (2) В чем преимущества базовой блочной организации файлов?
ускоряется работа с внешней памятью
более эффективно используется внешняя память
более эффективно используется основная память
3 (1) Предположим, что в информационной системе, работающей с базой данных из двух файлов с рис. 1.7, нужно реализовать операцию ликвидации отдела. Какие из перечисленных способов выполнения этой операции осмысленны?
удалить соответствующую запись из файла ОТДЕЛЫ
до удаления записи о ликвидируемом отделе из файла ОТДЕЛЫ удалить из файла СЛУЖАЩИЕ все записи о служащих, относящихся к этому отделу
запретить выполнение операции, если в ликвидируемом отделе числится хотя бы один служащий
3 (2) Предположим, что в информационной системе, работающей с базой данных из двух файлов с рис. 1.7, нужно реализовать операцию изменения номера существующего отдела с n на m. Пусть при выполнении одного из шагов этой операции происходит отключение питания компьютера. При каком способе выполнения этой операции описанная в разд. 1.3 процедура восстановления содержимого базы данных позволит сохранить данные о служащих отдела?
сначала изменить с n на m содержимое поля СЛУ_ОТД_НОМЕР во всех записях файла СЛУЖАЩИЕ, соответствующих служащим данного отдела, а потом изменить с n на m содержимое поля ОТД_НОМЕР нужной записи файла ОТДЕЛЫ
сначала изменить с n на m содержимое поля ОТД_НОМЕР нужной записи файла ОТДЕЛЫ, а потом изменить с n на m содержимое поля СЛУ_ОТД_НОМЕР во всех записях файла СЛУЖАЩИЕ, соответствующих служащим данного отдела
в файле ОТДЕЛЫ создать копию записи, соответствующей отделу с номером n, со значением m в поле ОТД_НОМЕР; затем изменить с n на m содержимое поля СЛУ_ОТД_НОМЕР во всех записях файла СЛУЖАЩИЕ, соответствующих служащим данного отдела; в заключение ликвидировать в файле ОТДЕЛЫ исходную запись об отделе с номером n.
4 (1) Предположим, что пользователю информационной системы, работающей с базой данных из двух файлов с рис. 1.7, требуется получить номер удостоверения и имя руководителей всех отделов. Какая из перечисленных ниже процедур наиболее эффективно приведет к получению правильных данных? (1 соответствует наименее эффективному способу.)
Последовательно выбирать записи из файла СЛУЖАЩИЕ. Для каждой записи последовательно выбирать записи из файла ОТДЕЛЫ до конца файла или до тех пор, пока не будет выбрана запись, значение поля ОТД_РУК которой равняется значению поля СЛУ_НОМЕР текущей записи из файла СЛУЖАЩИЕ. Выдать в результат значения полей СЛУ_НОМЕР и СЛУ_ИМЯ этой записи.
Последовательно выбирать записи из файла ОТДЕЛЫ. Для каждой записи последовательно выбирать записи из файла СЛУЖАЩИЕ или до тех пор, пока не будет выбрана запись, значение поля СЛУ_НОМЕР которой равняется значению поля ОТД_РУК текущей записи из файла ОТДЕЛЫ. Выдать в результат значения полей СЛУ_НОМЕР и СЛУ_ИМЯ текущей записи файла СЛУЖАЩИЕ.
Последовательно выбирать записи из файла ОТДЕЛЫ. Из очередной записи взять значение поля ОТД_РУК и воспользоваться им как значением ключа файла СЛУЖАЩИЕ по полю СЛУ_НОМЕР. Выдать в результат значения полей ОТД_РУК текущей записи файла ОТДЕЛЫ и СЛУ_НОМЕР записи файла СЛУЖАЩИЕ, выбранной по этому ключу.
4 (2) Предположим, что пользователю информационной системы, работающей с базой данных из двух файлов с рис. 1.7, требуется получить номер удостоверения каждого служащего вместе с номером удостоверения руководителя отдела, в котором работает данный служащий. Какие из перечисленных ниже процедур приведут к получению правильных данных? Какая из них наиболее эффективна?
(а) Последовательно выбирать записи из файла СЛУЖАЩИЕ. Для каждой записи последовательно выбирать записи из файла ОТДЕЛЫ до тех пор, пока не будет выбрана запись, значение поля ОТД_НОМЕР которой равняется значению поля СЛУ_ОТД_НОМЕР текущей записи из файла СЛУЖАЩИЕ. Выдать в результат значения полей СЛУ_НОМЕР текущей записи файла СЛУЖАЩИЕ и ОТД_РУК текущей записи файла ОТДЕЛЫ.
(б) Последовательно выбирать записи из файла ОТДЕЛЫ. Для каждой записи последовательно выбирать те записи из файла СЛУЖАЩИЕ, значение поля СЛУ_ОТД_НОМЕР которых равняется значению поля ОТД_НОМЕР текущей записи из файла ОТДЕЛЫ. Для каждой такой записи выдать в результат значение ее поля СЛУ_НОМЕР и значение поля ОТД_РУК текущей записи файла ОТДЕЛЫ.
(в) Последовательно выбирать записи из файла СЛУЖАЩИЕ. Из очередной записи взять значение поля СЛУ_ОТД_НОМЕР и воспользоваться им как значением ключа файла ОТДЕЛЫ по полю СЛУ_НОМЕР. Выдать в результат значения полей СЛУ_НОМЕР текущей записи файла СЛУЖАЩИЕ и ПРО_РУК записи файла ОТДЕЛЫ, выбранной по этому ключу.
В этом курсе, главным образом, обсуждаются различные аспекты реляционных баз данных. Принято считать, что реляционный подход к организации баз данных был заложен в конце 1960-х Эдгаром Коддом. В последние десятилетия этот подход является наиболее распространенным (с той оговоркой, что в называемых в обиходе реляционными системах баз данных, основанных на языке SQL, в действительности нарушаются некоторые важные принципы классического реляционного подхода). Признанными достоинствами реляционного подхода принято считать следующие свойства:
· реляционный подход основывается на небольшом числе интуитивно понятных абстракций, на основе которых возможно простое моделирование наиболее распространенных предметных областей; эти абстракции могут быть точно и формально определены;
· теоретическим базисом реляционного подхода к организации баз данных служит простой и мощный математический аппарат теории множеств и математической логики;
· реляционный подход обеспечивает возможность ненавигационного манипулирования данными без необходимости знания конкретной физической организации баз данных во внешней памяти.
Компьютерный мир далеко не сразу признал реляционные системы. В 70-е гг. прошлого века, когда уже были получены почти все основные теоретические результаты, и даже существовали первые прототипы реляционных СУБД, многие авторитетные специалисты отрицали возможность добиться эффективной реализации таких систем. Однако преимущества реляционного подхода и развитие методов и алгоритмов организации и управления реляционными базами данных привели к тому, что к концу 80-х годов реляционные системы наняли на мировом рынке СУБД доминирующее положение.
В этой лекции на сравнительно неформальном уровне вводятся основные понятия реляционных баз данных, а также определяется существо реляционной модели данных. Основной целью лекции является демонстрация простоты и возможности интуитивной интерпретации этих понятий. В следующих лекциях будут приводиться более формальные определения, на которых основывается теория реляционных баз данных.
Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет