Categorias de Documentos XML

Slides:



Advertisements
Apresentações semelhantes
Banco de Dados Temporais
Advertisements

Sistema de Informações para Gerenciamento de Publicações
Introdução Marcus Vinícius Carneiro Teixeira.
Banco de Dados Prof. Antonio.
Curso: Banco de Dados I Análise de Sistemas PUC Campinas
Evolução dos SGBD’s (2ª Parte).
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
Funcionalidades de um SGBD
Prof.: Bruno Rafael de Oliveira Rodrigues
Maurício Edgar Stivanello
Motor de Armazenamento
SGBD.
Sistema Gerenciador de Banco de Dados SGBD
Sistema Gerenciador de Banco de Dados SGBD
Teste em Esquemas de Dados Maria Cláudia Figueiredo Pereira Emer Universidade Federal do Paraná Departamento de Informática Seminário.
Vânia Maria Ponte Vidal
Consultado Documentos XML com XPATH
Restrições de Integridade
Gerenciamento de Dados XML
Professora: Aline Vasconcelos
Introdução a Teoria da Classificação
April 05 Prof. Ismael H. F. Santos - 1 Módulo II XML Processing: XSLT, SAX e DOM Prof. Ismael H F Santos.
Ferramentas CASE ERwin
Conceitos Básicos Dado: fato do mundo real que está registrado e possui um significado implícito no contexto de um domínio de aplicação Exemplos: endereço,
Material III-Bimestre Wagner Santos C. de Jesus
Prof. Alexander Roberto Valdameri
Administração de Sistemas de Informação Banco de Dados
Prof. Alfredo Parteli Gomes
Arquitetura e Linguagens
Tecnologias de Linguagens para Banco de Dados
SEDNA SGBD XML NATIVO.
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Computação e Estatística Servidor de Documentos XML Usando.
Banco de Dados II Prof. Antônio Cordeiro.
Tópicos avançados em internet B Carlos Oberdan Rolim Ciência da Computação.
É um conjunto de registos dispostos numa estrutura regular que possibilita a reorganização dos mesmos e a produção de informação com a menor redundância.
Design Patterns / Acesso ao banco de dados (java.sql)
A autoria - II.
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
ACESSO A BASE DE DADOS.
Introdução ao Hibernate
Projeto de Banco de Dados
Introdução a Banco de dados
Professor: Márcio Amador
Banco de Dados Parte 04 Ceça. Ceça Moraes 2 Conteúdo  Os três níveis da arquitetura  Mapeamentos  Arquitetura cliente-servidor.
Banco de dados.
BD Distribuído Conceitos Iniciais.
Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson.com.br “Está conosco o Senhor dos Exércitos”
Contexto da disciplina
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Sarajane Marques Peres
Introdução a Banco de Dados Aula 04
Bancos de Dados Estrutura e Funcionamento de um SGBD
Projeto de Sistemas de Informação Prof. Schneider Oracle Object-Relational.
Teste.
SQLite Banco de Dados II.
Produção de Sites Unidade 9 – XML Prof.: Henrique Santos.
Sumário 1 SQL Embutida 2 Processamento de Consultas
XML: Conceitos, Tecnologias e Aplicações Vânia Maria Ponte Vidal
Banco de Dados e Internet
Banco de Dados Universidade do Estado de Santa Catarina
Projeto de Banco de Dados
UCSal – Bacharelado em Informática
UCSal – Bacharelado em Informática Banco de Dados Profa. Semíramis Assis
Students to Business – 2011/1 Fase 2. aGENDA O que é um banco de dados? Onde aplicamos o banco de dados? Laboratório: Navegando no SQL Server Management.
Plano de Ensino Conceitos e Características Tipos de Banco de Dados
Banco de Dados Distribuídos Sílvia Cristina de Matos Soares
Modelagem de dados XML Yago Zacarias Gomes Coutinho Ribeiro
Apresentação TI Alunos: Isadora Bernardo, Lucas Medeiros, Marcela Muniz e Renata Coutinho.
Design para Web 3 XHTML.
Modelagem de Banco de Dados: Conceitos
Transcrição da apresentação:

Categorias de Documentos XML Documento Orientado a Dados (DOD) fracamente semi-estruturado representação de dados mais homogênea e estruturada <endereco> <rua>Beira-Mar</rua><numero>104</numero><complemento>apto 203</complemento> <bairro>centro</bairro><cidade>Fpolis</cidade> <cep>88010-600</cep> </endereco> <rua>Lauro Linhares</rua><numero>761</numero><bairro>trindade</bairro> <cidade>Fpolis</cidade><cep>88040-900</cep>

