
- •75. Назовите подходы по созданию бд (лоскутная, субд. Тпр)
- •Показатели различных подходов к автоматизации предприятий с использованием бд
- •76. Цель создания бд
- •77. Затраты, объем, качество, время создания бд (сравнение старых и новых технологий)
- •79. Кто отвечает за сохранность данных и как это делается?
- •80. Как в случае катастрофы можно восстановить работоспособную систему (аппаратное обеспечение, данные, операционную систему)?
- •81. Как часто следует сохранять данные? Важность регулярного резервного копирования
- •82. Когда происходит полное копирование?
- •83. Жизненный цикл бд
- •84. Документальные, фактографические, пространственные бд.
- •85. Объектно-ориентированные бд. Распределенные бд. Коммерческие бд.
- •86. Процессы обработки данных в бд. Ограничения целостности.
- •87. Технология оперативной обработки транзакций (oltp).
- •88. Информационные хранилища. (olap)
- •Принципы организации хранилища
- •89. Объекты, атрибуты, связи, первичный и вторичные ключи. Основные типы абстракции.
- •90. Нормализованные отношения. Первичные и вторичные ключи отношений. Моделирование связей в реляционной модели данных. Внешние ключи.
85. Объектно-ориентированные бд. Распределенные бд. Коммерческие бд.
Объектно-ориентированная база данных (ООБД) — база данных, в которой данные моделируются в виде объектов, их атрибутов, методов и классов.
Объектно-ориентированные базы данных обычно рекомендованы для тех случаев, когда требуется высокопроизводительная обработка данных, имеющих сложную структуру.
В манифесте ООБД[4] предлагаются обязательные характеристики, которым должна отвечать любая ООБД. Их выбор основан на 2 критериях: система должна быть объектно-ориентированной и представлять собой базу данных.
Обязательные характеристики
Поддержка сложных объектов. В системе должна быть предусмотрена возможность создания составных объектов за счет применения конструкторов составных объектов. Необходимо, чтобы конструкторы объектов были ортогональны, то есть любой конструктор можно было применять к любому объекту.
Поддержка индивидуальности объектов. Все объекты должны иметь уникальный идентификатор, который не зависит от значений их атрибутов.
Поддержка инкапсуляции. Корректная инкапсуляция достигается за счет того, что программисты обладают правом доступа только к спецификации интерфейса методов, а данные и реализация методов скрыты внутри объектов.
Поддержка типов и классов. Требуется, чтобы в ООБД поддерживалась хотя бы одна концепция различия между типами и классами. (Термин «тип» более соответствует понятию абстрактного типа данных. В языках программирования переменная объявляется с указанием ее типа. Компилятор может использовать эту информацию для проверки выполняемых с переменной операций на совместимость с ее типом, что позволяет гарантировать корректность программного обеспечения. С другой стороны класс является неким шаблоном для создания объектов и предоставляет методы, которые могут применяться к этим объектам. Таким образом, понятие «класс» в большей степени относится ко времени исполнения, чем ко времени компиляции.)
Поддержка наследования типов и классов от их предков. Подтип, или подкласс, должен наследовать атрибуты и методы от его супертипа, или суперкласса, соответственно.
Перегрузка в сочетании с полным связыванием. Методы должны применяться к объектам разных типов. Реализация метода должна зависеть от типа объектов, к которым данный метод применяется. Для обеспечения этой функциональности связывание имен методов в системе не должно выполняться до времени выполнения программы.
Вычислительная полнота. Язык манипулирования данными должен быть языком программирования общего назначения.
Набор типов данных должен быть расширяемым. Пользователь должен иметь средства создания новых типов данных на основе набора предопределенных системных типов. Более того, между способами использования системных и пользовательских типов данных не должно быть никаких различий.
Необязательные характеристики:
Множественное наследование
Проверка типов
Распределение
Проектные транзакции
Открытые характеристики:
Парадигмы программирования (процедурное, декларативное)
Система представления
Система типов
Однородность. Реализация — язык программирования — интерфейс.
Распределённые базы данных (РБД) — совокупность логически взаимосвязанных баз данных, распределённых вкомпьютерной сети.
РБД состоит из набора узлов, связанных коммуникационной сетью, в которой:
каждый узел — это полноценная СУБД сама по себе;
узлы взаимодействуют между собой таким образом, что пользователь любого из них может получить доступ к любым данным в сети так, как будто они находятся на его собственном узле.
Каждый узел сам по себе является системой базы данных. Любой пользователь может выполнить операции над данными на своём локальном узле точно так же, как если бы этот узел вовсе не входил в распределённую систему. Распределённую систему баз данных можно рассматривать как партнёрство между отдельными локальными СУБД на отдельных локальных узлах.
Фундаментальный принцип создания распределённых баз данных («правило 0»): Для пользователя распределённая система должна выглядеть так же, как нераспределённая система.
Фундаментальный принцип имеет следствием определённые дополнительные правила или цели. Таких целей всего двенадцать:
Локальная независимость. Узлы в распределённой системе должны быть независимы, или автономны. Локальная независимость означает, что все операции на узле контролируются этим узлом.
Отсутствие опоры на центральный узел. Локальная независимость предполагает, что все узлы в распределённой системе должны рассматриваться как равные. Поэтому не должно быть никаких обращений к «центральному» или «главному» узлу с целью получения некоторого централизованного сервиса.
Непрерывное функционирование. Распределённые системы должны предоставлять более высокую степень надёжности и доступности.
Независимость от расположения. Пользователи не должны знать, где именно данные хранятся физически и должны поступать так, как если бы все данные хранились на их собственном локальном узле.
Независимость от фрагментации. Система поддерживает независимость от фрагментации, если данная переменная-отношение может быть разделена на части или фрагменты при организации её физического хранения. В этом случае данные могут храниться в том месте, где они чаще всего используются, что позволяет достичь локализации большинства операций и уменьшения сетевого трафика.
Независимость от репликации. Система поддерживает репликацию данных, если данная хранимая переменная-отношение — или в общем случае данный фрагмент данной хранимой переменной-отношения — может быть представлена несколькими отдельными копиями или репликами, которые хранятся на нескольких отдельных узлах.
Обработка распределённых запросов. Суть в том, что для запроса может потребоваться обращение к нескольким узлам. В такой системе может быть много возможных способов пересылки данных, позволяющих выполнить рассматриваемый запрос.
Управление распределёнными транзакциями. Существует 2 главных аспекта управления транзакциями: управление восстановлением и управление параллельностью обработки. Что касается управления восстановлением, то чтобы обеспечить атомарность транзакции в распределённой среде, система должна гарантировать, что все множество относящихся к данной транзакции агентов (агент — процесс, который выполняется для данной транзакции на отдельном узле) или зафиксировало свои результаты, или выполнило откат. Что касается управления параллельностью, то оно в большинстве распределённых систем базируется на механизме блокирования, точно так, как и в нераспределённых системах.
Аппаратная независимость. Желательно иметь возможность запускать одну и ту же СУБД на различных аппаратных платформах и, более того, добиться, чтобы различные машины участвовали в работе распределённой системы как равноправные партнёры.
Независимость от операционной системы. Возможность функционирования СУБД под различными операционными системами.
Независимость от сети. Возможность поддерживать много принципиально различных узлов, отличающихся оборудованием и операционными системами, а также ряд типов различных коммуникационных сетей.
Независимость от типа СУБД. Необходимо, чтобы экземпляры СУБД на различных узлах все вместе поддерживали один и тот же интерфейс, и совсем необязательно, чтобы это были копии одной и той же версии СУБД.
Коммерческие базы данных представляют собой базы данных, специально предназначенные для продажи пользователям. Эти БД могут передаваться пользователям на машинных носителях либо к ним может обеспечиваться доступ в режиме он-лайн.
Кроме того, могут предоставляться печатные аналоги базы данных. В качестве машинных носителей используются как магнитные носители, так и оптические диски. Выбор способа предоставления информации определяется многими факторами:
1) характером информации и особенно степенью ее изменчивости (летучести);
2) характером использования информации в организации-потребителе;
3) состоянием средств телекоммуникации в регионе, а также наличием технических средств у потребителей;
4) стоимостными параметрами (стоимость оплаты телефонных услуг или иных услуг по передаче информации, стоимость технических и программных средств и др.);
5) числом пользователей и интенсивностью их обращений к БД.
6) традициями в форме использования информации.
Развитие технических средств обработки данных и средств связи оказывает большое влияние на структуру индустрии информации. Так, с созданием национальных и глобальных сетей передачи данных (середина 70-х годов) ведущим видом информационных услуг в мире стал диалоговый поиск информации в удаленных от пользователя базах данных. Наблюдается как абсолютный рост числа он-лайновых баз данных, так и увеличение их доли в общем числе коммерческих баз данных. В России из-за недостаточного количества и качества каналов связи число он-лайновых баз данных невелико. Однако следует подчеркнуть, что если интенсивность изменения информации велика, а для пользователя важно иметь актуальную и полную информацию, то речь может идти только об он-лайновом доступе к БД.
Влияние характера использования информации в организации-потребителе на способ получения информации можно проиллюстрировать на следующем примере. Пусть имеется база данных о предприятиях и организациях. Если у потребителя эпизодически появляется потребность в отборе небольшого объема информации из этой базы данных, то лучше получать данные в диалоговом режиме. Если потребность возникает часто, размер выборки большой, а полученная информация используется в дальнейшей обработке (например, для распечатки адресов в письмах), то имеет смысл приобрести базу данных на машинном носителе.
Совокупная стоимость владения коммерческой СУБД включает стоимость:
самой СУБД, состоящая из первоначального платежа за приобретение лицензий и ежегодных платежей за поддержку от производителя;
сопровождения СУБД, которая определяется заработной платой сотрудников, ответственных за обслуживание и администрирование БД;
платформы для разворачивания СУБД — серверного оборудования и ОС (эта стоимость также складывается из первоначального платежа за приобретение оборудования и лицензий на ОС, а также ежегодных платежей за поддержку от производителей).