Внутренняя организация СУБД: общие положения
Обработка файлов операционной системой на логическом уровне. Структура индекса базы данных. Создание таблицы, запросы, формы и отчеты в СУБД Microsoft Access. Хеширование как алгоритмическое преобразование значений некоторого поля записей в базе данных.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 13.04.2019 |
Размер файла | 513,0 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Внутренняя организация СУБД: общие положения
Данные на внешних носителях информации (например, магнитных или оптических дисках) хранятся в виде файлов. Запись данных во внешнюю память и чтение их из нее реализуются операционной системой компьютера, предоставляющей прикладным программам (в том числе и СУБД) услуги по вводу-выводу информации и управлению памятью. Обработка файлов операционной системой на логическом уровне выполняется с помощью файловой системы, на физическом уровне - системы управления файлами.
Наибольшую производительность работы СУБД обеспечивают физические устройства хранения данных прямого доступа (магнитные и оптические диски и т. д.), обеспечивающие непосредственное считывание необходимой информации, если известно ее местоположение. Оптимальным является размещение данных в файлах прямого доступа, позволяющих выбирать нужные записи базы данных без просмотра всего содержимого файла. Для ускорения поиска информации применяются различные структуры хранения данных (способы их упорядочивания). Существенное внимание специалистов к разработке структур хранения и технологий методов доступа к данным определяется необходимостью сокращения числа дисковых операций ввода-вывода данных из-за относительно большого времени доступа к внешним устройствам.
Данные в процессе работы считываются и записываются страницами - блоками фиксированных размеров (в зависимости от используемой системы обычно 2, 4 или 8 килобайт). Каждая страница, хранящаяся на диске, имеет свой уникальный идентификатор, указывающий на физическое место ее хранения. Этот идентификатор используется системой управления файлами для чтения страницы и ее записи после изменения размещенных на ней данных в то же место на диске, откуда страница была считана.
Файл базы данных представляет собой набор страниц. При создании файла по запросу файловой системы система управления файлами выделяет ему требуемое количество страниц. Каждой странице в полученном наборе страниц присваивается некоторый «логический» (например, порядковый) номер. Обычно система управления файлами ведет каталог, в котором содержатся сведения о наборах страниц и указателях к каждой странице в их пределах. Когда СУБД в рамках решения прикладной задачи взаимодействует с конкретным файлом, логические номера страниц используются файловой системой, не знающей, где физически на диске хранится нужная страница, для обращения к системе управления файлами, осуществляющей чтение и запись данных.
На одной странице могут храниться одна или несколько записей с данными. После считывания из внешней памяти в оперативную память необходимой страницы выполняется выборка и обработка нужной записи. Для этого используется идентификационный номер записи, состоящий из двух частей: номера страницы и параметра, определяющего место расположения записи на странице.
В очень редких случаях запись, размеры которой превышают размеры страницы, может размещаться на двух (но не более) страницах. В таких ситуациях используются страницы переполнения.
Линейный (последовательный) список - последовательность записей базы данных, сформированная по некоторым логическим принципам.
При поиске информации, соответствующей некоторым критериям (например, товаров с определенным названием или артикулом), линейный список необходимо просмотреть полностью от первой до последней записи. Это приводит к тому, что рассматриваемая структура хранения, обеспечивая оптимальные требования к минимальному объему выделяемой памяти на внешних устройствах, является неэффективной по быстродействию.
Инвертированные списки позволяют существенно ускорить процесс поиска необходимой информации по сравнению с линейными списками. Это достигается с помощью упорядочивания (сортировки) записей исходного списка по значениям данных в одном из не ключевых полей. Инвертирование исходного списка можно выполнить для отдельных (частичное инвертирование) или всех (полное инвертирование) не ключевых полей исходного списка.
Обеспечивая уменьшение времени выполнения запросов, инвертирование приводит к существенному увеличению объемов внешней памяти для хранения информации в результате ее дублирования. Это увеличение прямо пропорционально количеству полей, по которым производится инвертирование. Для частичного устранения данного недостатка применяется создание индексов.
Индексы применяются для ускорения доступа к записям базы данных. Их можно сравнить с предметным указателем книги - упорядоченной последовательностью слов (словосочетаний) с перечнем номеров страниц, на которых встречается это слово (словосочетание).
Индекс базы данных представляет собой структуру, в которой содержатся рассортированные в заданном порядке значения данных в некотором поле и указатели адресов записей (страниц), где находятся эти значения. В отличие от инвертированных списков индексы занимают значительно меньшее место во внешней памяти.
Построение индекса и его обновление выполняется автоматически самой СУБД. Файл базы данных, для которого создан хотя бы один индекс, называется индексированным файлом.
Поиск и выборка нужных записей в базе данных осуществляются в следующей последовательности:
1. Выбирается индекс, соответствующий условию поиска
2. В индексе находится строка с заданным условием.
3. Из найденной строки выбираются номера страниц, где хранятся искомые записи.
4. Полученные номера страниц используются для чтения необходимой информации.
Большинство СУБД реализует этот процесс автоматически, без участия пользователя.
Если для таблицы определены несколько индексов по отдельным полям, при поиске записей в данной таблице по условиям поиска, заданным в этих полях, соответствующие индексы используются совместно.
Если поиск достаточно часто производится по одним и тем же полям, желательно создать составной индекс, включающий несколько полей. При использовании составного индекса сокращается время поиска, так как не приходится сравнивать значения данных из нескольких индексов.
Недостатком индексирования является необходимость выделения во внешней памяти дополнительного места для хранения индексов. Существуют оценки, что файл, в котором созданы индексы для всех полей размещенной в нем таблицы, занимает практически вдвое больше места на внешнем носителе по сравнению с исходным файлом. Кроме того, наличие индексов затрудняет обновление информации, хранящейся в базе данных, и требует дополнительных затрат времени на данный процесс.
Поэтому не рекомендуется индексировать все поля таблиц или поля, данные в которых часто изменяются. Наиболее эффективным является создание индексов для первичных и внешних ключей, для полей, по которым в основном выполняются запросы.
Хеширование (Hashing) - алгоритмическое преобразование значений некоторого поля записей (первичного ключа или любого другого поля) в адреса их размещения на внешнем носителе.
При вводе данных СУБД вычисляет адрес страницы, на которой будет храниться запись, и заносит запись на эту страницу. При выполнении запросов реализуются аналогичные расчеты адреса страницы с последующим чтением записей с этой страницы. Достоинством такого метода является быстрый прямой доступ к данным. При этом время доступа практически не зависит от количества хранимых записей.
Основной проблемой хеширования является сложность выбора оптимальной хеш-функции. При выполнении данной работы анализируются размеры записей и страниц внешней памяти, вероятное распределение получаемых адресов. Неудачно выбранная хеш-функция может вызвать неравномерное распределение записей в памяти или формирование слишком длинных цепочек синонимов.
Весьма сложной является ситуация, когда количество запоминаемых записей больше, чем предполагалось, и необходимо увеличить место в памяти для их хранения или размеры таблицы хеширования. В этой ситуации потребуется выполнить полное повторное хеширование.
Следует иметь в виду, что хеширование позволяет организовать быстрый поиск информации только по одному полю, данные которого использовались для хеширования. Нельзя хранить записи в порядке, определяемом несколькими хеш-функциями.
Несмотря на отмеченные недостатки хеширования, данный способ организации хранения и быстрого извлечения необходимых данных широко применяется, в первую очередь в объектно-ориентированных базах данных.
Кластеризация использует принцип близкого размещения во внешней памяти логически связанных данных. Этим обеспечиваются быстрый поиск и извлечение необходимой информации.
Физически кластеризация достигается размещением логически связанных записей на одной странице (если сделать это позволяют размеры страниц и записей) или на страницах, расположенных рядом.
Для кластеризированных таблиц можно создать неплотные индексы с указателями на первые записи, входящие в каждый кластер (блок).
Если кластеризации реализуется для одного логического объекта (файла) базы данных. Такая кластеризация называется внутрифайловой. Иногда применяется межфайловая кластеризация, когда на одной странице во внешней памяти размещаются записи из нескольких логических объектов (файлов) базы данных. Такой принцип хранения данных может существенно ускорить выполнение запросов, включающих критерии отбора для характеристик, хранимых совместно, но он замедляет поиск информации для всех других запросов. Поэтому кластеризация является оправданной, если к базе данных наиболее часто выполняются запросы одного типа. При этом следует иметь в виду, что одновременно можно реализовать только один вариант кластеризации базы данных, так как речь идет о физическом хранении информации.
Формирование плана выпуска изделий
1. Создать таблицы:
Таблица 1. Справочник изделий
Структура таблицы: Код изделия, Наименование изделия, Стоимость сборки
Таблица 2. Справочник деталей
Структура таблицы: Код детали, Наименование детали, Цена
Таблица 3. План выпуска
Структура таблицы: Код изделия, Количество изделий
Таблица 4. Состав изделия
Структура таблицы: Код изделия, Код детали, Количество деталей
2. Ввести в таблицу 1 сведения о пяти изделиях, в таблицу 2 - данные о 10ти деталях, которые используются при сборке изделий, в таблицу 3 - данные о плане выпуска пяти изделий (код изделия должен выбираться из поля со списком).
3. Создать форму «Состав изделия» типа главная/подчиненная для просмотра и ввода данных о составе изделия, наименование которого должно выбираться из списка. Главная форма должна содержать поля: Наименование изделия и Код изделия. Подчиненная форма должна иметь табличный вид и содержать строки с полями: Код детали, Количество в изделии. Значение поля Код детали должно выбираться из поля со списком. Каждое изделие должно содержать не менее трех деталей.
4. Создать форму «План выпуска изделия» типа главная/подчиненная.
Код изделия должен выбираться из списка. Главная форма должна содержать поля: Код изделия, Наименование изделия, Количество изделий, Стоимость сборки, Стоимость выпуска изделия. Подчиненная форма должна иметь табличный вид и содержать графы: Код детали, Наименование детали, Цена детали, Количество деталей на план выпуска изделия, Стоимость деталей.
5. Создать итоговый отчет «План выпуска в стоимостном выражении», Отчет должен содержать графы: Код изделия, Наименование изделия, Количество изделий, Стоимость деталей, Стоимость сборки, Стоимость всего.
Отчет должен содержать все итоговые стоимости на план выпуска.
Ход выполнения:
Создание таблиц:
Схема данных:
Ввод данных в таблицу.
Ввести в таблицу 1 сведения о пяти изделиях:
В таблицу 2 - данные о 10ти деталях, которые используются при сборке изделий:
в таблицу 3 - данные о плане выпуска пяти изделий (код изделия должен выбираться из поля со списком):
Создать форму «Состав изделия» типа главная/подчиненная для просмотра и ввода данных о составе изделия, наименование которого должно выбираться из списка. Главная форма должна содержать поля: Наименование изделия и Код изделия. Подчиненная форма должна иметь табличный вид и содержать строки с полями: Код детали, Количество в изделии. Значение поля Код детали должно выбираться из поля со списком. Каждое изделие должно содержать не менее трех деталей.
Создать форму «План выпуска изделия» типа главная/подчиненная.
Код изделия должен выбираться из списка. Главная форма должна содержать поля: Код изделия, Наименование изделия, Количество изделий, Стоимость сборки, Стоимость выпуска изделия. Подчиненная форма должна иметь табличный вид и содержать графы: Код детали, Наименование детали, Цена детали, Количество деталей на план выпуска изделия, Стоимость деталей.
Создать итоговый отчет «План выпуска в стоимостном выражении», Отчет должен содержать графы: Код изделия, Наименование изделия, Количество изделий, Стоимость деталей, Стоимость сборки, Стоимость всего. Отчет должен содержать все итоговые стоимости на план выпуска.
В ходе выполнения работы было получено представление об основах теории баз данных, в частности - проектирование базы данных. Мы научились создавать таблицы, запросы, формы и отчеты в СУБД Microsoft Access. файл таблица хеширование алгоритмический
Знания по управлению базами данных были сформированы. Цели и задачи, поставленными перед нами, были выполнены в полном объеме.
Список использованной литературы
1. Гаврилова и др. Базы знаний интеллектуальных систем // Учебник для вузов. - СПб.: Питер, 2000. - 320 с.
2. Загоруйко Н. Г. Прикладные методы анализа данных и знаний. -Новосибирск: ИМ СО РАН, 2005. - 152 с.
3. Базы данных/И.П. Карпова. - И.: Питер, 2013. - 240 с.
Размещено на Allbest.ru
...Подобные документы
Системы управления базами данных: сущность и характеристика. Типы данных и свойства полей СУБД Access. Объекты базы данных: таблицы, схемы данных, формы, запросы, отчеты. Разработка и проектирование базы данных "Продажи книг" в среде Microsoft Access.
курсовая работа [1,8 M], добавлен 04.02.2013СУБД Microsoft Access и ее основные возможности. Набор визуальных средств разработки. Удобный графический интерфейс, ориентированный на комфортную работу пользователя. Таблицы, отчеты, формы и запросы базы данных Access, ее модули, страницы и макросы.
реферат [24,2 K], добавлен 16.12.2014Понятия основных компонентов базы данных Access. Таблицы, отчеты, макросы и модули, форма, запросы к базе и их виды. Типы данных. Создание базы данных "Кадры". Создание таблицы в режиме конструктора. Использование мастера подстановок для создания связей.
курсовая работа [818,0 K], добавлен 10.03.2016Особенности СУБД Microsoft Access, ее ориентация на рядовых потребителей, возможность легко выполнять основные операции с БД: создание, редактирование и обработка данных. Информационная модель задачи, работа с конструктором запросов и отчетов базы данных.
курсовая работа [758,6 K], добавлен 30.06.2015Разработка модели и создание структуры реляционной базы данных. Организация данных в таблицах для предоставления оперативного доступа к данным. Основные структурные единицы базы данных Access: таблицы, запросы, формы, отчеты, страницы, макросы и модули.
реферат [4,0 M], добавлен 03.02.2013Базы данных с двумерными файлами и реляционные системы управления базами данных (СУБД). Создание базы данных и обработка запросов к ним с помощью СУБД. Основные типы баз данных. Базовые понятия реляционных баз данных. Фундаментальные свойства отношений.
реферат [57,1 K], добавлен 20.12.2010Изучение основных понятий баз данных: структура простейшей базы данных, компоненты базы данных Microsoft Access. Проектирование базы данных "Туристическое агентство" в СУБД Access 2010, в которой хранятся данные о клиентах, которые хотят поехать отдыхать.
курсовая работа [3,3 M], добавлен 20.09.2013Проектирование базы данных "Общежитие" в СУБД Microsoft Access. Создание запросов, состоящих из комбинаций разных типов данных. Создание форм и полей таблицы в режиме конструктора. Ввод и просмотр данных в режиме таблицы, создание связей между ними.
курсовая работа [4,3 M], добавлен 24.06.2019Понятие базы данных в Microsoft Access, описание таблицы как объекта. Назначение запросов, форм, отчетов и страниц. Макросы и модули в СУБД. Порядок создания базы данных, ввод описания поля. Свойства полей таблиц. Построение реляционной модели данных.
презентация [389,6 K], добавлен 18.01.2014Понятие и сущность базы данных, их классификация и характеристика. Системы управления базами данных. СУБД структуры "сервер-клиент", его суть. Microsoft Access - функционально полная реляционная СУБД. Предназначение СУБД Access, и описание ее работы.
реферат [44,3 K], добавлен 27.02.2009Создание программ, позволяющих создавать базы данных. Создание таблицы базы данных. Создание схемы данных. Создание форм, отчетов, запросов. Увеличение объема и структурной сложности хранимых данных. Характеристика системы управления базой данных Access.
курсовая работа [2,1 M], добавлен 17.06.2013Создание отчета как объекта базы данных. Структура отчета в режиме Конструктора, способы его создания. Скоростные характеристики СУБД Access, использование программы в пакете Microsoft Office. Разработка базы данных "Сотрудники ресторана ВасабиКо".
контрольная работа [17,7 K], добавлен 06.12.2010Состав, расширение баз данных Access (Microsoft Office). Выполнение запросов, заполнение форм и таблиц. Типы данных Microsoft Access. Средства создания объектов базы данных СУБД. Дополнительные возможности запросов. Свойства полей. Режим работы с формами.
презентация [3,0 M], добавлен 28.10.2014Отчеты как объекты СУБД Access, предоставляющие возможность выбирать из базы данных необходимую информацию и оформлять ее в виде документа, предназначенного для просмотра и печати. Создание простого отчета (с помощью мастера) и с группировкой данных.
реферат [4,0 M], добавлен 29.06.2015Модель, отражающая логические взаимосвязи между элементами данных. Таблицы, запросы, отчеты и экранные формы в Microsoft office Access 2007. Проверка корректности данных при вводе. Доступ к данным в связанных таблицах с помощью подчиненных форм.
курсовая работа [1,6 M], добавлен 06.06.2013Определение (задание структуры) данных. Обработка данных. Управление данными. Microsoft Access - нечто большее, чем СУБД. Проектирование, создание и управление базой данных на примере переплетной мастерской в пакете MS Access.
курсовая работа [470,8 K], добавлен 30.10.2002Построение инфологической концептуальной модели предметной области. Структура базы данных Microsoft Office Access. Формы, запросы и отчеты. Создание форм, запросов и отчетов в базах данных. Схема данных физической и логической сущности в Erwin 4.0.
курсовая работа [5,1 M], добавлен 13.12.2011Общая характеристика реляционной СУБД Microsoft Office Access, ее основные компоненты и возможности. Разработка базы данных для систематизации подшивок журналов. Создание структуры таблиц с организацией связей между ними, ввод и обработка информации.
контрольная работа [1,1 M], добавлен 24.07.2013Основные понятия, используемые в теории управления базами данных. Характеристика объектов MS Access. Построение базы данных, содержащей информацию об учебном процессе текущего семестра. Свойства полей таблицы, работа с записями, импортирование данных.
лабораторная работа [46,0 K], добавлен 23.12.2010Проектирование концептуальной и логической модели. Установление связи между объектами. Описание входных (таблицы) и выходных (запросы, отчеты) данных. Описание используемых элементов управления и идентификаторов. Разработка интерфейсной части приложения.
курсовая работа [3,2 M], добавлен 24.10.2014