Курс лекций по "Клиент- серверные информационные технологии"

Автор работы: Пользователь скрыл имя, 07 Декабря 2013 в 16:39, курс лекций

Краткое описание

Работа содержит курс лекций по дисциплине "Клиент- серверные информационные технологии"

Прикрепленные файлы: 1 файл

Лекции Клиент-серверные технологии.doc

— 1.94 Мб (Скачать документ)

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

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

  1. СИСТЕМА УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ (СУБД), НАЗНАЧЕНИЕ И ОСНОВНЫЕ ФУНКЦИИ

База данных – это  информационная модель, позволяющая  упорядоченно хранить данные о группе объектов, обладающих одинаковым набором свойств. Программное обеспечение, предназначенное для работы с базами данных, называется система управления базами данных (СУБД). СУБД используются для упорядоченного хранения и обработки больших объемов информации.

СУБД организует хранение информации таким образом, чтобы ее было удобно:

  • просматривать,
  • пополнять,
  • изменять,
  • искать нужные сведения,
  • делать любые выборки,
  • осуществлять сортировку в любом порядке.

Классификация баз данных:

  1. По характеру хранимой информации:  
    — Фактографические (картотеки), 
    — Документальные (архивы)
  2. По способу хранения данных: 
    — Централизованные (хранятся на одном компьютере), 
    — Распределенные (используются в локальных и глобальных компьютерных сетях).
  3. По структуре организации данных: 
    — Табличные (реляционные), 
    — Иерархические,

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

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

Реляционная база данных, по сути, представляет собой двумерную  таблицу. Столбцы таблицы называются полями: каждое поле характеризуется  своим именем и топом данных. Поле БД – это столбец таблицы, содержащий значения определенного свойства.

В реляционной БД используются четыре основных типов полей:

  • Числовой,
  • Символьный (слова, тексты, коды и т.д.),
  • Дата (календарные даты в форме «день/месяц/год»),
  • Логический (принимает два значения: «да» - «нет» или «истина» - «ложь»).

Строки таблицы являются записями об объекте. Запись БД – это  строка таблицы, содержащая набор значения определенного свойства, размещенный  в полях базы данных.

Системы управления базами данных позволяют объединять большие  объемы информации и обрабатывать их, сортировать, делать выборки по определенным критериям и т. п. 

Современные СУБД дают возможность  включать в них не только текстовую  и графическую информацию, но и  звуковые фрагменты и даже видеоклипы. Простота использования СУБД позволяет создавать новые базы данных, не прибегая к программированию, а пользуясь только встроенными функциями. СУБД обеспечивают правильность, полноту и непротиворечивость данных, а также удобный доступ к ним.  Популярные СУБД - FoxPro, Access for Windows, Paradox. Для менее сложных применений вместо СУБД используются информационно-поисковые системы (ИПС), которые выполняют следующие функции:

  • хранение большого объема информации;
  • быстрый поиск требуемой информации;
  • добавление, удаление и изменение хранимой информации;
  • вывод ее в удобном для человека виде.
  1. Таблицы. Схема данных

Таблица (из лат. tabula «доска») — способ передачи содержания, заключающийся в организации структуры данных, в которой отдельные элементы помещены в ячейки, каждой из которых сопоставлена пара значений — номер строки и номер колонки. Таким образом устанавливается смысловая связь между элементами, принадлежащими одному столбцу или одной строке.

Табли́ца (англ. table) — (в реляционной модели данных) структура хранения данных, состоящая из строк и столбцов и обладающая следующими свойствами:

  • значения, находящиеся в одном столбце таблицы имеют один тип данных;
  • атомарность: ячейки не содержат структур данных, например массивов;
  • таблицы не содержат одинаковых строк.

Понятие таблицы актуально также  для постреляционной модели данных, при этом в приведенном выше определении снимается ограничение 2 (атомарность).

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

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

Взаимосвязи таблиц

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

Одно-многозначные (1:М) или одно-однозначные (1:1) связи. Схема данных прежде всего ориентирована на работу с таблицами, отвечающими требованиям нормализации, между которыми могут быть установлены одно-многозначные (1:М) или одно-однозначные (1:1) связи, для которых может автоматически поддерживаться связная целостность. Поэтому схему данных целесообразно строить в соответствии с информационно-логической моделью.

