Главная страница
Навигация по странице:

  • Сущности и атрибуты Основные компоненты диаграммы ERwin

  • ERwin

  • (Entity Relationship Diagram (ERD)) ;* модель данных, основанная на ключах (Key Based model (KB)); * полная атрибутивная модель (Fully Attributed model (FA)).

  • Модель данных, основанная на ключах

  • Полная Атрибутивная модель

  • Основные этапы разработки базы данных с использованием AllFusion ERwin Data Modeler. Концептуальное (инфологическое) проектирование

  • Логическое (даталогическое) проектирование

  • Физическое проектирование

  • 5 Назначение AllFusion Data Model Validator. Основные типы обнаруживаемых ошибок (дать примеры ошибок).

  • 6. Концепция и назначение хранилища данных, типовая обобщенная схема. Основные отличия от OLTP-систем

  • 8. Реализация хранилища данных по схеме «звезда». Достоинства и недостатки

  • 9 Реализация хранилища данных по схеме «снежинка». Достоинства и недостатки.

  • 10 Концепция и характеристика распределенных баз данных. Правила Дейта.

  • 11 Неоднородные базы данных, проблемы эксплуатации неоднородных баз данных.

  • 12 Распределенные базы данных: способы распределения данных между узлами.

  • Каталог распред системы

  • с прошлых лет. Использование AllFusion erwin Data Modeler при проектировании баз данных (основные возможности, элементы модели, уровни представления)


    Скачать 314 Kb.
    НазваниеИспользование AllFusion erwin Data Modeler при проектировании баз данных (основные возможности, элементы модели, уровни представления)
    Анкорс прошлых лет.doc
    Дата20.03.2019
    Размер314 Kb.
    Формат файлаdoc
    Имя файлас прошлых лет.doc
    ТипДокументы
    #26147

    1. Использование AllFusion ERwin Data Modeler при проектировании баз данных (основные возможности, элементы модели, уровни представления)

    Возможности:

    Позволяет создать 2 вида модели: физическая и логическая. Логическая представляет собой абстракт взгляд на данные. Данные представлены как в реальном мире. Нет привязки к СУБД, предназначена для обсуждения и экспертизы. Физическая модель ориентирована на целевую СУБД и представляет собой отображение системного каталога (таблицы, типы данных, ограничения, индексы).

    ERwin позволяет проводить процессы прямого и обратного проектирования БД. Это означает, что по модели данных можно сгенерировать схему БД или автоматически создать модель данных на основе информации системного каталога


    Логическая модель


    Физич модель
    скругленный прямоугольник 29 скругленный прямоугольник 32 скругленный прямоугольник 31 скругленный прямоугольник 30 прямая со стрелкой 33 прямая со стрелкой 34 прямая со стрелкой 35


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

    Различают 2 вида связей: идентифицирующая (между независимой сущностью и зависящей от нее сущностью) и неид-щая.

    Ппрямая со стрелкой 26ри ид-й связи внеш ключ мигрирует в первичный. При неид связи ключ мигрирует в неключевой атрибут. Связи м.б. 1 ко многим и многие ко многим. Для указания наследования использ связь категоризаций

    овал 24овал 25прямая со стрелкой 27


    Спрямая со стрелкой 18прямая со стрелкой 19прямая со стрелкой 20прямая со стрелкой 23прямая со стрелкой 21прямая со стрелкой 22прямая со стрелкой 38лева – полн, справа неполная.
    AllFusion Data Model Validator позволяет автоматич анализировать структ БД с целью выяснения ошибок и недочетов, а так же внесения исправлений.

    Исходн мб:

    1.модель ERWIN; 2.БД; 3.Скрипт проекта Oracle
    Сущности и атрибуты

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

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

    (родительский конец связи) и зависимой (дочерний конец связи) сущностями. Когда рисуется идентифицирующая связь. ERwin автоматически преобразует дочернюю сущность в зависимую.

    Экземпляр зависимой сущности определяется только через отношение к родительской сущности.

    При установлении идентифицирующей связи атрибуты первичного ключа родительской сущности автоматически переносятся в состав первичного ключа дочерней сущности. Эта операция

    дополнения атрибутов дочерней сущности при создании связи называется миграцией атрибутов. В дочерней сущности новые атрибуты помечаются как внешний ключ – (FK).



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



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


    Элементы модели:

    На логическом уровне:

    • Сущность

    • Категория

    • Связи: идентифицирующая, неидентифицирующая, многие-ко-многим.

    На физическом уровне:

    • Сущность

    • Представление

    • Связи: идентифицирующая, неидентифицирующая, связь представлений.

    Моделирование можно производить на разных уровнях.

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

    Уровни логической модели

    Различают три уровня логической модели, отличающихся по глубине представления информации о данных:

    * диаграмма сущность-связь (Entity Relationship Diagram (ERD));

    * модель данных, основанная на ключах (Key Based model (KB));

    * полная атрибутивная модель (Fully Attributed model (FA)).

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

    Модель данных, основанная на ключах - более подробное представление данных. Она включает описание всех сущностей и первичных ключей и предназначена для представления структуры данных и ключей, которые соответствуют предметной области.

    Полная Атрибутивная модель – наиболее детальное представление структуры данных: представляет данные в третьей нормальной форме и включает все сущности, атрибуты и связи.



    1. Основные этапы разработки базы данных с использованием AllFusion ERwin Data Modeler.


    Концептуальное (инфологическое) проектирование

    Концептуальное (инфологическое) проектирование — построение информационной модели наиболее высокого уровня абстракции. Такая модель создаётся без ориентации на какую-либо конкретную СУБД и модель данных.

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

    Чаще всего концептуальная модель базы данных включает в себя:

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

    По сути – тупо словесное описание предметной области.
    Логическое (даталогическое) проектирование

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

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

    • Создание сущностей;

    • Задание атрибутов сущностей

    • Создание первичных и внешних ключей

    • Задание отношений, иерархий обобщений




    Физическое проектирование

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


    1. 5 Назначение AllFusion Data Model Validator. Основные типы обнаруживаемых ошибок (дать примеры ошибок).

    AllFusion Data Model Validator позволяет автоматич анализировать структ БД с целью выяснения ошибок и недочетов, а так же внесения исправлений.

    Инструмент для проверки структуры баз данных и моделей, создаваемых в ERwin Data Modeler. Продукт дополняет функциональность ERwin Data Modeler, автоматизируя трудоемкую задачу поиска и исправления ошибок.
    - возможность прямой и обратной проверки структур: при помощи продукта можно оптимизировать структуры существующих баз данных или проверять на корректность созданные в AllFusion Data Modeler модели 
    - автоматизирует сложные рутинные функции проверки на ошибки 
    - встроенная система подсказок предлагает варианты исправления выявленных ошибок и методы повышения эффективности баз данных
    Зачастую инструмент автоматически не исправляет ошибки, а только выдает предупреждение о них. Типовые ошибки:

    Ошибки и недостатки мод-ния колонок

    1.противоречивое определение групп колонок (в таблице оплата1 – number, оплата2 – number, оплата3 – varchar(20))

    2.неправильное или недостаточное моделирование колонок (в одной табл номер города varchar(20), в другой number)

    3.таблица не имеет колонок ()

    4.длина поля больше, чем позволяет СУБД

    5.противоречивость значений по умолчанию

    6.колонки представляют собой одни и те же данные, но имеют разный тип данных

    7.наимен колон совпадает с зарезервированными словами SQL

    8. таблица с неуникальными именами колонок

    Ошибки,связанные с моделир индексов и ограничений

    1.атрибуты потенциальных ключей допускают неопределенное значение

    2.аномалии в определении индексов(*индекс функционально эквивалентен первичному ключу,*индекс содержит супернабор первичного ключа, *индекс содерж супернабор другого уник индекса)

    3.неверно определен альтернативный ключ

    4.различные определения ограничения CHECK

    5.таблица не имеет уникальных ключей

    6.табл не имеет кластеризованных индексов

    7.первичн ключ имеет колонку/атрибут с типом «действительное число»

    8.ненужные индексы (* индекс, построенный на атрибуте, принимающем одно значение, * индекс, атрибуты которого целиком включены в другой индекс или первичный ключ)

    9. ненужный внешний ключ

    10. отсутствие индексов

    Ошибки связей

    1.некорректная рекурсивная иерархическая связь

    2.неопределенные связи

    3.ненужый внешний ключ

    4.бесконечные циклы

    5.взаимно-пересекающ связи

    6.таблица не имеет связей

    Н.заказа

    Н.сотрудн
    Заказы клиенты


    Н.клиента

    Н.клиента
    прямая со стрелкой 12 овал 13
    ФИО

    Подчинен


    прямая со стрелкой 8 прямая со стрелкой 9


    овал 5прямая со стрелкой 6прямая со стрелкой 7Not null

    прямая со стрелкой 1прямая со стрелкой 2прямая со стрелкой 3прямая со стрелкой 4


    6. Концепция и назначение хранилища данных, типовая обобщенная схема. Основные отличия от OLTP-систем

    Хранилище данных – предметно-ориентированный, интегрированный, привязанный ко времени и неизменяемый набор данных, предназначенный для поддержки принятия решений.

    Предполагают, что хранилище данных содержит сведения, поступающие из различных источников, а также накапливает и свои данные.

    Свойства хранилищ данных:

    1. Предметная ориентированность обозначает, что хр-ще данных организуется вокруг основных субъектов, а не областей деят-ти

    2. Интегрированность заключается в том, что оперативные прикладные данные поступают в хр-ще из разных источников, кот могут иметь несоглас-е предст-ние одних и тех же данных, данные могут иметь разный формат.

    3. Привязка ко времени. Данные в хр-ще точны и действительны, только если они привязаны к интервалу времени.

    4. Неизменяемость – данные не обновляются в оперативном режиме, а лишь пополняются за счет инф-ции из систем оперативной обработки

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


    OLTP

    Хранилище данных

    1.Содержит текущие данные
    2.Данные являются динамическими
    3.хранит подробные сведения
    4.Характерен повторяющийся способ обработки данных

    5.Высокая интенсивность обработки транзакций
    6.Предсказуемый способ использования данных
    7.Предназначен для поддержки принятия повседневных решений
    8.Обслуживает большое количество работников исполняющего звена

    1.Содержит исторические данные
    2.Данные являются статическими
    3.Хранят подробные и частично

    обобщенные сведения
    4.Нерегламентир, неструктурированный, эвристический способ обработки данных
    5.Средняя или низкая интенсивность обработки транзакций
    6.Непредсказуемый способ использования данных
    7.Поддержка принятия стратегических решений

    8.Обслуживает малое кол-во работников руководящего звена


    Основные проблемы, связанные с хранилищем данных:

    1. Недооценка ресурсов, необходимая для хранения данных;

    2. Скрытые проблемы источников данных – связана с источником данных и заключается в том, что некоторые поля остаются не заполнены (пропущены в процессе заполнения);

    3. Отсутствие требуемых данных в имеющихся архивах;

    4. Повышения требований конечных пользователей;

    5. Унификация данных (при создании интегрированного представления данных разработчик может сделать акцент на подчёркивании сходств, а не отличий);

    6. Высокие требования к ресурсам (требуется большой объём памяти);

    7. Владение данными – создание хранилища данных может изменить статус конечных пользователей в отношении прав доступа к данным;

    8. Сложность сопровождения;

    9. Долговременный характер проекта (для создания проекта может потребоваться большой срок)



    7. Основные способы хранения данных в OLAP-системах: MOLAP, ROLAP, HOLAP.

    MOLAP (Multidimensional OLAP) –— исходные и агрегатные данные хранятся в многомерной базе данных. Хранение данных в многомерных структурах позволяет манипулировать данными как многомерным массивом, благодаря чему скорость вычисления агрегатных значений одинакова для любого из измерений. Однако в этом случае многомерная база данных оказывается избыточной, так как многомерные данные полностью содержат исходные реляционные данные.

    Преимущества:

    1) высока производительность.

    2) структура и интерфейс наилучший образом соответствуют анатомии запросов.

    3) в многомерной СУБД легко включать разнообразные встроенные функции.

    Недостатки:

    1) могут работать только под своими СУБД и явл дорогими.

    2) по сравнению с реляц неэффективно использует память.

    3) имеет менее эффективный механизм обработки транзакций.

    4) отсутствует единый стандарт на интерфейс, языки описания и манипуляции данными.

    5) не поддерживают репликацию данных
    ROLAP (Relational OLAP) — исходные данные остаются в той же реляционной базе данных, где они изначально и находились. Агрегатные же данные помещают в специально созданные для их хранения служебные таблицы в той же базе данных.

    Преимущества:

    1) реляц СУБД имеют опыт раб с большими БД, развиты ср-ва администрирования.

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

    3) обладает более высоким уровнем защиты данных и развитой системой привилегий пользователей.

    4) производительность этих систем сравнима с многомерными, если тщательно разработать структуру.

    Недостатки:

    1) ограничены возможно с точки зрения проведения анализа.

    2) производительность ниже
    HOLAP (Hybrid OLAP) — исходные данные остаются в той же реляционной базе данных, где они изначально находились, а агрегатные данные хранятся в многомерной базе данных.

    8. Реализация хранилища данных по схеме «звезда». Достоинства и недостатки



    1.Таблица фактов, находится в сильно денормированной форме. Содержит суммированные данные, с помощью которых проводится анализ

    2 Таблицы измерений находятся в денормированной форме и содержат описательную информацию.

    Это позволяет пользователю быстро переход от таблицы фактов к доп инф. Таблица фактов и таблица измерений связаны идентиф связями.


    Преимущества:

    1) благодаря денормализованной таблице измерений упрощается восприятие структуры данных и формул запросов.

    2) ускоряется время выполнения запросов за счет уменьшения операция соединения.

    3) в нек. СУБД уменьшается время выборки за счет сокращения времени выполнения запросов.

    Недостатки:

    1) высокая избыточность данных -> дополнительные объемы памяти.

    2) если агрегат хранится совместно с исходными данными, необходимо использовать дополнительный параметр - уровни иерархии

    9 Реализация хранилища данных по схеме «снежинка». Достоинства и недостатки.


    таблица фактов

    тов

    измер. 1

    измер. 3
    прямая соединительная линия 70 прямая соединительная линия 68 прямоугольник 71 прямоугольник 72 прямоугольник 73 прямая соединительная линия 74 прямая соединительная линия 75 прямая соединительная линия 76


    *

    1

    прямая соединительная линия 65


    *


    измер. 2
    1

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

    Достоинства:

    1) Экономит ресурсы памяти за счет нормализации таблицы измерений.

    2) Т.к. табл нормализована, быстро выполняются запросы, связанные со структурой значений измерений.

    Недостаток: большое время выполнения запросов, связанных с аналитической обработкой.

    10 Концепция и характеристика распределенных баз данных. Правила Дейта.

    Развитие вычислительных систем способствовало децентрализации БД. В этом случае нужно доставить данные к тому месту, где они наиболее часто исп-ся и дать доступ ко всем данным.

    Распределенные БД – это набор логически связанных между собой совокупностей данных (и их описаний), которые физически распределены в некоторой комп. сети.

    овал 14

    Узел

    Узел

    Узел
    прямая соединительная линия 18 прямая соединительная линия 19 прямая соединительная линия 20
    Клиент

    Клиент

    Клиент

    Клиент

    Клиент

    Клиент

    Клиент
    прямая соединительная линия 28 прямая соединительная линия 29 прямая соединительная линия 30 прямая соединительная линия 31 прямая соединительная линия 32 прямая соединительная линия 33 прямая соединительная линия 34 цилиндр 35 цилиндр 36 прямая соединительная линия 37 прямая соединительная линия 38

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

    Распр СУБД – программный комплекс, предназначенный для управления распр-й БД и обеспечения прозрачного доступа пользователя к распределенной информации.

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

    Правила Дейта:

    1. Локальная независимость. Узлы в распределённой системе должны быть независимы, или автономны. Локальная независимость означает, что все операции на узле контролируются этим узлом.

    2. Отсутствие опоры на центральный узел. Локальная независимость предполагает, что все узлы в распределённой системе должны рассматриваться как равные. Поэтому не должно быть никаких обращений к «центральному» или «главному» узлу с целью получения некоторого централизованного сервиса.

    3. Непрерывное функционирование. Распределённые системы должны предоставлять более высокую степень надёжности и доступности.

    4. Независимость от расположения. Пользователи не должны знать, где именно данные хранятся физически и должны поступать так, как если бы все данные хранились на их собственном локальном узле.

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

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

    7. Обработка распределённых запросов. Суть в том, что для запроса может потребоваться обращение к нескольким узлам. В такой системе может быть много возможных способов пересылки данных, позволяющих выполнить рассматриваемый запрос.

    8. Управление распределёнными транзакциями. Существует 2 главных аспекта управления транзакциями: управление восстановлением и управление параллельностью обработки. Что касается управления восстановлением, то чтобы обеспечить атомарность транзакции в распределённой среде, система должна гарантировать, что все множество относящихся к данной транзакции агентов (агент — процесс, который выполняется для данной транзакции на отдельном узле) или зафиксировало свои результаты, или выполнило откат. Что касается управления параллельностью, то оно в большинстве распределённых систем базируется на механизме блокирования, точно так, как и в нераспределённых системах.

    9. Аппаратная независимость. Желательно иметь возможность запускать одну и ту же СУБД на различных аппаратных платформах и, более того, добиться, чтобы различные машины участвовали в работе распределённой системы как равноправные партнёры.

    10. Независимость от ОС. Возможность функционирования СУБД под различными операционными системами.

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

    12. Независимость от типа СУБД. Необходимо, чтобы экземпляры СУБД на различных узлах все вместе поддерживали один и тот же интерфейс, и совсем необязательно, чтобы это были копии одной и той же версии СУБД.

    11 Неоднородные базы данных, проблемы эксплуатации неоднородных баз данных.

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

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

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

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

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


    12 Распределенные базы данных: способы распределения данных между узлами.

    РБД состоит из набора узлов, связанных коммуникационной сетью, в которой:

    • каждый узел — это полноценная СУБД сама по себе;

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


    Распределённую систему баз данных можно рассматривать как партнёрство между отдельными локальными СУБД на отдельных локальных узлах.
    Каталог распред системы:

    1.Централизованный катал (весь каталог хранится в одном месте в центр узле)

    2.Полноценный репликационный каталог(на каждом узле хранится полный катал)

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

    4.Комбинир 1 и 3 (на одном узле хранится полный , на другом свой собственный)

    Распределение осуществл с помощью фрагментации. Отношения могут быть фрагментированны на вертикальные и горизонтальные разделы. При горизонтальной фрагментации отношение делается с помощью операции селекции или предиката фрагм. При верт - с помощью отношения проекции.

    За счет фрагментации данные можно хранить там, где они чаще используются , что позвол снизить время на передачу данных и

    уменьшить размнер отношений, тем самым повысив скорость выполн запроса.

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

    1.Синхронная

    Самый высокий уровень надежности

    Недостат: дополнительная нагрузка при выполнении транзакции, меняющей данные. Проблемы, связанные с доступностью копий.

    2.Асинхр – Изменение данных сохраняется только на сервере, где выполняется транзакция. Сервер заботится о передаче данных всем остальным серверам. Обновление спустя некот время. Существует момент времени, когда репликации не идентичны.

    3.Репликация по расписанию: В периоды между реплик данные могут расходиться.

    13 Механизм выполнения транзакций в распределенных базах данных.



    Для обработки распределенных транзакций в современных СУБД предусмотрен так называемый протокол двухфазной фиксации транзакций (two-phase commit). Т.е. фиксация распределенной транзакции выполняется в две фазы.
    Фаза 1 начинается, когда при обработке транзакции встретился оператор COMMIT. Сервер распределенной БД (или компонент СУБД, отвечающий за обработку распределенных транзакций) направляет уведомление подготовиться к фиксации всем серверам локальных БД, выполняющим распределенную транзакцию. Если все серверы приготовились к фиксации (то есть откликнулись на уведомление, и их отклик был получен), сервер распределенной БД принимает решение о фиксации. Серверы локальных БД остаются в состоянии готовности и ожидают от него команды зафиксировать. Если хотя бы один из серверов не откликнулся на уведомление в силу каких-либо причин (аппаратная или программная ошибка), то сервер распределенной БД откатывает локальные транзакции на всех узлах, включая даже те, которые подготовились к фиксации и оповестили его об этом.
    Фаза 2 - сервер распределенной БД направляет команду зафиксировать всем узлам, затронутым транзакцией, и гарантирует, что транзакции на них будут зафиксированы. Если связь с локальной базой данных потеряна в интервал времени между моментом, когда сервер распределенной БД принимает решение о фиксации транзакции, и моментом, когда сервер локальной БД подчиняется его команде, то сервер распределенной БД продолжает попытки завершить транзакцию, пока связь не будет восстановлена.
    Подготовка к транзакции заключается в блокировке объектов.

    В случае отката транзакции, откат производится на каждом сервере на основе журнала транзакций.

    Обнаружение тупиков осуществляется на каждом узле графа ожидания (двудольный граф, вершины – транзакции и объекты,). Петля – тупик. Если найдена петля, то производится откат той транзакции на которую нужно больше ресурсов.

    Правила обработки транзакций

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

    2. Если две транзакции, A и B, выполняются параллельно, то СУБД полагает, что результат будет такой же, как если бы:

    - транзакция A выполнялась первой, за ней была бы выполнена транзакция B;

    - транзакция B выполнялась бы первой, за ней была бы выполнена транзакция A.





    написать администратору сайта