База данных объектов

редактировать
Система управления базами данных Пример объектно-ориентированного модель

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

Объектные базы данных рассматриваются с начала 1980-х.

Содержание

  • 1 Обзор
  • 2 История
  • 3 Временная шкала
  • 4 Внедрение объектных баз данных
  • 5 Технические характеристики
  • 6 Стандарты
  • 7 Сравнение с РСУБД
  • 8 См. Также
  • 9 Ссылки
  • 10 Внешние ссылки

Обзор

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

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

Некоторые объектно-ориентированные базы данных разработаны для хорошей работы с объектно-ориентированными языками программирования, такими как Delphi, Ruby, Python, JavaScript, Perl, Java, C#, Visual Basic.NET, C ++, Objective-C и Smalltalk ; у других, таких как JADE, есть свои собственные языки программирования. OODBMS используют ту же модель, что и объектно-ориентированные языки программирования.

История

Системы управления объектными базами данных выросли из исследований в период с начала до середины 1970-х годов и получили встроенную поддержку управления базами данных для объектов с графической структурой. Термин «объектно-ориентированная система баз данных» впервые появился примерно в 1985 году. Известные исследовательские проекты включали Encore-Ob / Server (Университет Брауна ), EXODUS (Университет Висконсина-Мэдисона ), IRIS (Hewlett-Packard), ODE (Bell Labs ), ORION (Microelectronics and Computer Technology Corporation или MCC), Vodak (GMD-IPSI) и Zeitgeist (Texas Instruments). У проекта ORION было опубликовано больше статей, чем у любого другого проекта. Вон Ким из MCC собрал лучшие из этих статей в книгу, опубликованную The MIT Press.

Ранние коммерческие продукты включали Gemstone (Servio Logic, название изменено на GemStone Systems), Gbase (Graphael) и Vbase (Ontologic). Дополнительные коммерческие продукты появились на рынке в конце 1980-х - середине 1990-х годов. К ним относятся ITASCA (Itasca Systems), Jasmine (Fujitsu, продается Computer Associates), Matisse (Matisse Software), Objectivity / DB (Objectivity, Inc.), ObjectStore (Progress Software, приобретенная у eXcelon, которая изначально была Object Design, Incorporated ), ONTOS (Ontos, Inc., название изменено с Ontologic), O 2(O2Technology, слилась с несколькими компаниями, приобретена компанией Informix, которая, в свою очередь, была приобретена IBM ), POET (теперь FastObjects у Versant, которая приобрела Poet Software), Versant Object Database (Versant Corporation), VOSS (Logic Arts) и JADE (Jade Software Corporation). Некоторые из этих продуктов остаются на рынке, и к ним добавились новые коммерческие продукты и продукты с открытым исходным кодом, такие как InterSystems Caché.

. Системы управления объектными базами данных добавили концепцию постоянства в языки объектного программирования. Ранние коммерческие продукты были интегрированы с различными языками: GemStone (Smalltalk ), Gbase (LISP ), Vbase (COP ) и VOSS (система хранения виртуальных объектов для Smalltalk ). На протяжении большей части 1990-х годов C ++ доминировал на рынке управления коммерческими объектными базами данных. Поставщики добавили Java в конце 1990-х годов, а в последнее время C#.

. Начиная с 2004 года, объектные базы данных пережили второй период роста, когда появились объектные базы данных с открытым исходным кодом, которые были широко доступными и простыми. использовать, потому что они полностью написаны на языках ООП, таких как Smalltalk, Java или C #, таких как Versant db4o (db4objects), DTS / S1 от Obsidian Dynamics и Perst (McObject), доступный по двойной с открытым исходным кодом и коммерческой лицензии.

Timeline

  • 1966
  • 1979
  • 1980
    • TORNADO - объектная база данных для CAD / CAM
  • 1982
    • Gemstone запущена (как Servio Logic) для создания машины базы данных теоретической модели множеств.
  • 1985 - Term Object Database first представлена ​​
  • 1986
    • Servio Logic (Gemstone Systems) Ships Gemstone 1.0
  • 1988
  • Начало 1990-х
  • середина 1990-х годов
  • 2000s
    • lambda-DB: ODMG -На основе объектно-ориентированной СУБД Леонидаса Фегараса, Чандрасекара Сринивасана, Арвинда Раджендрана, Дэвида Майера
    • проект db4o, начатый Карлом Розенбергером
    • ObjectDB
  • 2001 IBM приобретает Informix
  • 2003 odbpp общедоступный выпуск
  • коммерческий запуск db4o в 2004 году как db4objects, Inc.
  • 2008 db4o приобретена Versant Corporation
  • 2010 VMware приобретает GemStone
  • 2011 г. Разработка db4o остановлена.
  • 2012 Wakanda первые производственные версии с открытым исходным кодом и коммерческими лицензиями
  • 2013 г. Приобретение GemTalk Systems s Gemstone продукты от VMware
  • 2014 г. коммерческое предложение db4o официально прекращено Actian (которая приобрела Versant)
  • 2014 Realm

Внедрение объектных баз данных

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

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

Технические особенности

Большинство объектных баз данных также предлагают какой-то язык запросов, позволяющий находить объекты с использованием подхода декларативного программирования. Именно в области языков объектных запросов и интеграции интерфейсов запросов и навигации обнаруживаются самые большие различия между продуктами. ODMG предприняла попытку стандартизации с помощью Object Query Language, OQL.