При построении схемы данных Access автоматически определяет по выбранному полю связи тип отношения между таблицами. Если поле, по которому нужно установить связь, является уникальным ключом как в одной таблице, так и в другой, Access выявляет отношение один-к-одному. Если поле связи является уникальным ключом в одной таблице (главной таблицы связи), а в другой таблице (подчиненной таблице связи) является не ключевым или входит в составной ключ, то есть значения его могут повторяться, Access выявляет отношение один-ко-многим между записями главной таблицы к подчиненной. В этом случае можно задать автоматическое поддержание целостности связей.

Отношение многие-ко-многим. Отношение многие-ко-многим предполагает, что каждой записи в одной таблице соответствует несколько записей в другой. При этом каждая сторона отношения выглядит как отношение один-ко-многим.

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

Связующая таблица представляет собой промежуточную таблицу, которая служит мостом между двумя таблицами в отношении многие-ко-многим. Ее ключ состоит из ключевых полей этих таблиц, с каждой из которых она связана отношением один-ко-многим. Помимо ключевых полей, связующая таблица должна содержать хотя бы одно поле, которого нет в связываемых таблицах, но которое имеет значение для каждой из них. Таким образом, отношение многие-ко-многим складывается из отношений многие-к-одному и один-ко-многим.

Связи-объединения. Между двумя таблицами может быть установлена связь-объединение по некоторому полю связи. Для связи-объединения может быть выбран один из трех способов объединения записей:

  1. Способ 1 - объединение только тех записей, в которых связанные поля обеих таблиц совпадают (производится по умолчанию);
  2. Способ 2 - объединение тех записей, в которых связанные поля обеих таблиц совпадают, а также объединение всех записей из первой таблицы, для которых нет связанных во второй, с пустой записью второй таблицы;
  3. Способ 3 - объединение тех записей, в которых связанные поля обеих таблиц совпадают, а также объединение всех записей из второй таблицы, для которых нет связанных в первой, с пустой записью первой таблицы.

Такой тип связи может быть определен, если связь характеризуется отношением 1:1 или 1:М, а также если тип отношения не может быть определен системой, то есть если не выполняются условия для этих отношений. Например, при выборе в главной таблице в качестве поля связи неключевого поля или поля, входящего в составной ключ, Access сообщает, что тип отношения не может быть определен. В этом случае между таблицами возможно установление только связи-объединения.

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

  1. ТРАНЗАКЦИИ И ЦЕЛОСТНОСТЬ БД

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

Согласованность чтения

Характерна для многопользовательских  СУБД. Для её реализации серверы  обладают средствами автоматической блокировки. Уровни, на которых блокируется таблица  во время обновлений: - вся таблица; - страница (физический блок размером от 1 до 4 Кбайт, содержащий несколько записей).

Тупиковые ситуации

Серверы БД должны иметь  средства определения состояния  взаимоблокировки (dead lock)При возникновении  такой ситуации выполнение одной  из транзакций прерывается, выводя другую транзакцию из состояния вечного ожидания. Прерванная транзакция после исключения возможности её блокировки выполняется сначала.

Схемы оптимизации работ на языке SQL

Цель оптимизации состоит  в обеспечении как можно более  быстрого получения ответа на запрос с минимальным числом обращений  к БДСуществует два типа оптимизации  на языке SQL-оптимизация по синтаксису; 
-оптимизация по затратам; Оптимизация по синтаксису использует тот факт, что в языке SQL эффективность запроса зависит от того, как он сформулирован. В данном случае оптимизация зависит от квалификации программиста. При оптимизации по затратам происходит сбор сведений о БД — числе таблиц, числе строк, типе данных в каждой строке, доступности индексирования для конкретного столбца и т. д. Оптимизатор использует эту информацию для выработки наилучшего плана обработки запросов. Преимущества метода оптимизации по затратам: задача определения наилучшего способа выполнения запроса перекладывается с пользователя на процессор БД. Недостаток: нахождение оптимального метода само по себе может занять много времени.

  1. СОЗДАНИЕ И ИСПОЛЬЗОВАНИЕ ИНДЕКСОВ И ФИЛЬТРОВ БД

Информация о работе Курс лекций по "Клиент- серверные информационные технологии"