Содержание


1. Объектно-ориентированные СУБД................................................................................. 2

2. Появление Internet, intranet, языка программирования Java......................................... 4

3. Внимание крупнейших софтверных компаний к объектно-ориентированным

    базам данных...................................................................................................................... 5

4. Используемая литература.................................................................................................. 6

 

1. Объектно-ориентированные СУБД

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

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

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

Почему же эти ожидания не оправдались в полной мере, и почему теперь наблюдается некоторый всплеск активности на рынке ООСУБД? Перечислим несколько основных причин негативного характера:

·         до последнего времени отсутствовал объектно-ориентированный язык программирования, который был бы "настоящим", т.е. строго соответствующим принципам объектно-ориентированного подхода и  был бы достаточно распространенным;

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

·         среди специалистов в области объектно-ориентированных языков программирования отсутствует общепринятое понятие объектной модели, причем все попытки выработать компромиссную эталонную модель до сих пор оканчивались неудачно ;

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

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

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

Другими словами, до последнего времени ООСУБД на рынке относились к области риска. С одной стороны, имеется много примеров удачного использования этих продуктов в реализованных приложениях. С другой стороны, сектор рынка ООСУБД очень узок и пока не может приносить больших доходов. Как следствие, сравнительно стабильно существует ряд продуктов ООСУБД. Например, на сегодня достаточно устойчивы следующие продукты: O2, Cashe, ObjectStore, Objectivity/DB, POET, VERSANT, GemStone/S и т.д. Все эти компании невелики, и годовой бюджет каждой из них находится в пределах десятков миллионов долларов. Крупные софтверные компании, такие как Oracle, Informix, Sybase, Microsoft и IBM, не собираются развивать свою линию продуктов ООСУБД. Вместо этого они предлагают свои подходы к расширению реляционных баз данных объектными свойствами.

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

2. Появление Internet, intranet, языка программирования Java.

С точки зрения теории это почти ничего не значит. Internet - это перенос в практическую сферу идей и принципов ОС UNIX.

С точки зрения практики это значит очень много. Internet - это технология, перевернувшая человеческие представления о распространении информации, бизнесе на основе продажи информации, стремительно переходящая от предоставления обществу множества текстовых документов к графическим образам (необязательно двумерным), аудио- и видео-данным [5].

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

Язык Java вышел на мировой рынок, главным образом, в связи с потребностями сообщества Internet. Возникший вместе с Web язык HTML является языком гипертекстовой разметки документов, это не язык программирования. Созданный в компании Sun Microsystems интерпретируемый, безопасный, объектно-ориентированный язык Java быстро завоевал распространение именно в среде Web-разработчиков. Не обладая какими-либо принципиально новыми возможностями, Java прежде всего дает возможность создания мобильных в Internet объектов, методы которых могут выполняться в клиентских браузерах независимо от особенностей компьютера клиента (поскольку язык интерпретируемый). Естественно, что появление на мировой арене широко распространенного объектно-ориентированного языка вновь обострило интерес к ООСУБД и к возможностям Java быть языковой основой таких систем баз данных.

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

3. Внимание крупнейших софтверных компаний к объектно-ориентированным базам данных

Это произошло немногим более двух лет тому назад. Тогда Чарльз Ванг, президент и основатель CA принял решение о стратегическом партнерстве с японской компанией Fujitsu и о фактическом приобретении ее продукта ООСУБД Jasmine. Но в исходном продукте не было ничего принципиально нового, но новым было то, что ООСУБД заинтересовалась одна из лидирующих софтверных компаний. Это означало новый уровень доводки продукта до промышленного образца, новый уровень рекламы и маркетинга [5].

На самом деле, сегодня в Jasmine можно увидеть два новых для ООСУБД момента, которые оба связаны с масштабностью CA. Во-первых, используя свой практически неограниченный инженерный потенциал, CA смогла довести Jasmine до уровня коммерческого продукта, обеспечив необходимый набор средств разработки (но не проектирования объектно-ориентированных баз данных!).

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

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

4. Используемая литература

1. К.Дж.Дейт, Хью Дарвен. Основы будущих систем баз данных. Третий манифест. Перевод Кузнецов С.Д., Кузнецова Т.А. Под ред. Кузнецова С.Д. Издательство Янус-К, 2004 г. 656 с.

2. Крёнке Д. Теория и практика построения баз данных, 8-е изд. Издательство «Питер», 2003 г. 800 с.

3. Когаловский М.Р. Энциклопедия технологий баз данных. Издательство М.: Финансы и статистика, 2002 г. 800 с.

4. К.Дж.Дейт, Введение в системы баз данных (седьмое издание). Издательство Вильямс, 2001 г. 1072 с.

5. Макарова Н.В. Информатика. М.: Финансы и статистика, 2001. 860 с.