Ж у р н а л   о   к о м п ь ю т е р н ы х   с е т я х   и   т е л е к о м м у н и к а ц и о н н ы х   т е х н о л о г и я х
СЕТИ И СИСТЕМЫ СВЯЗИ on-line
  ПОИСК: ПОДПИСКА НА НОВОСТИ: НОМЕР:
    ДОМОЙ • Архив: Новостей | Конференций | НомеровПодписка
 
   
 
   
    
РЕДАКЦИЯ
 
Все о журнале
Подписка
Как проехать
Где купить
Отдел рекламы
График выхода журнала
Адреса в Интернет

РУБРИКАТОР
   
• Инфраструктура
• Информационные
   системы

• Сети связи
• Защита данных
• Кабельные системы
• Бизнес
• Колонка редактора
• Электронная
   коммерция

• Только на сервере
• Системы
   учрежденческой
   связи

• Новые продукты


Rambler's Top100

  

XQuery как основа трансформации СУБД

Дэвид Стоддер, Бен Дьюпонт

В ноябре стандарт XQuery 1.0, предложенный консорциумом W3C (WWW Consortium), поменял свой статус готовности с CR (Candidate Recommendation) на PR (Proposed Recommendation), что еще на один шаг приблизило принятие в качестве окончательного стандарта этого SQL-подобного метода выполнения запросов к XML-данным.

Как часто бывает с развивающимися стандартами, поддержка их отдельными продуктами способствует их скорейшему повсеместному распространению. Например, в продукте DB2 версии 9 компании IBM модуль XQuery используется в качестве части гибридного сервера. А компания Oracle дает разработчикам баз данных возможность встраивать XML-запросы в SQL-запросы или задействовать непосредственно XQuery. Такое развитие событий демонстрирует важный сдвиг в потенциальной ценности XML-данных.

XQuery, по существу, позволяет разработчикам реляционных баз данных теснее интегрировать XML-обработку с механизмами СУРБД. В результате открывается возможность создавать XML-индексы, которые поддерживаются оптимизаторами, благодаря чему система способна осуществлять запросы к XML-данным с той же эффективностью, что и при использовании SQL. XQuery также важен и при создании многоуровневых клиент-серверных архитектур; разработчики БД и связующего ПО смогут использовать XQuery для доступа к XML- или SQL- данным, находящимся в распределенных гетерогенных источниках.

Но XQuery еще незрелый стандарт. Пока он предлагает доступ к XML-данным только для чтения, но нет сомнения, что позже будут добавлены операции обновления данных и другие функции. Кроме того, в отличие от SQL стандарт XQuery еще не совсем готов к поддержке средствами бизнес-аналитики (Business Intelligence).

Практическое применение

Компании обращаются к XQuery, когда у них возникает необходимость в создании динамических XML-данных для SOAP-сообщений (Simple Object Access Protocol), динамических Web-сайтов, публикации баз данных и генерации отчетов. Например, как сообщили представители компании DataDirect Technologies, один из ее клиентов использует разработанный ею драйвер XQuery для интеграции данных клиента, получаемых с сайта Salesforce.com, и БД Oracle, чтобы генерировать документы типа заявок или письменных предложений в формате PDF. Другой клиент использует этот драйвер для выполнения запросов XML-файлов больших размеров.

Весьма заметной на рынке XQuery является компания IBM. Ее разработчики, в свое время стоявшие у истоков SQL, принимали непосредственное участие и в создании продукта Quilt, предшественника XQuery. Поддержка XML компанией IBM эволюционировала от простого расширителя типа данных до хранимых процедур и других функций для обработки XML в очередях сообщений. А инициатива pureXML в DB2 9 позволила ввести функциональность XQuery в продукт DB2 Developer Workbench. Это, например, такая опция, как Visual XQuery Builder — средство проектирования, позволяющее разработчикам создавать и исполнять XML-запросы с помощью мастеров (wizards).

Oracle идет по схожему с IBM пути. Компания была первым основным разработчиком, предложившим собственное хранилище XML-данных (в версии 9i 2001 г.). С тех пор она разрабатывает технологию XML DB (используемую в текущей версии 10g). Для доступа к XML-данным, хранящимся в БД Oracle, разработчики имеют возможность встраивать XML-запросы в SQL-запросы или использовать стандарт XQuery. Oracle поддерживает декомпозицию (shredding) XML-данных по полям реляционной табличной структуры, а также документоцентричную парадигму, в большей степени направленную на сохранение структуры документа (скажем, контракта).