Доступ к данным может быть быстрее, потому что объект может быть получен напрямую без поиска, следуя указателям.

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

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

Многие объектные базы данных, например Gemstone или VOSS, предлагают поддержку управления версиями. Объект можно рассматривать как совокупность всех его версий. Кроме того, версии объектов можно рассматривать как самостоятельные объекты. Некоторые объектные базы данных также обеспечивают систематическую поддержку триггеров и ограничений, которые лежат в основе активных баз данных.

. Эффективность такой базы данных также значительно повышается в областях, требующих больших объемов данных об одной. пункт. Например, банковское учреждение может получить информацию об учетной записи пользователя и эффективно предоставить ему обширную информацию, такую ​​как транзакции, записи информации о счете и т. Д.

Стандарты

Группа управления данными объекта был консорциумом поставщиков объектных баз данных и объектно-реляционного сопоставления, членов академического сообщества и заинтересованных сторон. Его цель состояла в том, чтобы создать набор спецификаций, которые позволили бы переносить приложения, хранящие объекты в системах управления базами данных. Он опубликовал несколько версий своей спецификации. Последней версией была ODMG 3.0. К 2001 году большинство основных поставщиков объектных баз данных и объектно-реляционного сопоставления заявили о соответствии ODMG Java Language Binding. Соответствие другим компонентам спецификации было неоднозначным. В 2001 году привязка языка Java ODMG была представлена ​​в Java Community Process в качестве основы для спецификации Java Data Objects. Затем компании-члены ODMG решили сконцентрировать свои усилия на спецификации Java Data Objects. В результате ODMG распалась в 2001 году.

Многие идеи объектных баз данных были также включены в SQL: 1999 и были реализованы в той или иной степени в объектно-реляционной базе данных продукты.

В 2005 году Кук, Рай и Розенбергер предложили отказаться от всех усилий по стандартизации, чтобы ввести дополнительные объектно-ориентированные API-интерфейсы запросов, а вместо этого использовать сам язык программирования OO, то есть Java и.NET, для выражения запросов. В результате всплыл. Точно так же Microsoft анонсировала Language Integrated Query (LINQ) и DLINQ, реализацию LINQ, в сентябре 2005 года, чтобы обеспечить тесные, интегрированные в язык возможности запросов к базе данных с ее языками программирования C # и VB.NET 9.

В феврале 2006 года Object Management Group (OMG) объявила, что ей было предоставлено право на разработку новых спецификаций на основе спецификации ODMG 3.0 и создание Рабочей группы по технологии объектных баз данных. (ODBT WG). Рабочая группа ODBT планировала создать набор стандартов, которые будут включать достижения в технологии объектных баз данных (например, репликация), управления данными (например, пространственная индексация) и форматов данных (например, XML), а также включить в эти стандарты новые функции, которые поддержка доменов, в которых принимаются объектные базы данных (например, системы реального времени). Работа рабочей группы ODBT была приостановлена ​​в марте 2009 года, когда после экономических потрясений в конце 2008 года поставщики ODB, участвовавшие в этой работе, решили сосредоточить свои ресурсы в другом месте.

В январе 2007 года Консорциум World Wide Web дал окончательный статус рекомендации языку XQuery. XQuery использует XML в качестве модели данных. Некоторые идеи, первоначально разработанные для объектных баз данных, нашли свое отражение в XQuery, но XQuery по своей сути не является объектно-ориентированным. Из-за популярности XML движки XQuery конкурируют с объектными базами данных как средство хранения данных, которые слишком сложны или изменчивы, чтобы их можно было удобно хранить в реляционной базе данных. XQuery также позволяет писать модули для обеспечения функций инкапсуляции, которые были предоставлены объектно-ориентированными системами.

XQuery v1 и XPath v2 чрезвычайно сложны (ни одно программное обеспечение FOSS не реализует эти стандарты более чем через 10 лет после их публикации) по сравнению с XPath v1 и XSLT v1 и XML не соответствовали всем требованиям сообщества как открытый формат. С начала 2000-х годов JSON завоевал признание сообщества и стал популярным в приложениях, превзойдя XML в 2010-х годах. JSONiq, аналог запроса XQuery для JSON (разделяющий основные выражения и операции XQuery), продемонстрировал функциональную эквивалентность форматов JSON и XML. В этом контексте основной стратегией разработчиков OODBMS было модифицировать JSON в своих базах данных (используя его в качестве внутреннего типа данных).

В январе 2016 года с выпуском PostgreSQL 9.5 стала первой FOSS OODBMS, предлагающей эффективный внутренний тип данных JSON (JSONB) с полным набором функций и операций для всех основных реляционных и нереляционные манипуляции.

Сравнение с СУБД

База данных объектов хранит сложные данные и отношения между данными напрямую, без отображения на реляционные строки и столбцы, и это делает их подходящими для приложений, работающих с очень сложными данными. Объекты связаны отношениями «многие ко многим» и доступны с помощью указателей. Указатели связываются с объектами для установления отношений. Еще одним преимуществом OODBMS является то, что ее можно программировать с небольшими процедурными различиями, не затрагивая всю систему.

См. Также

Ссылки

Внешние ссылки

Последняя правка сделана 2021-06-01 07:22:41
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте