170 likes | 289 Views
SEDNA. SGBD XML NATIVO. Sedna. Open Source / Free (Apache License 2.0) Sistema de BD XML Nativo em C/C+ W3C Xquery Segurança de dados (users / roles / privilégios ) Suporte a utf-8 Indices baseado em B-Tree. Desenvolvedor. API Java C C# PHP Python Ruby Delphi. XML
E N D
SEDNA SGBD XML NATIVO
Sedna • Open Source / Free (Apache License 2.0) • Sistema de BD XML Nativoem C/C+ • W3C Xquery • Segurança de dados (users / roles / privilégios) • Suporte a utf-8 • Indices baseadoem B-Tree
Desenvolvedor • API • Java • C • C# • PHP • Python • Ruby • Delphi • XML • DB Drive pra Java • Módulo de integração com Apache HTTP Server
Suporte a SO • Windows • Linux • Mac OS (Power PC / Intel) • FreeBSD • Solaris
ComandosBásicos • IniciaredesligaroSedna • se_gov( iniciaroSedna ) • se_stop( desligaoSedna) • CriareExecutar Database • se_cdbtestdb ( criauma base testedb ) • se_smtestedb ( executa a base testedb ) • se_smsdtestedb (desliga a base testedb)
Query via Linha de Comando • [win:] se_term-query "let $a:=(3, 1, 7) return <result>{ max($a) }</result>" testdb • [nix:] se_term-query "let \$a:=(3, 1, 7) return <result>{ max(\$a) }</result>" testdb • se_term-file 1.xquery testdb • se_termtestdb
Exemplo no Terminal • se_gov • se_cdbauction • se_smauction • se_term–file load_data.xquery auction • se_term–file <query>.xquey auction • se_smsdauction • se_stop
Comparativo • Sedna • SGBD nativolivre • PostgreSQL • Objeto-relacionallivre • Oracle 10g • Objeto-relacionalproprietário
Esquemautilizadosnasdefinições dos documentos • Sedna • Desenvolvido um novo esquema, com característicasdiferenciadas com relaçãoao DTD e XSD • É geradodinamicamente a partir dos dados do própriodocumento XML • Produzsempreumaarvore • PostgreSQL • Podeounão ser validadopor um DTD. • Validaçãonãoinfluencia no mapeamento • ArmazenamentoapenasemVarchar • Oracle 10g • Podeounão ser validadopor XSD ou DTD • Podecriar table paraacomodarosatributosinformando no sistemaoqueserámapeadopara OR eoqueseráem CLOB
Armazenamento • Sedna • Documento armazenado em sua forma nativa • Utiliza arvore de acordo com a estrutura de cada documento • PostgreSQL • Mapeado em um tipo XML baseado em Varchar • Oracle 10g • Possui tipo XMLType que mapeia os documentos XML de 3 formas: • Não estruturado – documento todo armazenado em um CLOB • Estruturado – É feito o mapeamento Objeto Relacional baseado em um esquema • Híbrido – a combinação das duas formas
Validação do Documento • Sedna • Fornece a opção de validar ou não o documento a ser utilizado. • Validação pode ser feita com DTD ou XSD • PostgreSQL • Pode ser validado com DTD • Oracle 10g • Pode ser validado com DTD ou XSD • Se não for validado com XSD apenas armazenamento não estruturado é permitido
Evolução do Esquema • Sedna • Nãoimplementaumaevoluçãosobre XSD ou DTD • Esquemadinâmicoe particular do Sedna • Permitequeestruturasdesconhecidaspossam ser armazenadasemanipuladas • PostgreSQL • Nãoimplementado • Oracle 10g • Evoluiesquemas XSD através do procedimentoCopyEvolve() • Transformações XLST sãofeitascomo parte daevoluçãotransformandodocumentos XML do esquemaantigo no esquema novo.
Formas de Indexação • Sedna • Arvore B • Utilizando a integração com dtSearchparatrabalhardiretamente com valores de texto, podendousarXquery • PostgreSQL • Arvore B • GiST’s – aumenta a eficiência de consultasXpath, transformando-as em SQL • Oracle 10g • Textual • Índicebaseadoemfunção • Arvore B • Hierárquico
Linguagem de Consulta • Sedna • Xquery • Xpatheporutilizaroconceito de tuplas, permiteoperaçõesbaseadas no modelorelacional • PostgreSQL • Xpath • XML/SQL • Oracle 10g • XSU (XDK) • Xpath • Xquery • SQL e PL/SQL (quandomapeadoparaobjeto - relacional)
Interface de Acesso • Sedna • Java • C • Scheme • Interface gráficaparagerenciamento • Comandopelo terminal • PostgreSQL • Codigos XML/SQL • Java • C++ • Oracle 10g • Interface Padrão • SQL Plus • Enterprise Manager Console • Interface 2 • Via HTTP • WebDev • FTP • API JDBC • Interface 3 • API para Java e PL/SQL • Interface 4 • Manipulação de componentes XDK em Java, C, C++ e PL/SQL
Sedna Vantagem Desvantagem • É livre • Eficienteemmanipulação de documentossemesquema, efortementesemiestruturado • Permite a utilização de trechos de documento • Consultas simples através de XpatheXquery • Permiteque um documentoreferencieoutro • Poucadocumentação for a do site oficial • Nãorestringeumacoleção a um determinadoesquema
Referencias • Um estudosobreGerenciamento de Dados XML emSGBDsObjeto-Relacionalem SGBD com suporte a XML, Maxiwell Salvador Garcia, Anderson LuizMenezes, ClodisBoscaridi, UNIOESTE, Cascavel, PR • Sedna [http://modis.ispras.ru/sedna/] acessadoemMaio de 2009 • Armazenamento de Documento XML, Vanessa Braganholo • Um estudosobreesquemasparadocumentos XML, Marcus Barbosa Pinto, Deise de BrumSaccol, CEULP/ULBRA, Palmas, TO • Estudocomparativo de SGBD XML, Rafael Pialarissi, Londrina , 2005 • Base de dados XML, GrupoKybele, Universidade de Juan Carlos I