Microsoft SQL Server поддерживает некоторые формы XML-обработки, и в следующих двух версиях продукта компания планирует расширить поддержку XQuery, которая не столь развита, как у IBM или Oracle. Кроме того, Microsoft предстоит еще много сделать для обеспечения поддержки XQuery и XML во всей платформе Windows. В 2007 г. организациям следует присмотреться к Office 2007 и его форматам Open XML Formats, поскольку компания работает над обеспечением в них поддержки XQuery на клиентской стороне.

На передний план сегодня выходят и более мелкие фирмы, поддерживающие XQuery. Это, например, компания Mark Logic, ведущая узкоспециализированная компания — разработчик XML-баз данных. Она не теряла времени даром и реализовала поддержку XQuery в своем сервере MarkLogic Server, что повысило эффективность ее механизма запросов данных.

Другие стандарты

В то же время XQuery, хотя и весьма заметный, но лишь один из множества других родственных стандартов типа XSLT (Extensible Stylesheet Language Transformations) — языка консорциума W3C, разработанного группой XSL Working Group. XSLT и XQuery ча-стично перекрывают друг друга, но первый разрабатывался как язык стилевых страниц для преобразования документов в XML и другие форматы, тогда как XQuery должен воспроизводить функциональность SQL, но только уже на множестве XML-данных.

Наряду с XQuery еще одним важным формирующимся стандартом является JSR (Java Specification Request) 225, или XQJ — XQuery API-интерфейс для Java. JSR 225, разработку которого финансируют IBM и Oracle, включает в себя базирующиеся на концепции стандарта XQuery методы доступа к XML-данным. Сделано это почти таким же образом, как в JDBC (Java Database Connectivity) были организованы функции доступа, запросов и обновления реляционных БД.

Надо напомнить, что сервис-ориентированная архитектура SOA тоже во многом связана с XML. Это еще один фактор, способствующий тому, чтобы разработчики БД побыстрее адаптировались к использованию XML. Словом, стандарт XQuery важен для всех, поэтому его развитие может пройти более удачно, чем развитие других отраслевых стандартов, включая SQL. Тем не менее различия между источниками данных будут существовать всегда, поэтому поставщики СУБД и связующего ПО преуспеют, если смогут облегчить жизнь разработчиков БД, которым для интеграции XML-данных приходится изучать и разрабатывать разные API-интерфейсы для разных источников данных и писать огромные объемы процедурного кода.

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

XQuery И SQL

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

А в XML главное — структурирование данных с последующей возможностью его многократного использования. Иерархические и “плоские” отношения между документами и частями документов тоже важны, поэтому функции XQuery существенно отличаются от операций SQL. Для этого рабочим группам XQuery и XSLT необходимо будет упорядочить функциональные возможности, избежав при этом конкуренции за области влияния.

XQuery никогда не заменит SQL, потому что большинство бизнес-данных можно успешно сохранять и извлекать посредством реляционной модели. XQuery ориентирован на богатый мир XML-документов, получение контента и координацию работы разных бизнес-приложений посредством обмена данными между соответствующими источниками. Поставщики знают, что они не добьются успеха, если не сумеют предложить необходимые для этого технологии. Однако остается открытым вопрос: смогут ли поставщики реляционных СУБД обеспечить XQuery и XML столь же мощную функциональность, что и у SQL, где время реакции на запрос составляет доли секунды? Если они не сумеют это сделать, то клиенты для управления XML-данными будут использовать решения узкоспециализированных поставщиков, т. е. разработанные на заказ или базирующиеся на связующем ПО..





  
7 '2007
СОДЕРЖАНИЕ

бизнес

• Пять мифов об удовлетворенности клиентов

инфраструктура

• Приключения во вселенной данных

• Совокупная стоимость владения БЛВС

• Стандарт MRCP на службе у разработчиков голосовых приложений

• Головоломка под названием «Мобилизация Linux»

• Беспроводные USB-устройства на подходе

информационные системы

• Найти общий язык

• CMDB — новая золотая жила ИТ?

• XQuery как основа трансформации СУБД

• Lemonade для мобильных пользователей

сети связи

• Когда минута уже не товар

кабельные системы

• Как ослабить натяжение в кабелях?

• На виражах кабельных трасс. Тенденции рынка

• Перспективы применения в СКС горизонтальных кабелей с повышенным волновым сопротивлением

защита данных

• Инструментальные средства обнаружения rootkit-утилит

• О данных замолвите слово

• Двухуровневое решение для безопасности БЛВС


• Калейдоскоп



 Copyright © 1997-2007 ООО "Сети и Системы Связи". Тел. (495) 234-53-21. Факс (495) 974-7110. вверх