- •1. Модели организации данных. Сетевая и иерархическая модели. Реляционная модель организации данных.
- •2. Организация процессов обработки данных в бд. Внутренняя схема бд фактографических ис. Физические структуры данных. Средства ускоренного доступа к данным. Индексирование данных. Хэширование данных.
- •4. Метод нормальных форм. Выявление зависимостей между атрибутами. Нормализация отношений.
- •Нормализация реляционных таблиц-отношений определяется требованиями атомарности значений полей, а также требованием рациональности группировки полей- атрибутов по различным таблицам.
- •5. Метод сущность-связь. Основные понятия метода. Правила формирования отношений.
- •Формирование отношений для связи 1:1
- •K1vk2 – означает, что ключом сформированного отношения может быть либо к1, либо к2.
- •Формирование отношений для связи 1: m
- •6. Языки баз данных. Обработка данных. Ввод-вывод данных. Запросы. Оптимизация запросов. Процедуры, правила (триггеры) и события в базах данных.
- •1. Понятие и содержание информационного обеспечения. Структура и классификация информационных систем.
- •Определение понятия «документ»
- •Структура информационных систем
- •Основные понятия автоматизированной информационной системы (аис)
- •Классификация информационных систем
- •2. По масштабу
- •Основные показатели эффективности функционирования дис
- •Механизмы поиска документов в полнотекстовых ипс
- •3. Гипертекст, гипертекстовые информационно-поисковые системы. Модели организации данных в гипертекстовых ипс. Формирование связей документов в гипертекстовых ипс.
- •4. Распределенные ис. Понятие распределенных ис, принципы их создания и функционирования. Техника представлений. Проблемы, связанные с практической реализацией техники представлений.
- •5. Распределенные ис. Технологии и модели «Клиент-сервер». Управление транзакциями.
- •Модель файлового сервера (fs)
- •Модель сервера приложений (as)
- •Модель удаленного доступа к данным (rda)
- •Модель сервера базы данных (dbs).
- •6. Распределенные ис. Управление распределенными данными. Доступ к общим данным. Технологии объектного связывания данных. Технологии реплицирования данных.
- •1. Понятие информационной технологии. Эволюция информационных технологий; их роль в развитии экономики и общества; свойства информационных технологий; понятие платформы.
- •3. Технологии открытых систем.
- •4. Сетевые информационные технологии: электронная почта, телеконференции, доска объявлений; авторские информационные технологии; гипертекстовые и мультимедийные информационные технологии.
- •Модель файлового сервера (fs)
- •Модель сервера приложений (as)
- •Модель удаленного доступа к данным (rda)
- •Модель сервера базы данных (dbs).
2. Организация процессов обработки данных в бд. Внутренняя схема бд фактографических ис. Физические структуры данных. Средства ускоренного доступа к данным. Индексирование данных. Хэширование данных.
Обработка данных включает набор различных функций и операций, которые можно разделить на тригруппы:
поиск, фильтрация и сортировка данных;
запросы к базе данных;
механизм реализации событий, правил (триггеров) и процедур в базе данных.
Отличительная особенность операций по поиску, фильтрации и сортировке данныхзаключается в том, что они осуществляютсяв режиме открытой таблицыилиформы.Результатомопераций по поиску или фильтрации данных является изменениесостояния просмотраоткрытой таблицы (формы), но не самих данных, которые физически остаются в той же таблице и в том же порядке.
Поиск записи по ее номерупроизводится на основемеханизма распределения записей по страницамфайла данных. Результатом такого поиска является перевод табличного курсора в ключевое поле соответствующей записи или «показ» в форме полей искомой записи.
Поиск записи по значению поляосуществляется также на основе механизма распределения записей по страницам файла данных с использованием техникивхождения образцав значения просматриваемого поля. Результатом поиска является установка табличного курсора в соответствующее поле найденной записи. Если записей с искомым значением выделенного поля несколько, тогда, как правило, реализуется последовательная «остановка» (последовательный просмотр) табличного курсора в соответствующих полях найденных записей.
Фильтрпредставляет собой набор условий, применяемых для отбора подмножества записей.Результатомфильтрации является «показ» (отображение) в открытой таблице или форме только отфильтрованных записей с временным «скрытием» всех остальных записей.
Набор условий, определяющих фильтр, формируется в различных СУБД по-разному, но общепринятым является использование выражениивусловиях отбора данных.Аргументами выражения могут быть числа, даты, текст, имена полей, которые соединяются знаками математических операций (+, -, *, /), неравенств ( >,<,=) и логических операций (АND, ОR,NОТ). При этом текстовые значения и аргументы заключаются в кавычки («Иванов»), даты в символы # (#01.01.03#).
Упорядочиние записей по возрастанию/убываниюилипо алфавитупо определенному полю реализуется сортировкойданных. При этом в файле базы данных строки таблицы физически остаются не упорядоченными. Сортировка строк открытой таблицы происходит только в буферах страниц в оперативной памяти. Новый порядок расположения строк таблицы может быть зафиксирован специальной командой при закрытии таблицы.
При больших объемах таблиц (при большом количестве строк-записей) операции сортировки могут занимать продолжительное время, которое существенно сокращается, если сортировка осуществляется по индексированному полю.
Запросыявляются наиболее распространенным видом обработки данных.Запроспредставляет собойспецификацию (предписание) па специальном языке (языке базы данных) для обработки данных.В реляционных СУБД запросы к базе данных выражаются на языкеSQL.
Формирование запросов в СУБД может осуществляться в специальном редакторе (командный режим) или через наглядно-диалоговые средства (конструкторы) и пошаговые мастера формирования запросов. Сформированный запрос в виде SQL-инструкции сохраняется в файле базы данных и впоследствии специальной командой СУБД может запускаться (открываться) на выполнение.
С точки зрения решаемых информационных задач и формы результатов исполнения запросов их можно разделить на три группы:
запросы на выборку данных;
запросы на изменение данных;
управляющие запросы.
Запросы на выборкуотносятся к одному из наиболее часто применяемых видов запросов. Данный вид запросов реализуетсяSQL-инструкциейSELECTс предложениемFROM. Результатомисполнения запроса на выборку являетсянабор данных,который представляетвременную таблицуданных со структурой (поля, их типы и параметры), определяемой параметрами запроса и параметрами полей таблиц, из которых выбираются данные. Результаты запросов на выборку помещаются в специальную временную таблицу, размещаемую на период исполнения («открытия») запроса в оперативной памяти.
Важное значение для решения различных технологических информационных задачпо ведению базы данных имеютзапросы на изменение данных. В отличие от непосредственного ввода данных в режимах открытой таблицы или формы онивносят изменения сразу в группу записей за одну операцию.Таким образом,результатомзапросов на изменение является не набор данных, как в запросах на выборку, аизменение данныхв самих таблицах.
При исполнении запроса на удаление за одну операциюосуществляетсяудаление группы записей из одной или нескольких таблиц.Запросы на удаление реализуютсяSQL-инструкциейDELETE:
DELETE(поля)FROM(таблица)WHERE(условие);
Запрос на обновление за одну операциювноситобщие изменения в группу записей одной или нескольких таблиц.РеализуютсяSQL-инструкциейUPDATE.Запросы на обновления применяются тогда, когда необходимо осуществитьглобальные однотипные измененияв каком-либо наборе данных.
UPDATE(таблица)SET(поле = значение)WHERE(условие);
Запрос на добавлениеосуществляет добавлениегруппы записейизодной или нескольких таблиц в конец другой или группы других таблиц.При этомколичествоитипы полейпри вставке записейдолжны совпадать.
INTERINTOтаблицаSELECTполяFROMтаблицаWHERE(условие);
Запросы на создание таблицы за одну операциюсоздают новую таблицу с заполненными данными на основе всех или части данных из одной или нескольких таблиц.
SELECTполяINTOтаблицаFROMтаблицаWHERE(условие);
В составе языка описания данных DDLимеются рядSQL-инструкций, на основе которых строятся запросы по созданию/модификации реляционных таблиц или отдельных их элементов. Такие запросы называются управляющими.
Запросы на создание таблицыреализуютсяSQL-инструкциейCREATEТАВLЕ с ключевыми словами, определяющими типы полей (СНАRACTER,INTEGER,DATETIMEи т.д.), предложениемCONSTRAINTдля создания ограничений на значения полей или связей между таблицами, ключевым словомUNIQUE, задающим свойство уникальности индекса таблицы, а также ключевого словаPRIMERYKEY, определяющего ключевое поле создаваемой таблицы.
Запросы на добавление полей или индексовреализуютсяSQL-инструкциейALTERTABLEс использованием зарезервированных словADDCOLUMN(добавить поле) иADDCONSTRAIN(добавить индекс). Этим же запросом с помощью зарезервированного словаDROPCOLUMNможно удалить поле из существующей таблицы. Как правило, запросы на добавление полей также используются для создания внешних ключей, задающих связи-отношения между таблицами. С этой целью используются зарезервированные словаFOREIGNKEYиREFERENCES.
Запросы на удаление таблицы или индексареализуютсяSQL– инструкциейDROPTABLEс указанием имени удаляемой таблицы или индекса.
Запросы на создание индексареализуютсяSQL-инструкциейCREATEINDEXс использованием зарезервированного словаUNIQUEзапрета повтора значений в индексируемом поле инеобязательного предложения WITH с параметрами DISALLOWNULLиIGNORENULLдля запрета/разрешения нулевых (пустых) значений в индексируемом поле. Зарезервированное словоPRIMERYпозволяет определить создаваемый индекс ключом таблицы (при этом создаваемый индекс по умолчанию является уникальным, т. е. повторы значений не допускаются).
Суть идеи механизма событий, правил и процедурзаключается в том, что они после определенияхранятсявместе с данными. Ядро СУБДпри любом изменении состояния базы данных проверяет, не произошлили ранее «поставленные на учет»события,и, если они произошли, обеспечиваетпроверкусоответствующихправилизапусксоответствующихпроцедуробработки.
Функционирование базы данных осуществляется следующим образом:





