Современные информационные технологии


Download 278.21 Kb.
Pdf ko'rish
bet7/10
Sana10.11.2023
Hajmi278.21 Kb.
#1761221
TuriКурсовая
1   2   3   4   5   6   7   8   9   10
Bog'liq
современные

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 


11 
2.
СОВРЕМЕННЫЕ ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ 
 

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


12 
Каждый объект класса имеет идентификатор объекта, используемый для 
однозначного определения данного объекта в системе. Идентификатор не зависит от 
состояния объекта и назначается системой. 
В объектной модели хранение ссылок на другие объекты выглядит достаточно 
удобным, но здесь могут возникать другие проблемы, связанные с ссылочной 
целостностью. Например, когда объект удаляется, другие объекты могут иметь 
ссылку на его идентификатор. Потому система управления объектно-
ориентированными базами данных (СУООБД) должна представлять собой не только 
систему, которая ориентируется на среду разработки ПО, но и систему управления 
данными. СУООБД присущи многие черты, характерные для реляционных СУБД, 
такие как индексы, транзакции, механизмы восстановления данных, выявление и 
разрешение дедлоков. 
Основное преимущество СУООБД в том, что доступ к объектам базы данных 
организован достаточно прозрачно и взаимодействие с объектом базы данных не 
отличается от взаимодействия с объектом в памяти. В этом состоит основное 
преимущество перед системой управления реляционными базами данных (СУРБД) – 
нет необходимости использовать язык запросов или CLI интерфейсы, такие 
как ODBC или ADO. 
В реляционной модели существуют такие концепции, которые похожи на 
концепции объектно-ориентированной модели, за счет чего таблица в реляционной 
базе данных может ставиться в аналогию классу, столбец в картеже подобен 
атрибуту класса, за исключением того, что столбец может содержать только 
простые типы данных, а атрибут класса может содержать данные любого типа. В 
СУООБД классы имеют методы, обеспечивающие функциональность объектов, в 
реляционных базах данных функциональность никак не связана с данными. 
Хранимые процедуры хоть и дают возможность привязать поведение системы к базе 
данных, но все же они достаточно далеки от объектно-ориентированного подхода. 
Можно выделить следующие преимущества и недостатки при использовании 
связки СУООБД или СУРБД с объектно-ориентированным программированием. 


13 
Преимущества: 
− 
Объекты в СУООБД могут хранить произвольное количество простых 
типов и других объектов. Поэтому можно организовать модель данных, как 
большой класс, который содержит подмножество меньших классов, содержащих в 
свою очередь другие подмножества классов и так далее. Использование 
реляционной модели приведет к созданию многочисленных таблиц, при работе с 
которыми придется постоянно организовывать объединения таблиц. Объект 
является наилучшей моделью отображения реального мира, нежели реляционные 
картежи. Особенно это касается сложных и многогранных объектов. СУООБД 
больше подходит для обработки сложно взаимосвязанных данных и, в зависимости 
от сложности данных, может превосходить СУРБД по производительности в 
десятки - тысячи раз. 
− 
Данные в реальном мире обычно имеют иерархические характеристики. 
Известный пример с Сотрудниками, используемый в большинстве СУРБД, гораздо 
проще описать в СУООБД. Чтобы определить для сотрудника, является ли он 
менеджером или нет, в СУРБД обычно вводят дополнительное поле в таблице 
Сотрудников, которое ссылается на идентификатор сотрудника-менеджера или 
создают отдельную таблицу для определения взаимоотношения между 
Сотрудниками. В СУООБД класс Сотрудник просто является родительским классом 
для класса Менеджера. 
− 
Для доступа к данным из СУООБД не обязателен отдельный язык 
запросов, так как доступ происходит непосредственно к объектам. Но возможность 
использовать запросы существует. 
− 
В типичном приложении, которое построено на использовании 
объектно-ориентированного языка и СУРБД, значительное количество времени 
обычно тратится на взаимосвязывание таблиц и объектов. Также существуют 
различные проблемы, связанные с неполной совместимостью типов данных. При 
использовании СУООБД данная проблема полностью отпадает. 


14 
Недостатки: 
− 
В СУРБД изменение схемы данных в результате создания, изменения 
или удаления таблиц обычно не зависит от приложения. В приложениях, которые 
работают с СУООБД, изменение схемы класса обычно означает, что изменения 
должны быть сделаны и в других классах приложения, взаимодействующих с 
экземплярами данного класса. Это ведет к необходимости перекомпиляции всей 
системы. 
− 
СУООБД обычно привязана к отдельному языку с помощью отдельного 
АПИ и данные доступны только через этот АПИ. СУРБД в этом плане имеет 
большие возможности благодаря общему языку запросов. 
− 
В СУРБД, реляционная природа данных позволяет конструировать ad-
hoc 
запросы, где можно объединять различные таблицы. В СУООБД невозможно 
дублировать семантику соединения двух таблиц соединением двух классов, поэтому 
в данном случае СУООБД уступает СУРБД в гибкости. Запросы, которые могут 
исполняться над данными в СУООБД, в большей мере зависят от дизайна системы. 
Выгоды от использования СУООБД при разработке приложения с 
использованием 
объектно-ориентированного 
программирования 
очевидны- 
экономия времени, потраченного на разработку. Однако дизайн классов в 
СУООБД может накладывать свои ограничения на методы работы с 
данными.
Применение СУООБД во многом ограничено тем, что отсутствует общая 
модель данных. Даже при наличии достаточно большого количества продуктов, 
которые реализуют объектно-ориентированную модель данных, остается много 
нерешенных вопросов. Направление СУООБД является перспективным и 
прогрессивным. Следует задуматься над формализацией объектно-ориентированной 
модели, поскольку ее применение способно принести пользу в тех областях, где 
реляционный подход будет являться не оптимальным решением. 


15 

Download 278.21 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling