Sedna

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

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

СУБД 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. Дата обращения: 18 сентября 2020. Архивировано 1 октября 2020 года.
  2. MODIS Department at ISP RAS. Дата обращения: 11 октября 2008. Архивировано из оригинала 25 января 2009 года.
  3. Есть ли будущее у XML-СУБД? Дата обращения: 14 октября 2008. Архивировано 4 марта 2016 года.
  4. Пакет Adabas остается самым популярным продуктом Software AG… | Computerworld | Издательство «Открытые системы». Дата обращения: 14 октября 2008. Архивировано 6 июня 2008 года.
  5. Управление памятью в XML-ориентированной СУБД Sedna Архивировано 11 февраля 2007 года.
  6. W3C XML Query (XQuery). Дата обращения: 11 октября 2008. Архивировано 1 ноября 2007 года.
  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

Ссылки[править | править код]