Седна (база данных)
Репозиторий | |
---|---|
Написано в | С , С++ |
Операционная система | Кросс-платформенный |
Тип | Собственная база данных XML |
Лицензия | Лицензия Апач 2.0 |
Веб-сайт | суть ![]() |
Sedna — это с открытым исходным кодом система управления базами данных , которая обеспечивает собственное хранилище данных XML . Отличительными проектными решениями, использованными в Sedna, являются (i) схем на основе стратегия кластерного хранения данных XML и (ii) управление памятью на основе многоуровневого адресного пространства . [ 1 ]
Организация данных
[ редактировать ]Организация данных в Sedna спроектирована с целью обеспечения баланса производительности между XML-запросами и выполнением обновлений. [ 1 ] Двумя основными проектными решениями по организации данных в Sedna являются:
- Прямые указатели используются для представления отношений узлов XML, таких как родительские, дочерние и одноуровневые. В отличие от реляционных подходов, которые требуют выполнения соединений для обхода XML-документа, обход в Sedna выполняется путем простого следования по прямому указателю.
- кластеризации документа в - узлов XML Разработана стратегия хранения на основе описательной схемы, которая состоит из соответствии с их позициями в описательной схеме документа. В отличие от предписывающей схемы, которая известна заранее и обычно указывается в DTD или XML-схеме , описательная схема генерируется из данных динамически (и поддерживается постепенно ) и представляет собой краткую и точную сводку структуры данных. Использование описательной схемы вместо предписывающей делает стратегию хранения применимой к любому XML-документу, даже к тому, который не имеет предписывающей схемы.
На следующем рисунке показаны общие принципы организации данных в Sedna. Описательная схема, представленная в виде дерева узлов схемы, является центральным компонентом организации данных. Каждый узел схемы помечен типом узла XML. [ 2 ] (например, element , атрибут , text и т. д.) и имеет указатель на блоки данных , в которых хранятся узлы XML , соответствующие данному узлу схемы. В зависимости от типа узла некоторые узлы схемы также помечены именами (например, узлы элементов, узлы атрибутов). Блоки данных, относящиеся к общему узлу схемы, связываются посредством указателей в двунаправленный список . Дескрипторы узлов в списке блоков частично упорядочены в соответствии с порядком документа. [ 3 ]

<library>
<book>
<title>Foundations of Databases</title>
<author>Abiteboul</author>
<author>Hull</author>
<author>Vianu</author>
</book>
<book>
<title>An Introduction to Database Systems</title>
<author>Date</author>
<issue>
<publisher>Addison-Wesley</publisher>
<year>2004</year>
</issue>
</book>
...
<paper>
<title>A Relational Model for Large Shared Data Banks</title>
<author>Codd</author>
</paper>
</library>
Цитаты
[ редактировать ]- ^ Jump up to: а б Илья Таранов и др. Sedna: собственная система управления базами данных XML (обзор внутреннего устройства). В ACM SIGMOD '10 : Материалы 36-й международной конференции Специальной группы по управлению данными Ассоциации вычислительной техники, страницы 1037–1045, Нью-Йорк, Нью-Йорк, США, 2010. ACM .
- ^ М. Ф. Фернандес, А. Малхотра, Дж. Марш, М. Надь и Н. Уолш (редакторы). XQuery 1.0 и XPath 2.0 Модель данных (XDM). Рекомендация W3C , Консорциум Всемирной паутины , январь 2007 г.
- ^ С. Боаг, Д. Чемберлин, М. Ф. Фернандес, Д. Флореску, Дж. Роби и Дж. Симеон (редакторы). XQuery 1.0: язык запросов XML. Рекомендация W3C , Консорциум Всемирной паутины , январь 2007 г.