quinta-feira, 25 de maio de 2006

DB2 Viper - Overview de funcionalidades

A IBM anunciou a disponibilidade de uma nova versão da sua base de dados DB2, denominada DB2 Viper.

Nesta versão foram implementadas muitas novas funcionalidades e corrigidos bugs.

A principal nova característica consiste no suporte "puro" de XML nas bases de dados, mantendo - como é óbvio - todas as funcionalidades relacionais e object relational.
O suporte para XML até aqui existente no DB2 era:
  • Inserção do XML em Blob(s), com um sql alterado para o facilitar.
  • Mapeamento de tag(s) XML com colunas da base de dados relacional fazendo com que os ficheiros XML ao serem inseridos fossem convertidos em informação em colunas de tabelas numa bd relacional tradicional.
Já existiam várias bases de dados XML (ex : Apache Xindice, Software AG Tamino). Esta versão disponibiliza o melhor de dois mundos (Relacional e XML).
Por suporte "puro" entende-se:
  • A gravação da informação XML de uma forma hierarquica.
  • O suporte da linguagem XQuery para consulta da informação.
A arquitectura simplificada deste acesso descreve-se no seguinte diagrama:










De notar que em termos de organização tabular nada muda. Passa é a existir um novo tipo de dados XML, como se pode ver na tabela que se segue:

create table cliente (
numero smallint,
nome char(100),
info_contacto xml
);

Para inserir em tal tabela usa-se uma instrução SQL normal, como por exemplo:
insert into clients values (77, 'josé manuel',
'Rua das pretas111Lisboa');

Os query(s) podem ser executados em SQL puro ou em Xquery.