Categorias de Docs XML Documento Orientado a Documento (DODoc) fortemente semi-estruturado representação fortemente textual <anuncio> <transacao>Vendo</transação>, por motivo de viagem,<produto>automóvel Gol I 97 </produto>, cor azul, em ótimo estado de conservação. Preço: R$<preco>9000,00</preco>. Tratar com<contato><nome>Pedro</nome> fone</fone>99991111</fone></contato> </anuncio> Atenção! Se você deseja vender o seu veículo, nós realizamos o melhor negócio. <transacao>Compramos</transação> qq tipo de <produto>veículo</produto>. Ligue-nos: <contato><fone>2340011</fone> ou envie um e-mail:<eMail>lojao@bla.com.br</eMail><contato>

Tipos de BDs para XML BD estendido para lidar com dados XML mais adequado a DODs funcionalidades para tratamento de dados XML aplicadas a um BD com um modelo lógico e físico diferente BD Relacional, BDOO, ... pode apresentar um modelo lógico para dados XML ou apenas definir um mapeamento de um esquema lógico XML para o esquema lógico do BD BD XML nativo mais adequado a DODocs gerenciamento específico de dados XML

BD XML Nativo Suporta um modelo lógico para dados XML requisitos mínimos definição de elementos, atributos, #PCDATA e ordem Define um modelo de armazenamento físico proprietário para dados XML Adequado a docs XML fortemente semi-estruturados mapeamento para BD relacional seria complexo! aplicações que lidam apenas com dados no formato XML

BD XML Nativo - Características Objetivo discussão de características encontradas ou desejadas em BDs XML Nativos Estudo de Caso SGBD XML Tamino (www.softwareag.com/tamino) “Transaction Architecture for the Management of INternet Objects” servidor de dados XML desenvolvido pela Software AG

Coleções Noção lógica de um conjunto de docs XML a decisão sobre quais docs XML pertencem a uma coleção fica em geral a cargo da aplicação + : flexibilidade quanto ao conteúdo da coleção - : baixo nível de integridade dos dados em alguns casos, um esquema XML fixo pode ser associado a uma coleção Consultas e atualizações podem ser direcionadas a coleções

Coleções - Tamino 1 BD – n coleções – n esquemas com n tipos de documentos tipo de documento: definição de elemento raiz novo doc XML: inserido em uma coleção e válido para algum tipo doc Docs sem esquema mantidos na coleção ino:etc tipos de documentos

Consultas Suporte a pelo menos uma linguagem de consulta para XML uso mais extensivo de XPath uso de alguns dialetos da XQuery (tendência!) Características desejadas para uma linguagem de consulta para XML busca por padrões (análise de conteúdo textual) consultas declarativas resultados de consultas doc XML, fragmentos de docs XML ou novas estruturas XML

Consultas - Tamino Suporte a Xpath (chamada X-Query) e XQuery estendidos Geração de docs XML como resultado busca por padrão

Atualizações Capacidades de atualização são variadas possibilidade apenas de substituição de um doc XML completo API DOM para atualização de nodos linguagens de atualização declarativas exemplo: XUpdate (consórcio XML:DB) XML:DB consórcio de empresas responsável pelo desenvolvimento de tecnologias para BDs XML tendência (?): XQuery como linguagem de atualização

XUpdate Sintaxe XML Exemplo 1: Exemplo 2: I / E de elementos, atributos e texto A do conteúdo de elementos e atributos Exemplo 1: (inclusão de um novo eMail para Maria) Exemplo 2: (remoção do primeiro livro) <xupdate:append select=”//autor[nome=´Maria´]/eMail” child=”last()”> <xupdate:element name="eMail">Maria@teste.com</xupdate:element> </xupdate:append> <xupdate:remove select="/listalivros/livro[1]"/>

Atualizações - Tamino XQuery possui capacidades de atualização insert, delete, rename e replace Exemplos update (inserção de autor) for $liv in input()/livro where $liv/titulo = “XML” do(insert (<autor><nome>João Silva</nome></autor>) following $liv/autor[last()]) update (alteração de eMail de autor) for $aut in input()/livro/autor where $aut/nome = “Maria Souza” do (replace $aut/eMail with (<eMail>ms@new.com</eMail>))

