|
В этой интерпретации распределенную базу данных можно понимать как совокупность логически взаимосвязанных распределенных по разным компьютерам баз данных.⇐ ПредыдущаяСтр 21 из 21 Перечислим основные проблемы создания распределенной базы данных. 1. Фрагментация данных и распределение по компьютерам. 2. Составление глобального каталога, содержащего информацию о каждом фрагменте БД и его местоположении в сети. (Каталог может храниться на одном узле или быть распределенным) 3. Организация обработки запросов (синхронизация нескольких запросов к одним и тем же данным, исключение аномалий удаления и обновления одних и тех же данных, расположенных на различных узлах, оптимизация последовательности шагов при обработке запроса и т.д.). Значительным достоинством этой модели является приближение данных к месту их порождения, что позволяет существенно повысить их достоверность, недостатком – достаточно высокая сложность управления данными как единым целым. К сожалению, процесс создания и обслуживания распределенных баз данных связан и с техническими трудностями, среди которых можно выделить жесткие требования к пропускной способности каналов связи, а также низкую производительность, обусловленную значительными затратами коммуникационных и вычислительных ресурсов при их синхронизации во время выполнения транзакций (особенно при интенсивных обращениях из разных узлов к одному фрагменту). В задачу данного учебника не входит подробное изучение принципов построения распределенных баз данных. Интересующимся рекомендуем обратиться к соответствующей литературе, например [3-6]. Здесь мы хотим лишь обрисовать проблему и сделать некоторые выводы по перспективам ее решения. Технология, связанная с использованием распределенных баз данных, в наибольшей степени соответствует организационной человеческой деятельности (информация распределена по месту деятельности людей, и они обмениваются ей в процессе работы) и позволяет наиболее успешно решать важнейшие проблемы, ведения баз данных: · повысить достоверность информации (информация вводится в месте ее порождения лицом, которое лучше всех понимает ее смысловое значение); · повысить оперативность локальной обработки информации (соответствующие вопросы решаются на локальном компьютере с фрагментом базы данных). Поэтому очевидно, что задача проектирования, создания и функционирования распределенных баз данных является весьма существенной, активно изучается в настоящее время и будет решаться и далее.
14.3. Хранилища данных Как уже неоднократно отмечалось, технологии баз данных предназначены, как правило, для решения текущих задач обработки данных организации. В базу данных постоянно вносятся изменения, то есть база данных отражает моментальный снимок определенной области деятельности предприятия. Для эффективного принятия решений руководством при управлении организацией важно не только знать текущее положение дел, но и иметь возможность анализировать динамику (изменение во времени) основных показателей, причем, зачастую из разных баз данных. Такую возможность дает технология так называемых хранилищ данных. Приведем определение хранилища данных (Bill Inmon). Хранилище данных – предметно-ориентированный, интегрированный, привязанный ко времени и неизменяемый набор данных, предназначенный для поддержки принятия решений. Под предметной ориентированностью здесь понимается ориентированность на предметы (определенные группы данных), а не на конкретные приложения. Например, ориентация на данные о сотрудниках, а не только о расчете их заработной платы. Под интегрированностью здесь понимается возможное объединение данных из разных источников (баз данных), имеющих разный формат и несогласованных. Привязка ко времени предполагает, что для всех данных указан момент или промежуток времени, в который они корректны. Данные в хранилище не изменяются, они лишь регулярно пополняются из оперативных баз данных. Общая схема взаимодействия информационного хранилища и баз данных приводится на рис. 14.5.
Рис. 14.5. Схема оргаизации работы хранилища данных Еще раз подчеркнем, что основной целью хранилищ данных является бизнес-анализ или информационная поддержка принятия управленческих решений. Для реализации всей необходимой обработки информации в соответствии с этой схемой необходимы следующие программные средства: · средства извлечения данных из баз данных; · средства управления данными хранилища (система управления базой данных хранилища); · средства анализа данных хранилища (используется OLAP-технология): · средства доставки данных; · средства визуализации результатов обработки для конечных пользователей. Для работы соответствующих программных средств необходимо описание структуры содержимого информационного хранилища (метаописание). Для самого общего случая, если данные берутся из баз данных, управляемых разными СУБД, из файлов разных типов, а данные разнородны, средства управления данными хранилища пока не созданы. Однако, если данные в информационное хранилище выбираются только из реляционных баз данных, то в качестве средств управления данными хранилища может быть взята мощная реляционная СУБД. Поэтому разработчики современных СУБД включают в состав программного обеспечения СУБД средства организации работы с хранилищами данных. Рассмотрим в качестве примера возможности СУБД Microsoft SQL Server 2008 для организации хранилищ данных. Microsoft SQL Server 2008 содержит в своем составе средства извлечения, преобразования и загрузки данных (SQL Server 2008 Integration Services), способные интегрировать данные из различных источников, проверять данные на допустимость и преобразовывать перед загрузкой в хранилище. Эти средства также способствуют перемещению данных, поддерживают текстовый анализ и нечеткий поиск. Нужно отметить также среду визуальной разработки (Business Intelligence Development Studio) для создания многомерных кубов, отчетов, пакетов извлечения, преобразования и загрузки данных. Существенной особенностью хранилищ данных является их очень большой объем. Microsoft SQL Server 2008 как средство управления данными хранилища позволяет работать с большими объемами данных, причем для сокращения времени обработки предусмотрена поддержка параллельных вычислений (путем разделения таблиц и индексов на секции о обеспечение параллельной обработки секций). В системе предусмотрена возможность сжатия данных (таблиц), что позволяет уменьшить физический размер таблиц и существенно сокращает время обмена между оперативной и внешней памятью. В качестве средств анализа данных хранилища используется SQL Server 2008 Analysis Services, применяемый для построения многомерных кубов (многомерных моделей данных). Это средство содержит семь эффективных алгоритмов анализа данных с целью поддержки принятия управленческих решений, в том числе анализ тенденций и статистический анализ данных. В качестве средств представления аналитических данных пользователям предлагается использовать средство генерации отчетов SQL Server 2008 Reporting Services. Таким образом, Microsoft SQL Server 2008 является эффективным средством реализации хранилищ данных на основе реляционных баз данных. Краткие итоги: В лекции рассмотрены перспективные направления в теории и практике создания баз данных – объектно-ориентированные и распределенные базы данных. Здесь описываются основные идеи объектно-ориентированного программирования (объект, класс, методы класса, наследование) и их приложение к теории баз данных. Отмечены основные достоинства и недостатки объектно-ориентированных баз данных. Рассматривается понятие распределенных базы данных как следующий шаг в развитии понятий о данных. Отмечены основные достоинства распределенных баз данных и проблемы, возникающие при их разработке. Рассматривается понятие хранилища данных, в качестве примера системы управления данными хранилища приводится СУБД Microsoft SQL Server 2008.
Контрольные тесты
Задача 1. Какими понятиями характеризуется объектно-ориентированное программирование?
Вариант 1. Как характеризуется объект в объектно-ориентированном программировании?
ð объект в объектно-ориентированном программировании это сущность предметной области при проектировании баз данных ð объект это структура, имеющая атрибуты ð+ объект это структура, имеющая свои внутренние атрибуты и методы ð+ объект это сущность, характеризуемая внутренними состоянием и поведением
Вариант 2. Какими основными понятиями характеризуется объектно-ориентированное программирование?
ð+ инкапсуляция ð+ объект ð+ наследование ð+ полиморфизм ð+ класс объектов ð класс связей
Вариант 3. Какие основные принципы работы с объектами в объектно-ориентированном программировании?
ð работать с объектом можно с помощью методов любых объектов ð+ работать с объектом можно с помощью только его методов ð+ с помощью методов можно менять значения атрибутов объекта ð+ работать с классом объектов можно с помощью только методов соответствующего объекта ð работать с классом объектов можно с помощью методов любых объектов
Задача 2. Что такое объектно-ориентированная база данных?
Вариант 1. Как характеризуется понятие объекта (сущности) в объектно-ориентированных базах данных по сравнению с традиционными базами данных?
ð аналогично понятию объекта в традиционных базах данных ð+ в понятие объекта включены методы объекта ð+ используется то же понятие атрибута ð используется то же понятие типа данных ð+ понятие тип данных может заменяться понятиями «класс» и «подкласс»
Вариант 2. Какие понятия характеризуют объектно-ориентированную базу данных?
ð+ заимствование свойств класса объектов другим классом ð взаимодействие классов с помощью установленных связей ð+ взаимодействие классов с помощью механизма сообщений ð+ внутренняя структура объектов скрыта ð представление объекта в виде строки таблицы
Вариант 3. Какие основные принципы работы объектно-ориентированной СУБД?
ð те же, что и у традиционной СУБД ð хранит и выполняет программы обработки запросов ко всем объектам базы данных ð хранит и выполняет определенные программы обработки запросов к соответствующим объектам базы данных ð+ хранит данные об объекте вместе с программами обработки этого объекта и обрабатывает соответствующие данные этими программами Задача 3. Что такое объектно-реляционная база данных?
Вариант 1. Что является основой объектно-реляционной базы данных?
ð понятие объекта ð+ реляционная таблица ð объектно-ориентированная реляционная таблица ð реляционная таблица, представляющая объект как понятие объектно-ориентированного программирования
Вариант 2. Какие компоненты объектно-ориентированного программирования включают существующие объектно-реляционные базы данных? ð+ ориентированные на определенные классы объектов типы данных ð+ возможность создания новых пользовательских типов данных ð возможность хранения в реляционной таблице методов вместе с объектом ð инкапсуляцию состояния и поведения объекта
Вариант 3. Каковы основные достоинства объектно-реляционных баз данных?
ð+ основаны на широко используемой реляционной модели ð+ будут поддержаны стандартом языка запросов ð реализуют все принципы объектно-ориентированного программирования ð+ поддерживаются известными разработчиками СУБД
Задача 4. Что такое распределенная база данных?
Вариант 1. Как данные размещены по компьютерам в распределенной базе данных?
ð общая база данных и СУБД размещены на сервере; данные, относящиеся к конкретным пользователям, размещены на их компьютерах ð общей базы данных нет, данные, относящиеся к конкретным пользователям, и СУБД размещены на их компьютерах; ð база данных разбита на части, части размещены на разных компьютерах, СУБД размещена на сервере и имеет доступ ко всем частям базы данных ð+ база данных разбита на части, части базы данных и СУБД размещены на компьютерах пользователей, СУБД на каждом компьютере имеет доступ ко всем частям базы данных
Вариант 2. Как система управления распределенной базой данных распределяется по компьютерам?
ð серверная часть СУБД размещается на сервере, клиентская часть на компьютерах –клиентах ð СУБД копируется на всех компьютерах пользователей ð часть СУБД, обеспечивающая локальную работу с частью базы данных на компьютере пользователя, размещается на этом компьютере, общая часть СУБД размещается на сервере ð+ часть СУБД, обеспечивающая локальную работу с частью базы данных на компьютере пользователя, размещается на этом компьютере, общая часть СУБД также размещается на этом компьютере
Вариант 3. Как пользователь работает с распределенной базой данных?
ð только с фрагментом базы данных, расположенным на его компьютере ð с любыми фрагментами базы данных, расположенных на компьютерах подразделения, в котором он работает ð только с фрагментами базы данных, расположенных на тех компьютерах, с которыми напрямую соединен его компьютер ð+ с любыми фрагментами базы данных
Задача 5. Каковы основные принципы и проблемы построения распределенной базы данных?
Вариант 1. Какие требования выдвигаются к программному обеспечению в распределенной СУБД?
ð однотипность операционных систем всех компьютеров ð однотипность СУБД на всех компьютерах ð+ управление распределенными транзакциями ð+ возможность обработки распределенных запросов
Вариант 2. Какие требования выдвигаются к аппаратному обеспечению в распределенной СУБД?
ð однотипность всех компьютеров ð+ непрерывное функционирование ð+ независимость от компьютерной сети ð+ независимость от расположения компьютеров
Вариант 3. Каковы основные проблемы создания распределенной базы данных?
ð+ как распределить базу данных по компьютерам ð как распределить СУБД по компьютерам ð+ как составить каталог о размещении фрагментов базы данных ð+ как исключить одновременный доступ к одним и тем же данным ð как передавать данные между компьютерами
Задача 6. Что такое хранилище данных?
Вариант 1. Какова основная цель хранилища данных?
ð долговременное хранение данных (архив) ð хранение резервных копий баз данных для восстановления при машинных сбоях ð+ хранение выборок из таблиц баз данных, привязанных к разным моментам времени, с целью их детального анализа ð хранение выборок из таблиц баз данных, привязанных к одному моменту времени, с целью их детального анализа
Вариант 2. Что понимается под интегрированностью данных в хранилище?
ð подведены итоги по разным срезам ð+ данные объединены из разных источников ð+ объединены данные разных форматов ð+ объединены несогласованные данные
Вариант 3. Как изменяются данные хранилища?
ð корректируются ð частично удаляются ð+ добавляются ð не изменяются
Задача 7. Как организуется работа хранилища данных?
Вариант 1. Как загружаются данные в хранилище данных?
ð данные вводятся пользователем в ручном режиме ð данные загружаются из одной базы данных один раз ð+ данные загружаются из многих баз данных регулярно ð данные загружаются из одной базы данных регулярно
Вариант 2. Как обрабатываются данные в хранилище данных?
ð данные в хранилище обрабатываются прикладными программами пользователя ð+ данные обрабатываются программами анализа данных хранилища и доставляются пользователю ð данные из хранилища доставляются пользователю и обрабатываются пользователем ð данные обрабатываются средствами системы управления базами данных
Вариант 3. Какие программные средства должны поддерживать работу хранилища данных?
ð+ средства извлечения данных из баз данных; ð+ средства управления данными хранилища ð+ средства анализа данных хранилища ð+ средства доставки данных ð+ средства визуализации результатов обработки для конечных пользователей
Задача 8. Какие средства Microsoft SQL Server 2008 позволяют использовать эту СУБД для организации и работы хранилищ данных?
Вариант 1. Какие средства Microsoft SQL Server 2008 используются для построения многомерных кубов?
ð SQL Server 2008 Integration Services ð Business Intelligence Development Studio ð+ SQL Server 2008 Analysis Services ð SQL Server 2008 Reporting Services
Вариант 2. Какие средства Microsoft SQL Server 2008 используются для извлечения данных из баз данных и их преобразования перед загрузкой в хранилище?
ð+ SQL Server 2008 Integration Services ð Business Intelligence Development Studio ð SQL Server 2008 Analysis Services ð SQL Server 2008 Reporting Services
Вариант 3. Какие средства Microsoft SQL Server 2008 используются для формирования пакетов обработки данных хранилища?
ð SQL Server 2008 Integration Services ð+ Business Intelligence Development Studio ð SQL Server 2008 Analysis Services ð SQL Server 2008 Reporting Services
Литература 1. Буч Г. Объектно-ориентированный анализ и проектирование с примерами приложений на С++. 2-е изд.: Пер. с англ. – М.: Бином, СПб.: Невский диалект, 2000 2. Горев А., Макашарипов С., Владимиров Ю. Microsoft SQL Server 6.5 для профессионалов. – СПб.: Питер, 1998. – 464 с.: ил. 3. Дейт К.Дж. Введение в системы баз данных: Пер. с англ. – 6-е изд. – К.: Диалектика, 1998. – 784 с. 4. Конноли Т., Бэгг К., Страчан А. Базы данных: проектирование, реализация и сопровождение. Теория и практика. 2-е изд.: Пер. с англ. – М.: Издательский дом «Вильямс», 2000. – 1120 с. 5. Саймон А.Р. Стратегические технологии баз данных: менеджмент на 2000 год: Пер. с англ. / Под ред. и с предисл. М.Р. Когаловского. – М.: Финансы и статистика, 1999. – 479 с. 6. Крёнке Д. Теория и практика построения баз данных. 8-е изд. – СПб.: Питер, 2003. – 800 с.
Оглавление Общая информация о курсе.............................................................................................................. 2 Лекция 1. Введение в базы данных. Общая характеристика основных понятий...................... 5 1.1. Развитие основных понятий представления данных........................................................... 5 Контрольные тесты........................................................................................................................ 13 Лекция 2. Системы управления базами данных........................................................................... 22 Контрольные тесты........................................................................................................................ 28 Лекция 3. Различные архитектурные решения, используемые при реализации многопользовательских СУБД. Краткий обзор СУБД............................................................................................... 37 3.1. Централизованная архитектура............................................................................................. 37 3.2. Технология с сетью и файловым сервером (архитектура «файл-сервер»)........................ 38 3.3. Технология «клиент – сервер».............................................................................................. 40 3.4. Трехзвенная (многозвенная) архитектура «клиент – сервер»............................................ 42 3.5. Краткий обзор СУБД.............................................................................................................. 43 3.5.1. Настольные СУБД........................................................................................................... 44 3.5.2. Серверные СУБД............................................................................................................ 44 Контрольные тесты........................................................................................................................ 48 Лекция 4. Различные представления о данных в базах данных. Основные этапы проектирования баз данных................................................................................................................................................ 57 4.1. Различные представления о данных в базах данных.......................................................... 57 4.2. Основные этапы проектирования базы данных.................................................................. 59 Контрольные тесты........................................................................................................................ 62 Лекция 5. Первая стадия концептуального проектирования базы данных (концептуальное моделирование)................................................................................................................................................ 71 5.1. Описание информационного представления предметной области. ER-диаграмма...... 71 5.2. Построение концептуальной модели в виде ER-диаграммы............................................. 75 5.2.1 Основные этапы построения.......................................................................................... 75 5.2.2. Моделирование локальных представлений................................................................. 75 5.2.3. Объединение локальных моделей................................................................................. 76 5.3. Ограничения целостности..................................................................................................... 80 Контрольные тесты........................................................................................................................ 82 Лекция 6. Вторая стадия концептуального проектирования (Модели данных СУБД. представление концептуальной модели средствами модели данных СУБД).......................................... 92 6.1. Представление концептуальной модели средствами модели данных СУБД................. 92 6.2 Типовые модели данных СУБД и представление концептуальной модели..................... 95 6.2.1. Сетевая модель данных.................................................................................................. 95 6.2.2. Иерархическая модель данных...................................................................................... 98 6.2.3. Реляционная модель данных.......................................................................................... 99 6.2.4. Многомерная модель данных...................................................................................... 101 6.3. Средства автоматизированного проектирования концептуальной модели................... 102 Контрольные тесты...................................................................................................................... 105 Лекция 7. Формализация реляционной модели.......................................................................... 114 7.1. Формализованное описание отношений и схемы отношений........................................ 114 7.2. Манипулирование данными в реляционной модели....................................................... 116 7.3. Операции реляционной алгебры........................................................................................ 117 Контрольные тесты...................................................................................................................... 122 Лекция 8. Использование формального аппарата для оптимизации схем отношений......... 131 8.1. Проблема выбора рациональных схем отношений........................................................... 131 8.2. Функциональные зависимости (зависимости между атрибутами отношения)............ 133 8.3. Декомпозиция схемы отношения........................................................................................ 135 8.4.Выбор рационального набора схем отношений путем нормализации........................... 135 8.5. Пример нормализации до 3НФ........................................................................................... 136 8.6. Целостная часть реляционной модели. Реализация условия целостности данных в современных СУБД................................................................................................................................................... 138 Контрольные тесты...................................................................................................................... 141 Лекция 9. Физические модели данных (внутренний уровень)................................................ 150 9.1. Структура памяти ЭВМ....................................................................................................... 151 9.2. Представление экземпляра логической записи................................................................. 151 9.3. Организация обмена между оперативной и внешней памятью..................................... 152 9.4. Структуры хранения данных во внешней памяти ЭВМ.................................................. 154 9.4.1. Последовательное размещение физических записей................................................ 154 9.4.2. Размещение физических записей в виде списковой структуры.............................. 156 9.4.3. Использование индексов (индексирование).............................................................. 157 9.4.4. В-дерево......................................................................................................................... 159 9.4.5. Размещение записей с использованием хэширования.............................................. 162 9.4.6. Комбинированные структуры хранения.................................................................... 164 Контрольные тесты...................................................................................................................... 165 Лекция 10. Структура современной СУБД на примере Microsoft SQL Server 2008.............. 174 10.1 Общая структура СУБД....................................................................................................... 174 10.2. Архитектура базы данных. Логический уровень............................................................ 175 10.3. Архитектура базы данных. Физический уровень........................................................... 177 Контрольные тесты...................................................................................................................... 185 Лекция 11. Программное обеспечение работы с современными базами данных................ 194 11.1. Основные задачи программного обеспечения баз данных............................................ 194 11.2. Проблемы создания и ведения реляционных баз данных.............................................. 195 11.3. Понятие языка SQL и его основные части...................................................................... 198 11.3.1. История возникновения и стандарты языка SQL.................................................... 198 11.3.2. Достоинства языка SQL............................................................................................. 199 11.3.2. Общая характеристика SQL....................................................................................... 200 Контрольные тесты...................................................................................................................... 203 Лекция 12. Основные операторы языка SQL. Интерактивный SQL..................................... 212 12.1. Общее представление об основных операторах языка SQL.......................................... 212 12.2 Интерактивный режим работы с SQL (интерактивный SQL)........................................ 213 12.3. Использование языка SQL для выбора информации из таблицы................................ 213 12.4. Использование SQL для выбора информации из нескольких таблиц.......................... 217 12.5. Использование SQL для вставки, редактирования и удаления данных в таблицах.. 218 12.5. Язык SQL и операции реляционной алгебры................................................................. 219 Контрольные тесты...................................................................................................................... 222 Лекция 13. Использование языка SQL в прикладных программах......................................... 231 13.1. Программный (встроенный) SQL..................................................................................... 231 13.2. Статический SQL................................................................................................................ 232 13.3. Динамический SQL............................................................................................................ 236 13.4. Интерфейсы программирования приложений (API). DB-Library, ODBC, OCI, JDBC 238 Контрольные тесты...................................................................................................................... 245 Лекция 14. Направления развития баз данных.......................................................................... 254 14.1. Объектно-ориентированный подход к организации баз данных.................................. 254 14.2. Распределенные базы данных........................................................................................... 260 14.3. Хранилища данных........................................................................................................... 263 Контрольные тесты...................................................................................................................... 267 Оглавление..................................................................................................................................... 276
[Ш1] [Ш2]Стедент и идентификатор о [Ш3]СТУДЕНТ [Ш4]ИСПРАВИТЬ [s5]Сделать как в3 лекции Что способствует осуществлению желаний? Стопроцентная, непоколебимая уверенность в своем... Что вызывает тренды на фондовых и товарных рынках Объяснение теории грузового поезда Первые 17 лет моих рыночных исследований сводились к попыткам вычислить, когда этот... Что делать, если нет взаимности? А теперь спустимся с небес на землю. Приземлились? Продолжаем разговор... Что будет с Землей, если ось ее сместится на 6666 км? Что будет с Землей? - задался я вопросом... Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:
|