|
| ||||||||||||
| ||||||||||||
|
2005 г.
Тезисы доклада конференции "Корпоративные базы данных-2005"
Разработка серверных приложений с использованием XML-СУБД SednaМаксим Гринев (ИСП РАН), Александр Болдаков (ИСП РАН)Базы XML-данныхВ настоящее время язык XML фактически является стандартом de facto для представления слабоструктурированных данных. Формат XML все чаще используется для хранения значительных объемов информации, что повышает актуальность задачи управления XML-данными. Для решения этой задачи предназначены прирожденные (native) XML-СУБД. Работа со слабоструктурированными данными
Разработка приложений над XML-даннымиПроблема несоответствияРазработку приложений, работающих с XML-данными, при помощи традиционных языков программирования часто усложняет проблема несоответствия (impedance mismatch) между моделями данных. С точки зрения модели данных можно выделить два уровня: уровень базы данных и уровень приложения. Проблема заключается в несоответствии моделей данных на этих уровнях. Например, достаточно типичным является выбор объектно-ориентированных языков для реализации XML-приложений (Java, C# и т.п.). В таком случае на уровне данных программист имеет дело с древовидной моделью данных языка XML, а на уровне приложения - c объектно-ориентированной моделью языка программирования. Разработчику приходится заботиться о преобразованиях между моделями, что неудобно и ведет к дополнительным ошибкам. Язык XQueryДля запросов XML-данных консорциум W3C предлагает язык XQuery. Выразительность этого языка позволяет рассматривать его не только как язык запросов, но и как полнофункциональный язык управления XML-данными.
XQuery = XPath (язык адресации узлов XML-документа) +
Поддержка трансформаций XML-данных +
Описание логики +
Расширяемость
Примеры выражений XQuery:
Разработка Web-приложений на языке XQueryПри работе в Web часто приходится иметь дело со слабоструктурированной информацией, и формат XML получил в этой среде наиболее широкое распространение. Для разработки Web-приложений, оперирующих слабоструктурированными данными, удобно использовать язык XQuery над базой XML-данных. Преимущество данного подхода состоит в том, что приложение разрабатывается от начала и до конца в рамках одной модели данных. Данные, которыми оперирует приложение, представлены в формате XML, язык реализации приложений XQuery основан на модели данных XML и, наконец, документ в формате HTML, результат работы Web-скрипта, также является частным случаем XML-данных. Принципы разработки Web-приложений на языке XQueryДанные, которыми оперируют Web-приложения, представляются в формате XML и сохраняются в базе XML-данных. Web-приложение строится из набора сервлетов, реализуемых на языке XQuery. Сервлеты функционируют над базой XML-данных, причем глубоко интегрированы с ней. Интеграция приложения с данными при таком подходе является гораздо глубокой, чем интеграция традиционных Web-приложений с реляционными БД посредством обращений к прикладному API, поскольку операции XQuery выполняются непосредственно над структурами базы данных. При такой интеграции не требуется дополнительная среда для передачи контекста между сервлетами: сервлеты взаимодействуют друг с другом посредством базы данных. Примеры Web-приложений
Факторы эффективной реализацииДля обеспечения возможности промышленного применения XML-СУБД должны отвечать критериям, имеющим отношение ко всем СУБД, независимо от их специфики. Основными критериями являются следующие:
XML СУБД Sedna (проект Института системного программирования) удовлетворяет всем этим критериям и позволяет создавать эффективные серверные решения для решения задач управления полуструктурированными данными. |
|
CITForum © 1997–2025