Gerência de Transações Controle convencional de concorrência e recuperação contra falhas Granularidade de bloqueios coleção doc XML (bloqueio usual – baixo nível de concorrência) elementos

Gerência de Transações - Tamino Conceitos de transação e sessão várias transações podem ocorrer dentro de uma sessão interrupção da sessão implica rollback de todas as transações pendentes mecanismo de log e backup de dados deadlock transação mais recente tem prioridade Granularidade de bloqueio é sempre o doc XML existe um limite máximo de tempo para manter um doc bloqueado

Conectividade Interface ODBC Protocolos HTTP Consórcio XML:DB conexão com o BD, execução de consultas e atualizações e exploração de resultados Protocolos HTTP acesso via browsers Web (alguns BDs) Consórcio XML:DB propõe uma API para BDs XML manipulação de BDs e coleções; execução de consultas Xpath e XUpdate; acesso a resultados de consultas; controle de transações

Conectividade - Tamino Interface principal de acesso é HTTP um servidor Tamino deve estar sempre associado a um Web server (domínio Internet) define uma API que encapsula chamadas HTTP criação e manipulação de BDs, coleções e docs acesso: http://<nome_domínio>/tamino/<nome_BD>/[<nome_coleção>]<comando_API_HTTP> Outras formas de acesso API DOM para Java API XML:DB

Tamino – Conectividade HTTP

Round-Tripping Capacidade de recuperação integral de um doc XML seqüência textual exata do doc Precisão do round-tripping é diretamente proporcional ao poder de expressão do modelo lógico BDs XML garantem pelo menos round-tripping a nível de elementos, atributos e seus conteúdos

Round-Tripping - Tamino Duas formas de armazenamento campo longo CLOB utilizado em geral para docs XML sem esquema índices de texto podem ser definidos permite buscas por padrões 100% round-tripping formato nativo esquema de objetos proprietário índices sobre elementos e atributos podem ser definidos garante round-tripping a nível de hierarquia de elementos

Integridade Semântica RIs a nível de esquemas XML são limitadas ordem hierárquica e restrições de cardinalidade tipo de dado de elementos e atributos valores permitidos integridade referencial dentro de um documento XML (recursos do tipo ID/IDREF ou key/keyref) Basicamente estas RIs são controladas em BDs XML Carência de um mecanismo de integridade mais robusto similar a BD relacional (checks, triggers, ...)

Integridade Semântica - Tamino Definição de valores possíveis (fixos, defaults, enumerações, ...) Integridade referencial controlada por “funções de extensão” (para cada caso indicado na trigger) controles de integridade

Armazenamento Docs XML “in-natura” tratados como uma “caixa preta” deseja-se preservar o texto do documento indexação apenas textual (por palavra-chave) Objetos DOM que representam os dados XML (+ usado) armazenamento clusterizado de objetos nodos próximos na hierarquia do doc XML são armazenados próximos fisicamente através de uma busca em largura ou profundidade facilita indexação e busca de uma hierarquia de objetos apenas os elementos de mais alto nível precisam ser indexados os demais elementos são buscados via varredura linear

Indexação Indexação por valor Indexação de texto do doc XML para elementos e atributos Indexação de texto do doc XML Indexação de estrutura indexação de nodos do doc XMO associada a técnicas para localização de nodos filhos facilita consultas em docs XML sem esquema não se sabe quais elementos filhos um elemento possui

Indexação – SGBD eXist Índices são IDs numéricos para nodos, com uma numeração dada por uma busca em largura supondo uma árvore sempre completa (“nodos virtuais”) certas propriedades da árvore permitem calcular o ID de nodos filhos, pai, irmãos, ... ex.: maxFilhos = 4  filhos de X  [ID(X)*4+1, ID(X)*4+4] livro título 1 preço 2 autor 3 autor 4 “XML & BD” 79.00 nome mail nome mail 8 12 15 16 19 20 . . .

Referências Tecnologia XML XML & BD SQL/XML XML:DB SGBD XML Tamino http://www.w3c.org/xml XML & BD http://www.rpbourret.com/xml/XMLAndDatabases.htm SQL/XML http://otn.oracle.com/tech/xml/xmldb/htdocs/sql_xml.html XML:DB http://www.xmldb.org SGBD XML Tamino http://www.softwareag.com/tamino