|
|
ПЯТНАДЦАТЬ ЛЕТ НА РЫНКЕ МНОГОМЕРНЫХ СУБД |
|
|
XML-документы и XML-базы данныхДокумент, структурированный в соответствии с синтаксисом языка XML (XML 1.0 W3C Recommendation, Feb 1998), принято называть XML-документом. Обычно он воспринимается как обыкновенный текстовый файл, содержание которого имеет строгую иерархическую структуру. При этом не накладывается никаких ограничений как на число уровней вложенности этой структуры, так и на размер самого файла. В виде отдельного XML-документа можно представить как обыкновенный заказ-наряд, так и целую книгу, например, "Энциклопедию D3". Когда говорят о базах данных, то обычно понимают под этим совокупность коллекций однородных элементов. В реляционной базе данных такой коллекцией является таблица, в объектно-ориентированных базах данных такой коллекцией является класс. Поэтому, если заходит речь об XML-базах данных [1], то видимо речь идет о коллекциях XML-документов. Хочется добавить - о коллекциях однородных XML-документов. Однако, в случае с XML это не всегда так. Действительно, если речь идет о заказ-нарядах, то все их можно представить как "расширение" единой DTD (или XML схемы) и в этом смысле они однородны. Если же речь идет о книгах или каких либо других "слабо-структурированных" образованиях, то представить их содержание, описанным с помощью единой DTD, практически невозможно. Для XML-документов разработаны средства, позволяющие манипулировать отдельным документом, в частности, осуществлять поиск в пределах одного XML-документа. Для баз данных характерны манипуляции с коллекциями, в частности, поиск в коллекциях. Следовательно, XML-база данных необходима, прежде всего, для эффективного выполнения коллективных операций. Чтобы максимально автоматизировать процессы обработки информации, происходящие в информационном пространстве, и подключать человека только в исключительных ситуациях, необходимо стандартизовать это пространство. Ситуация такова, что каждый субъект информационного пространства работает на собственной, может быть оригинальной технике, на собственном программном обеспечении. Схемы внутренних баз данных этих субъектов, скорее всего, оригинальны и поддерживаются разнообразными СУБД. Приводить их к единому знаменателю практически нереально. Что же тогда подразумевает термин "стандартизация информационного пространства"? Наиболее реально - стандартизовать содержание информационных потоков, циркулирующих в нем. Необходимо использовать технологию, в которой бы любой электронный информационный документ был самоопределяемым, абсолютно понятным как машине, так и человеку, чтобы он был построен на основе одной или нескольких информационных схем, согласованных между всеми участниками. Такая технология связана с использованием XML. С помощью XML достаточно удобно описывать сложные структуры данных и представлять их в виде XML-документов. Представленное в виде совокупности XML-схем (XML Schema 1.0 W3C Recommendation, May 2001), информационное пространство, с одной стороны, претендует на однозначную семантическую интерпретацию, а с другой сохраняет достаточную гибкость для передачи самой разнообразной информации. Именно по такому пути пошла группа компаний, представившая подобную совокупность XML-схем на сайте www.commerceML.ru. Использование XML вместе с комплексом стандартов World Wide Web Consortium (W3C), образующих его инфраструктуру, в качестве открытого стандарта обмена данными позволяет строить перспективные Intranet системы на основе закрытых сетей или использовать Internet в качестве единой сети. Критическим компонентом информационных систем является СУБД, которая должна поддерживать и эффективно обрабатывать сложные глубоко структурированные данные. В таких данных могут использоваться сложные вложенные или иерархические структуры, которые требуют корректного представления. Именно такие структуры эффективно представляются с помощью языка XML и передаются в виде XML-документов, однако реляционные СУБД, широко используемые для хранения и манипулирования унаследованными данными, в силу консерватизма модели данных накладывают серьезные ограничения как на процессы их получения, так и на все вопросы работы с XML-документами. А так как роль языка XML становится ключевой, поскольку он используется не только как формат для перемещения данных в рамках бизнес-процессов, но становится стандартным форматом для обмена данными между системами, то поднимается вопрос о создании специализированных СУБД. Реляционные СУБД, в силу используемой структуры данных, не приспособлены к эффективному хранению и, соответственно, обработке содержимого XML-документов. Конечно, всегда можно представить XML-документ любой сложности в виде таблицы, составленной из ребер древовидной XML-структуры, однако, говорить при этом об эффективности при современных объемах данных практически нереально. Что же должна представлять собой специализированная СУБД для хранения и обработки XML-документов? В настоящий момент наиболее реально строить ее на основе стандартного ядра коммерческой СУБД. В частности, именно так строились первые объектно-ориентированные СУБД на основе реляционных. Появился даже термин объектно-реляционные системы. Логическая структура данных для СУБД, специализированных для хранения и обработки XML-документов вполне может определяться XML схемой или в более простых случаях DTD. Отображение этой структуры на физическую память может быть выполнено стандартными средствами ядра СУБД, положенной в основу, конечно с разной степенью эффективности. Для манипулирования данными на внешнем уровне, для поиска данных должны использоваться средства, основанные на рекомендациях W3C.В настоящее время разработано несколко XML СУБД. В частности, числу таких специализированных систем несомненно можно причислить СУБД Tomino, разработанную на основе ядра Adabas (компания Software AG) [2] и XDMS TigerLogic на основе ядра многомерной СУБД D3 (компания RainingData) [3]. Применение XML СУБД при создании распределённых информационных систем позволит существенно улучшить интеграцию данных и обеспечить взаимодействие таких систем в рамках Internet и Intranet. В.А. Филиппов, Б.А. Щукин.
|
|
|
©АПП 2003