Sedna

Sedna[1] — система управления базами данных, изначально спроектированная для хранения и обработки XML-данных. Разработана и развивается Отделом управления данными и информационных систем Института системного программирования РАН[2]. Система распространяется в открытых исходных текстах. Существуют версии под Windows, Linux, Mac OS и FreeBSD.

Sedna

Логотип Sedna
Тип XML СУБД
Разработчик ИСП РАН
Написана на Си
Операционная система Кроссплатформенное программное обеспечение
Последняя версия 3.5.161 (31 января 2012)
Лицензия Apache License 2.0
Сайт sedna.org

СУБД Sedna поддерживает древовидную модель данных (хранимых в двоичном виде), которые загружаются и извлекаются в виде XML-документов. Данные оптимизируются и индексируются для рационального хранения и быстрого доступа.

Прирождённые XML-СУБД в настоящее время активно развиваются — в ряде применений они начинают конкурировать с традиционными реляционными СУБД[3][4]. СУБД Sedna выглядит достойно в сравнении с другими XML-СУБД: во-первых, за счёт эффективных внутренних механизмов (например, собственного 64-разрядного диспетчера памяти, адресации и подкачки[5]), во-вторых, из-за полного соответствия стандарту на язык запросов XQuery, в третьих, за счёт возможности интеграции в XML БД наследованных реляционных источников данных (см. ниже).

Запросы к БД выполняются посредством формулирования запросов на специальном языке XML Query (XQuery). Этот язык стандартизирован консорциумом W3C[6]. Язык является функциональным, строго типизированным, модульным, весьма выразительным и изящным. В его разработке принимали участие ведущие специалисты отрасли СУБД. Язык XQuery позволяет извлекать древовидные данные, трансформировать их и генерировать в качестве результата опять же древовидные данные (XML). Это позволяет строить эффективные решения в области Интернет-приложений: функции, написанные на XQuery, могут генерировать непосредственно XHTML-страницы (или фрагменты страниц). СУБД Sedna поддерживает хранение XQuery-функций на сервере, в предкомпилированном виде.

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

Разработчики позиционируют свой продукт как основу для различного рода информационных систем, подобных системам управления контентом и событийным сервис-ориентированным архитектурам (SOA).

Демонстрацией возможностей Sedna как хранилища для документов является WikiXMLDB[7]. В эту систему было загружено 20 Гб содержания английской Википедии. К этому содержанию можно формулировать XQuery-запросы.

Работа с СУБД ведётся через открытый сетевой протокол Sedna Client-Server Protocol. Поверх этого протокола написаны драйверы (API) для клиентов на C, Java, Scheme, PHP, Python. Весьма удобна работа с СУБД из функционального языка Scheme, поскольку его основной тип — древовидные S-выражения — полностью изоморфен (однороден) модели данных XML. Разработчики СУБД Sedna предложили спецификацию SXML[8][9] — форму записи XML-данных в виде S-выражений языка Scheme.

Примечания

  1. Sedna XML Database
  2. MODIS Department at ISP RAS (недоступная ссылка). Дата обращения: 11 октября 2008. Архивировано 25 января 2009 года.
  3. Есть ли будущее у XML-СУБД?
  4. Пакет Adabas остается самым популярным продуктом Software AG… | Computerworld | Издательство «Открытые системы»
  5. Управление памятью в XML-ориентированной СУБД Sedna Архивировано 11 февраля 2007 года.
  6. W3C XML Query (XQuery)
  7. WikiXMLDB (недоступная ссылка). Дата обращения: 2 декабря 2011. Архивировано 29 ноября 2011 года.
  8. Электронные библиотеки | 2003 | Том 6 | Выпуск 4 | Д. А. Лизоркин, К. Ю. Лисовский (недоступная ссылка). Дата обращения: 26 августа 2019. Архивировано 7 мая 2018 года.
  9. SXML Tools Tutorial Архивировано 14 апреля 2007 года.

Литература

  • Говард Кац и др. W3C XML: XQuery от экспертов. Руководство по языку запросов, ISBN 5-9579-0051-6
  • Марк Грейвс. Проектирование баз данных на основе XML, ISBN 5-8459-0270-3

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.