1. В базе данных определяются так называемые события, связанные с изменениями данных —добавление новой записи в определенную таблицу, изменение, удаление записи.
2. Для каждого события в базеданных определяются правила (триггеры) по проверке определенных условий состояния данных.;
3. В зависимости от результатов проверки правилв базе данных запускаются на выполнение предварительно определенные процедуры.Процедуры представляют собойпоследовательности команд по обработке данных, имеющие отдельное смысловое значение,и могут реализовываться на упрощенном макроязыке (последовательность команд запуска запросов или выполнения других действий, например по открытию-закрытию форм, таблиц и т. п.) или на языке 4GL, встроенном в СУБД.
В отличие от традиционного подхода, когда специальные прикладные программы постоянно «опрашивают» базу данных для обнаружения ситуаций, требующих обработки, «событийная» техника более экономична и естественна в технологическом плане.
Существуют два принципиальных подхода к физическому хранению отношений. Наиболее распространенным является покортежное хранение отношений (кортеж (запись) является единицей физического хранения). Естественно, это обеспечивает быстрый доступ к целому кортежу, но при этом во внешней памяти дублируются общие значения разных кортежей одного отношения и, вообще говоря, могут потребоваться лишние обмены с внешней памятью, если нужна часть кортежа. Альтернативным (менее распространенным) подходом является хранение отношения по столбцам, т.е. единицей хранения является столбец отношения с исключенными дубликатами.
Одним из наиболее популярных способов обеспечения ускоренного поиска в БД является индексирование данных.
Индекс – упорядоченный указатель на записи в таблице, строится из пар {значение поля; физическое расположение поля}. Таким образом, по значению поля, входящего в индекс, можно быстро найти место в таблице, где расположена запись (кортеж), содержащая это значение. Плюс: ускорение процесса поиска. Минусы: увеличение объемов хранимой информации, повышение временных затрат при обновлении, добавлении и удалении данных (индекс тоже меняется).
Одним из способов организации индексирования служит хэширование данных.
Общей идеей методов хэширования является применение к значению ключа некоторой функции свертки (хэш-функции), вырабатывающей значение меньшего размера. Свертка значения ключа затем используется для доступа к записи.
В самом простом случае свертка ключа используется как адрес в таблице, содержащей ключи и записи. Основным требованием к хэш-функции является равномерное распределение значение свертки. При возникновении коллизий (одна и та же свертка для нескольких значений ключа) образуются цепочки переполнения. Главным ограничением этого метода является фиксированный размер таблицы. Если таблица заполнена слишком сильно или переполнена, но возникнет слишком много цепочек переполнения, и главное преимущество хэширования - доступ к записи за одно обращение к таблице - будет утрачено. Расширение таблицы требует ее полной переделки на основе новой хэш-функции (со значением свертки большего размера). В базах данных такие действия являются абсолютно неприемлемыми. Поэтому обычно вводят промежуточные таблицы-справочники, содержащие значения ключей и адреса записей, а сами записи хранятся отдельно. Тогда при переполнении справочника требуется только его переделка, что вызывает меньше накладных расходов.
3. Проектирование банков данных фактографических АИС. Концептуальное проектирование банков данных фактографических ИС. Проблемы проектирования структур данных для ИС. Дублирование данных. Аномалии данных.
Предметная область- это часть реального мира, информационные процессы которой рассматриваются. Это может быть предприятие или некоторая его часть (структурная или функциональная), процесс, система и т.д. Анализ предметной области необходим для понимания того, какая информация обрабатывается, как и какие информационные процессы должны быть автоматизированы, каким образом пользователи взаимодействую с ними, и участвуют в них.
Формирование представления о предметной области при проектировании информационной системы последовательно трансформируется от уровня понятий реального мира к понятиям более абстрактным, связанным с представлением информации в компьютере. Выделяют три уровня представления:
Внешний уровень, связанный с индивидуальными представлениями пользователей информационной системы.
Концептуальный уровень, отражающий обобщенные представления пользователей.
Внутренний уровень представляющий компьютерный вариант представления о предметной области и связанный со способами хранения и обработки электронной информации.
На внешнем уровне исследуются представления каждой из следующих групп пользователей:
конечные пользователи различного уровня профессиональной подготовки;
прикладные программисты;
администратор системы.
Каждый пользователь имеет свое представление об информации, ее составе, форме представления, процессах ее обработки в информационной системе, а также язык общения с информационной системой:
для конечного пользователя- это язык запросов, форм, меню и т.д.
для прикладного программистаэто либо один из языков программирования, либо специальный язык для написания приложений в данной информационной системе.
Анализ предметной области сводится к сбору и анализу представлений пользователей различных групп, их обобщению и формированию на их основе концептуального представления. Для этого необходимо отобразить описание информационных процессов, полученное от различных пользователей в концептуальную схему.Концептуальная схема использует понятия объектов и связей между ними, в ней отсутствуют какие-либо параметры, описывающие способы представления или хранения информации в ЭВМ.
Информационный объект- это идентифицируемый объект реального мира, абстрактное понятие или процесс, относящийся к рассматриваемой предметной области.
Примерами информационных объектов являются люди, изделия, счета, квалификация, технологические операции.
Информационный объект описывается с помощью ограниченного множества характеристик, или атрибутов объектов, которым присваиваются конкретные значения. Атрибут объекта представляется именем и множеством значений, которые он может принимать. Это множество может задаваться как списком дискретных значений, так и диапазоном изменения значений.
Для каждого объекта реального мира можно выделить большое количество характеристик. Однако в каждом конкретном случае создания информационной системы ограничиваются некоторым подмножеством множества характеристик. Их отбор определяется теми функциональными задачами, которые стоят перед информационной системой, а также необходимостью создать минимальный, не избыточный, и функционально полный набор характеристик объектов ИС. Отобранные характеристики должны быть также измеряемыми, т.е. должны иметь значения; также желательно, чтобы они были общепринятыми, т.е. были понятны тому кругу пользователей, которые будут работать с информационной системой.
Между объектами существуют различные типы связей, в которых участвуют различные их атрибуты. Связи между объектами представляются отображениями.
Отображения могут быть следующими:




