Технология Tamino
С выпуском Tamino компания Software AG представляет новое поколение СУБД, первый в мире информационный XML-сервер, являющийся быстродействующим, надежным, высоко масштабируемым продуктом, основанным на открытых стандартах. Компоненты Tamino обеспечивают решение поставленной задачи - обеспечивать быстрый, но плавный процесс изменения ИТ - поскольку Tamino объединяет технологии Интернет с современными достижениями в области разработки баз данных и средств доступа к существующим базам данных. Информационный сервер Tamino представляет собой совершенно новую разработку интегрированного решения, включающего в себя:
Технология X-Machine
Высокопроизводительный инструмент для хранения XML-данных в их оригинальном виде, включая возможность подключения функциональных расширений сервера, написанных пользователем, для выполнения различных операций преобразования документов.
Технология X-Machine позволяет хранить и искать объекты данных, относящихся к бизнес-процессам, в их оригинальном виде. X-Machine представляет собой первую в мире реализацию истинной базы данных XML.
Tamino поддерживает XML V.1.0, язык ссылок XLL, таблицы стилей XSL и подмножество XQL, а также концепцию пространства имен XML.
X-Machine включает в себя:
Объекты XML, запоминаемые в XML-хранилище, описываются соответствующей схемой данных, выраженной в правилах отображения. Данная информация хранится в базе данных Tamino. Внутренний XML-процессор выполняет проверку правильности синтаксиса описателей объекта и отвечает за синтаксическую корректность (well-formed) структуры объектов XML.
Процессор объектов используется при запоминании объектов XML в XML-хранилище. При этом структурированные данные (данные РСУБД) запоминаются в таблицах и колонках, соответствующих Описанию схемы. Обмен с внешними источниками данных выполняется с помощью компонента X-Node.
В качестве языка запросов используется XQL. Интерпретатор запросов обрабатывает полученный запрос совместно с Генератором объектов в целях поиска и формирования результата в виде XML-документа.
Данный компонент используется при поиске и чтении объектов. Используя уникальные идентификаторы объектов, сформированные X-Machine при их запоминании, Генератор объектов конструирует информационные объекты и возвращает их как результат выполнения запроса в виде XML-документов. В простейшем случае информационные объекты будут объектами XML. В сложных запросах для конструирования XML-объекта из традиционных источников данных Генератор объектов будет обращаться к Tamino X-Node или Tamino SQL Engine.
Tamino предоставляет ряд программ обслуживания информационного сервера. В качестве главного примера может служить программа загрузки XML-объектов (аналог утилиты массовой загрузки данных в традиционных СУБД).
Tamino SQL Engine
С помощью SQL-процессора реализованные в Tamino средства отображения данных в XML позволяют автоматически решать задачу их представления в виде объектов Интернет, и наоборот, информационные объекты Интернет могут стать доступными в виде реляционных данных для стандартных приложений, ориентированных на SQL.
Для поддержки работоспособности SQL приложений, в состав Tamino входит SQL-процессор, обеспечивающий также и среду хранения реляционных данных. SQL-процессор поддерживает выполнение операторов SQL версии 2 в части манипулирования определения и управления данными (DML, DDL, DCL), а также выполнение ACID-транзакций.
SQL-процессор получает SQL-запросы от Tamino несколькими способами:
- Внутренние обращения Tamino X-Machine
- SQL-приложения либо с помощью встроенного SQL, либо с помощью стандартных интерфейсов ODBC, JDBC, OLE DB.
- Диспетчер Tamino
Кроме того, SQL-процессор предоставляет препроцессоры для компиляторов со стандартных языков программирования.
Диспетчер Tamino
Инструментарий для администрирования объектов Tamino в Интернет. Для выполнения функций администрирования (создание базы данных, запуск/остановка сервера, сохранение/восстановление, загрузка данных, и т.д.) в состав диспетчера Tamino входит агент, устанавливаемый на каждом узле, где развернут сервер Tamino.
Кроме того, Диспетчер Tamino взаимодействует с Генератором схемы Tamino для настройки параметров XML-процессора (Parser), задания правил отображения данных и установки программ-расширений сервера Tamino.
Расширения сервера
Архитектура Tamino позволяет пользователям встраивать специализированные функции для дополнительной обработки информации, обеспечивающие возможности работы с данными, хранящимися в Tamino, которые, в свою очередь, могут быть представлены как XML, так и не-XML структуры. Программы-расширения сервера устанавливаются на узле сервера с помощью Диспетчера Tamino, и, будучи установленными, доступны пользователям как стандартные встроенные функции сервера.
Кроме того, расширения сервера могут использоваться для реализации динамического отображения данных, т.е. преобразования структуры XML в структуру РУСБД на основании значения элемента документа.
Расширения сервера являются составной частью Tamino, и могут быть написаны на C, C++ или на других языках, поддерживающих COM/DCOM. Предлагаемый инструментарий среды разработки оснащен помощниками (Wizards), упрощающих процесс написания программ. Применение расширений сервера позволит уменьшить нагрузку на сеть за счет перевода обработки данных с клиента на сервер.
Описание схемы
Компонент Описание схемы (Schema Description) Tamino составляет его базу знаний, содержащую правила отображения, хранения и конструирования объектов XML. Правила построения объектов основаны на информации о схеме данных, поддерживаемой администратором сервера. Правила используются для:
- Отображения структур XML во внутреннюю структуру XML-хранилища, обеспечивая хранение XML-документов в их исходном виде
- Отображения структур XML в структуры существующих СУБД и наоборот, что делает возможным объединение данных из разнородных источников
- Отображения структур существующих файлов Adabas
- Отображения структур XML в структуру другого сервера Tamino
Правила построения и отображения структур данных поддержаны соотвествующим графическим инструментарием, входящим в состав Администратора Tamino.
X-Node
С помощью компонента Tamino X-Node пользователь получает доступ к разнородным и распределенным источникам данных. В качестве источников данных могут быть базы данных, файловые системы, или данные, полученные из систем передачи сообщений. Компонент X-Node позволяет представить прикладной программе все эти источники, как единый источник необходимых данных, независимо от их физического расположения. X-Node позволяет перегруппировывать данные, объединять существующие базы данных с новыми источниками данных, поскольку все обрабатываемые данные представляются в виде одного объекта XML.
С помощью X-Node предоставляется возможность использования существующих баз данных предприятия в их существующем виде и на существующих платформах, обеспечивая доступ к ним из Интернет.
Tamino SDK
Комплект инструментальных средств разработки приложений, обеспечивающий взаимодействие Tamino с XQL, SQL или объектно-ориентированными приложениями (DOM), и состоит из набора следующих интерфейсов:
- Интерфейс прямого доступа к объектам XML с помощью традиционной их адресации по URL.
- Интерфейс языка запросов XQL, существующего в настоящее время в виде проекта стандарта.
- Интерфейсы OLE DB, ODBC, JDBC и DCOM для приложений, использующих SQL и объектно-ориентированные технологии.
Tamino поддерживает спецификации модели DOM на уровне W3C's Document Object Model Recommendation Level 1, что делает возможным предоставлять клиентам объекты XML как объекты DOM. Данная возможность позволяет приложению получить доступ к элементу документа, обработать его и изменять его значения. Модель DOM реализована на сервере в виде интерфейса с прикладной программой клиента, что поддерживает идеологию "тонкого" клиента.