Приведенные схемы иллюстрируют виды отношений. Заглавными буквами выделены названия информационных объектов (СОТРУДНИК, ОТДЕЛ, и т.д.), а – строчными атрибуты объекта.
В результате анализа предметной области можно рекомендовать составить неформальное описание выделенных информационных объектов, включающее следующие позиции:
Наименование объекта.
Наименование атрибутов объекта.
Предполагаемое количество экземпляров объекта.
Для каждого атрибута необходимо определить:
Наименование атрибута.
Шкалу измерения.
Множество значений.
Частоту использования атрибута в описании экземпляра объекта (что определяет вероятность появления неопределенных значений).
Связи между объектами определяются следующими характеристиками:
Связываемые объекты
Тип связи (1 : 1, 1 : m,n: 1,n:m).
Атрибуты, которые определяют связь.
Существование или условие существования связи для экземпляров связываемых объектов.
Выделение информационных объектов, их атрибутов и связей между ними в ходе анализа предметной области протекает одновременно с выявлением и анализом процессов обработки информации.
Проектирование информационных систем, включающих в себя базы данных, осуществляется на физическом и логическом уровнях. Решение проблемы проектирования нафизическом уровнево многом зависит от используемой СУБД, зачастую автоматизировано и скрыто от пользователя. В ряде случаев пользователю предоставляется возможность настройки отдельных параметров системы, которая не составляет большой проблемы.Логическое проектированиезаключается в определении числа и структуры таблиц, формировании запросов к БД, определении типов отчетных документов, разработке алгоритмов обработки информации, создании форм для ввода и редактирования данных в базе и решении ряда других задач. Решение задачи логического проектирования БД в основном определяется спецификой задач предметной области. Наиболее важной здесь является проблема структурирования данных.
В процессе проектирования и наполнения ИС можно столкнуться с проблемами дублирования данных и различных аномалий.
Следует различать не избыточноеиизбыточноедублирование данных. Наличие не избыточного дублирования допускается в базах данных, а избыточное дублирование данных может приводить к проблемам при обработке данных.
Пример не избыточного дублированияданных представляет отношение С_Т с атрибутами Сотрудник и Телефон. Для сотрудников, находящихся в одном помещении, номера телефонов совпадают.
Пример избыточного дублированияпредставляет отношение С_Т_Н, которое, в отличие от отношения С_Т, дополнено атрибутом Н_комн (номер комнаты сотрудника). Естественно предположить, что все служащие в одной комнате имеют один и тот же телефон. Следовательно, в рассматриваемом отношении имеется избыточное дублирование данных.
Аномалияминазывают такую ситуацию в таблицах БД, которая приводит к противоречиям в БД, либо существенно усложняет обработку данных.
Аномалии модификациипроявляются в том, что изменение значения одного данного может повлечь за собой просмотр всей таблицы и соответствующее изменение некоторых других записей таблицы.
Аномалии удаления состоят в том, что при удалении какого-либо данного из таблицы может пропасть и другая информация, которая не связана напрямую с удаляемым данным.
Аномалии добавлениявозникают в случаях, когда информацию в таблицу нельзя поместить до тех пор, пока она неполная, либо вставка новой записи требует дополнительного просмотра таблицы.
