A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Ferramentas e Repositórios RDF Ana Carolina Almeida.

Apresentações semelhantes


Apresentação em tema: "Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Ferramentas e Repositórios RDF Ana Carolina Almeida."— Transcrição da apresentação:

1 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Ferramentas e Repositórios RDF Ana Carolina Almeida abrito@inf.puc-rio.br Carlos Juliano Viana cviana@inf.puc-rio.br Capa

2 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa FerramentasFerramentas  Triplify Agile Knowledge and Semantic Web research group (AKSW) Versão 4 beta (2008)  D2RServer Versão 0.4 alpha (2007)  Openlink Virtuoso Openlink Software Versão 5.0.8 (2008)

3 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaConceito Um plugin para aplicações web que disponibiliza os dados de BD’s relacionais em RDF, JSON ou Linked Data. Consiste de poucos arquivos: menos do que 500 linhas de código (PHP); Uso de arquivo de configuração (Construído em menos de uma hora). Triplify

4 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaProblema Estrutura e a semântica dos dados em esquemas de BD’s relacionais não estão facilmente acessíveis a máquinas de busca. Triplify

5 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaProblema 15 mais populares aplicações na web no Sourceforge (Maio 2007). Riqueza de informações quando os dados das aplicações estiverem disponíveis na web! Triplify

6 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaObjetivo Explorar as representações estruturais dos dados por trás das aplicações web para criar uma massa crítica de representação de informação semântica na web. Triplify

7 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaSolução Definir consultas a BD’s relacionais da aplicação web específica: –Resultados das consultas -> RDF, JSON e Linked Data. Triplify

8 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Estrutura de Consultas Para maioria de aplicações web: 3 a 7 consultas para extrair informações importantes (Com base em Experiência). Pode-se prover um número arbitrário de consultas. Consultas devem selecionar informações sobre um objeto de um certo tipo e possuir uma determinada estrutura: 1.Primeira coluna deve conter identificadores para serem utilizados para gerar URI’s das instâncias. (chave primária da tabela). 2.Nomes das colunas para gerar as propriedades, renomeando as colunas da tabela: SELECT id, name AS ‘foaf:name’ FROM users. Pode-se utilizar propriedades de vocabulários existentes. Triplify

9 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Estrutura de Consultas 3. Resultados das consultas devem restornar valores literais ou referências para outras instâncias. Resultados constituem-se na propriedade Object das triplas RDF. Triplify

10 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Arquivo de Configuração Software de gerenciamento de conferência - OpenConf: // Referencia para onde está o código do Triplify. require_once("../include.php"); require_once("../db.php"); $triplify['namespaces']=array( 'vocabulary'=>'http://triplify.org/vocabulary/OpenConf/', 'foaf'=>'http://xmlns.com/foaf/0.1/', 'dc'=>'http://purl.org/dc/elements/1.1/', 'xsd'=>'http://www.w3.org/2001/XMLSchema#', ); $triplify['db']=new PDO('mysql:host='.OCC_DB_HOST.';dbname='.OCC_DB_ NAME, OCC_DB_USER, OCC_DB_PASSWORD); $triplify['objectProperties'] = array ( 'isAuthorOf'=>'paper', 'isPCmemberOf'=>'', 'hasTopic'=>'topic' ); Triplify

11 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Arquivo de Configuração $triplify['queries'] = array ( 'paper'=>array ( "SELECT paperid id, title, keywords, abstract FROM ".OCC_TABLE_PAPER." WHERE accepted='T'", "SELECT paperid id,topicid hasTopic FROM ".OCC_TABLE_PAPERTOPIC.“ INNER JOIN ".OCC_TABLE_PAPER." USING(paperid) WHERE accepted='T'" ), 'author‘ => "SELECT CONCAT (paperid,'-',position) id, SHA(CONCAT('mailto:',email)) mbox_sha1sum, paperid isAuthorOf, name_first `foaf:firstName`, name_last `foaf:family_name`, organization,country FROM ".OCC_TABLE_AUTHOR." INNER JOIN ".OCC_TABLE_P APER." USING(paperid) WHERE accepted='T'", 'topic'=>"SELECT topicid id, topicname, short FROM ".OCC_TABLE_T OPIC, ); OBS: Triplify tenta detectar e converter automaticamente os tipos. Triplify

12 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Integrar Triplify em Apps. Web 1.Acrescentar o diretório do Triplify a raiz da aplicação; 2.Definir consultas SQL e ajustar o arquivo de configuração; 3.Possibilitar o acesso direto a base de dados relacional por: 1.Objeto PDO; 2.Driver de conexão Mysql; 3.Utilizar um outro framework para abstração de base de dados; Exemplos de integrações: Simile Potluck;Simile Potluck Yahoo! Pipes ; etc.Yahoo! Pipes Triplify

13 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaConceito Publicar dados de BD relacionais para a web semântica (on-the-fly); Dados mapeados para triplas RDF; Linguagem de mapeamento D2RQ: –Identificar os recursos; –Propriedades para descrever os recursos; Servidor web embutido; Visualização em RDF ou HTML; Consultas: linguagem SPARQL. D2R Server

14 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaArquitetura D2R Server

15 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaMapeamento Automático e customizável: –generate-mapping -> Cria um arquivo de mapeamento default analisando o esquema do BD. Tabela -> Classes; Colunas -> Propriedades; –Customizar os termos gerados: utilizar vocabulários conhecidos: rdf, rdfs, xsd, foaf, dc, owl, bio, etc. Compatibilidade: –Oracle, MySQL, PostgresSQL, fontes de dados ODBC (sem geração automática). D2R Server

16 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaMapeamento # Namespace do arquivo de mapeamento; @prefix map:. # Vocabulários. @prefix rdf:. @prefix xsd:. @prefix d2rq:. @prefix d2r:. @prefix foaf:. # Configuração do servidor e do banco <> a d2r:Server; rdfs:label "D2R Server – Hello World "; d2r:baseURI ; d2r:port 2020;. map:Database1 a d2rq:Database; d2rq:jdbcDSN "jdbc:mysql://localhost/helloworld"; d2rq:jdbcDriver "com.mysql.jdbc.Driver"; d2rq:username "root"; d2rq:password "password";. D2R Server

17 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaMapeamento # CREATE TABLE Conferences (ConfID int, Name text, Location text); map:Conference a d2rq:ClassMap; d2rq:dataStorage map:Database1. d2rq:class :Conference; d2rq:uriPattern "http://conferences.org/comp/confno@@Conferences.ConfID@@";. map:eventTitle a d2rq:PropertyBridge; d2rq:belongsToClassMap map:Conference; d2rq:property :eventTitle; d2rq:column "Conferences.Name"; d2rq:datatype xsd:string;. map:location a d2rq:PropertyBridge; d2rq:belongsToClassMap map:Conference; d2rq:property :location; d2rq:column "Conferences.Location"; d2rq:datatype xsd:string;. D2R Server

18 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaMapeamento # Relacionamentos # Tabelas: Paper (PaperID int, PaperName text); Topics (TopicID int, TopidName text) # Rel_Paper_Topic (PaperID, TopicID, RelationType); # 1 para tópico primário no paper e 2 para tópico secundário. map:primaryTopic a d2rq:PropertyBridge; d2rq:belongsToClassMap map:Paper; d2rq:property :primaryTopic; d2rq:refersToClassMap map:Topic; d2rq:join "Paper.PaperID = Rel_Paper_Topic.PaperID"; d2rq:join "Rel_Paper_Topic.TopicID = Topic.TopicID"; d2rq:condition "Rel_Paper_Topic.RelationType = 1". D2R Server

19 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Mapeamento (Estrutura) D2R Server

20 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Exemplo de Resultado D2R Server http://www4.wiwiss.fu-berlin.de/is-grouphttp://www4.wiwiss.fu-berlin.de/is-group/

21 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 21 Comparação  SPARQL -> SQL Consulta RDF – BD virtual Conceito

22 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Repositórios Repositórios  Virtuoso Openlink Software Versão 5.0.8 (2008)  Boca  IBM Adtech group (Cambridge)  Versão 2.4 (2007)  Java  Mulgara  Northrop Grumman  Versão 2.0.5 (2008)  Java

23 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaConceito Framework open source em Java para armazenar e consultar RDF e RDF Schema. Utilizado como: –BD’s para RDF e RDF Schema; ou –Biblioteca Java: Aplicações com RDF internamente. Provê ferramentas necessárias para parsear, interpretar, consultar e armazenar as informações na aplicação. Sesame

24 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaConceito O framework é independente de um dispositivo de armazenamento em específico: –BD’s relacionais; –Estrutura de dados em memória (Objetos Java em memória); –Indexadores de palavras chaves; –Repositórios de triplas Disponibiliza conjunto de ferramentas para auxiliar desenvolvedores: –Flexível API de acesso que suporta acesso local e remoto (Através de HTTP ou RMI) –Linguagens de consultas: SPARQL e SeRQL; Sesame

25 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Sesame como Biblioteca Constitui-se dos seguintes arquivos: sesame.jar: Classes centrais (core); rio.jar: Parsers e “escritores” para diferentes formatos: RDF/XML, Turtle, N-triples; openrdf-model.jar: conjunto de interfaces e classes para o modelo RDF. openrdf-util.jar: conjunto de classes úteis. Sesame

26 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Sesame como Servidor Pode ser utilizado como um servidor: aplicações clientes ou usuários humanos podem se comunicar via protocolo HTTP; Sesame

27 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaArquitetura Sesame SAIL – Camada de armazenamento e inferência: API que abstrai o formato de armazenamento utilizado: (DBMS, dados em memória, ou em arquivos.). Módulos Funcionais: Consultas; SeRQL e RQL; Exportação: Exportar dados em RDF/XML, N-Triplas, etc. Administração: Inserir RDF e RDF Schema no repositório

28 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaArquitetura 28 Sesame  Sesame Access API: Sesame Repository API: Acesso de alto-nível aos repositório Sesame: Consulta; Armazenamento arquivos RDF; Extração de RDF; Graph API: Suporte mais específico (fine-grained) para manipulação de RDF: Acrescentar ou remover sentenças ao arquivo RDF.

29 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaArquitetura 29 Sesame  Sesame Access API: Provê acesso direto ao módulo funcional para: Programa Cliente: Ex. Aplicação desktop: utiliza Sesame como uma biblioteca. Componente Servidor Sesame: provê acesso HTTP as API’s do Sesame.

30 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Outras Características 30 Sesame  Suporte a DBMS: PostgreSQL; MySQL; Microsoft SQL Server; e Oracle.  Desempenho e Escalabilidade: Em Memória: O (10^7) triplas; RDBMS e Mulgara: O(10^8) triplas. Melhorar a escabilidade em 2008: O(10^9).  Versão: 2.2 (Setembro 2008);  Plataformas: Windows; Linux; MAC OS X.

31 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa  RDF – multi-usuário  Windows & Linux  Construção, Consulta e atualização  DB2 Express C / Apache Derby Boca Configuration  Pré-requisitos (Conhecimento) Jena APIs SPARQL  Testes MySQL PostgreSQL 31 Boca O repositório

32 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa  Pré-requisitos JDK 5 (IBM/SUN) DB2 9.1  Instalação Baixar/Descompactar Configurar caminho bibliotecas DB2 Script check-dependencies  Eclipse 32 Boca Instalação

33 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Funcionalidades  Construção de RDF Grafos nomeados Replicação Segurança Histórico de revisão Notificação  Avançados Comandos Pré-condições Versionamento Boca

34 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Graph results = datasetService.getModelService(). execQuery( defaultGraphs, ≈ defaultGraphs.add(namedGraphURI); new HashSet (), query, ≈ String query = "SELECT ?s ?p ?o WHERE { ?s ?p ?o }"; "http://jena.hpl.hp.com/2003/07/query/SPARQL");http://jena.hpl.hp.com/2003/07/query/SPARQL BocaQuery Boca Grafos padrões nomeados (String) Grafos nomeados (String) Texto da Consulta (String) Linguagem de Consulta (String) Grafo

35 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Jena X Nativa  Jena String query = "SELECT ?s ?p ?o WHERE { ?s ?p ?o }"; QueryExecutionFactory.create(query, remoteModel);  Nativa execQuery(defaultGraphs, new HashSet (), query, "http://jena.hpl.hp.com/2003/07/query/SP ARQL"); Boca

36 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa BocaTextIndexing Objetos literais Lucene Expressão (sujeito, predicado e objeto) Grafo nomeado Timestamp da última atualização execQueryIndex( – String query, int startIndex, int numResult, ResultsFormat format) Exemplo: – Graph results = datasetService.getModelService().execQuer yIndex("text", 0, 10, ResultsFormat.TRIPLE) – Resultado: grafo, sujeito, predicado e objeto Boca

37 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 37 Mulgara Conceito  Armazenamento e Recuperação de metadados  Segurança  Nível de autenticação e autorização  Linux & Windows & Mac  Mul - "mull", garr - "car", ra - "huh“  Importa/Exporta RDF e N3 (3 expressões RDF)  Identificados por URLs

38 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 38 Mulgara Ferramentas  Mulgara Viewer Consulta Comandos iTQL Resultados: HTML  Descritores (Descriptors) Folha de estilo XSL Consultas complexas  interface simples

39 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 39 Mulgara Mulgara Viewer http://localhost:8080/webui/

40 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 40 Mulgara Descritores  Vantagens Definir interface para cliente Referenciados como URLs  Desvantagem Permite somente parâmetros string

41 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 41 Mulgara Descritores

42 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 42 Mulgara Instalação  Pré-requisitos Java 1.5 (Sun)  Instalação Baixar Configurar caminho Java Arquivos executáveis JAR  Eclipse

43 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 43 Mulgara Demais BDs Mulgara X BD relacional Otimizado para gerência de metadados Não lida com grandes junções Recomenda D2R Map (relacional) Linguagem XML Stylesheet Language Transformations (XSLT)(XSLT)

44 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 44 Mulgara Comandos iTQL  Básicos alias / select backup / restore comment (#) / help / quit commit / rollback create / drop insert /delete / load execute set (time/autocommit)  Avançados Views Full-Text Models (Lucene) Datatyping Models Nodetyping Models Filesystem Models

45 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 45 Mulgara Comandos iTQL  Criar novos modelos RDF create model [type]; create ;  Remover modelos drop ;  Consultar modelos  Inserir expressões (Dublin Core) insert 'John Smith' into ;  Apagar expressões delete 'John Smith' from ;  Carregar expressões (RDF/XML e N-Triple)  load into ;

46 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 46 Mulgara Consultas iTQL Identificadores de Fragmento rmi://mysite.com/server1#model7 Select select $subject $predicate from where $subject $predicate 'Title'; Alias (Default) alias as mulgara;

47 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 47 Mulgara Resolvedores  Aceitam e processam as consultas  Composto por 3 camadas: Resolvedor API Resolvedor SPI (service provider interface) Conteúdo SPI  Interno X Externo

48 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 48 Mulgara Mulgara Rules Engine (Krule)  Conjunto de regras e/ou axiomas pré- definidas  Inferências-novas expressões RDF-fatos  OWL (same as; cardinality)  Ontologias (SOFA)  Extensível (novas regras)  Sem restrições de dados

49 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 49 Mulgara Mulgara Rules Engine (Krule)

50 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 50 Mulgara Aplicações de SW  JavaServer Pages Tag Library  iTQL Shell  Simple Object Access Protocol (SOAP)  iTQL Bean  Mulgara Driver  Java RDF (JRDF)

51 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaConceito É um framework de banco de dados e aplicações para possibilitar a construção de aplicações na Web Semântica. Pode armazenar Dados e meta- dados como: –Triplas RDF; –Resultado de consultas: SPARQL e Prolog. 51 AllegroGraph

52 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Estrutura Lógia do repositório 52 AllegroGraph  Afirmações com 5 campos;  Dicionário de Strings para gerenciar Unique Part Identifier – UPI para os campos: sujeito, predicado, objeto e graph.  Criação de índices para agilizar consultas.

53 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Estrutura Lógia do repositório 53 AllegroGraph  Criação de índices Freetext para possibilitar buscas de “textos livre” (freetext).  Mantém informações sobre triplas deletadas.  As triplas que são enviadas para AllegroGraph estão em formato RDF/XML ou no formato N-tripla (uma tripla por linha).  Dados podem ser importados de RDBMS, CSV ou de outros dados formatados através da utilização de uma API.  AllegroGraph não impõe restrições a utilização de RDF de fato, fazendo ele ser um verdadeiro banco de grafos.

54 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Banco de grafos 54 AllegroGraph  Como AllegroGraph não faz restrições a RDF:  Pode armazenar quaisquer informações nos campos sujeito, predicado, objeto e grafo das suas “triplas”. -> Finalidade de acrescentar mais qualidade na representação:  Em um banco de dados de grafos:  Afirmação: Um nó s (sujeito) é conectado a um nó o (objeto) via uma aresta p (predicado) com informação adicional g (grafo).

55 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Banco de grafos 55 AllegroGraph BD de grafos podem ser mais flexíveis e rápidos do que RDBMS: Acrescentar novos predicados sem mudar o esquema; Todas as informações já estão indexadas; Relações são codificadas diretamente, sem utilizar uma tabela para relacionamento.

56 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação CapaServiços 56 AllegroGraph AllegroGraph possibilita o acesso ao seu repositório de triplas por: SPARQL consultas: resultados em RDF, XML e outros formatos; Low-level API´s: Possibilitam um rápido acesso as triplas por sujeito, predicado e objeto; Prolog: provê a construção de conceitos de alto nível que requerem complexas regras ou processamento numérico sobre dados RDF. RDFS++ Reasoning: ??? RacerPro e RacerPorter: ???

57 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Arquitetura Interna 57 AllegroGraph Repositório de armazenamento AllegroGraph é um dos tipos de classes acima; Um Abstract-triple-store define as principais interfaces que um repositório deveria implementar : Concreto: Armazena as triplas atuais do repositóri; Federado: provê mecanismos para agrupar e estruturar coleções arbitrárias de outros repositórios;

58 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Arquitetura Interna 58 AllegroGraph Encapsulado: permite acrescentar comportamentos ao armazenamento existente. Reasoning-triple- store ??? Remoto: possibilita que AllegroGraph utilize repositórios servidos por outros processos localmente ou em rede. Esses repositórios podem ser ou outros repositórios AllegroGrap ou conexões para Oracle e Sesame. Utilizando uma das dessas classes pode-se construir repositórios de dados de diferentes arquiteturas e tratá-las como se fosse um repositório único.

59 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Como acessar o repositório 59 AllegroGraph Java: Classes Java, adaptadores para trabalhar com chamadas das bibliotecas Jena e Sesame; Protocolo HTTP Sesame: possibilita acrescentar e deletar triplas, consultar por triplas individuais ou através de SPARQL;

60 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Como acessar o repositório 60 AllegroGraph Linguagens: Python, Ruby, JavaScript: quaisquer linguagems que saibam fazer requisições HTTP; Lisp; TopBrain Composer: Ferramenta comercial para modelar e editar ontologias. Utilizado para visualizar os seus dados RDF/OWL.

61 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 61 Virtuoso  BD SQL objeto-relacional  Versão open-source  Versão comercial BD virtual Replicação  Repositório WebDAV  Windows, Linux, UNIX, MacOS X. Conceito

62 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 62 Virtuoso  Transações  Compilador SQL (Suporte ao SQL 99)  Estruturas Tabelas (tables), visões (views), gatilhos (triggers) e (procedimentos) stored procedure (Java e.Net)  Hot backup  Interfaces ODBC, JDBC, ADO.Net, OLE/DB  Gerência de usuários, regras e privilégios  Estatísticas de BD  Serviços Web Características

63 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 63 Virtuoso Arquitetura

64 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 64 Virtuoso  Tabela  Coluna  Chave  Subtabela  Tipos de dados SQL-92  Novos tipos – C#  Níveis de isolamento Modelo de dados Lógico

65 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 65 Virtuoso  Controle de usuários  Grupos  Objetos  backup/recovery  Diagnóstico de desempenho  Memória  Plano de consulta  Tuning  Otimização de I/O  Utilização de índices Segurança

66 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 66 Virtuoso  Ligação com tabelas e visões remotas  Procedimentos  Mpaeamento de tipos de dados  SQL_REAL -> Real  Modelo de Transações  Funções SQL  db..vd_pass_through_function ('inf10', 'substring', 'substr');  Otimizador de consulta distribuída Banco de dados virtual

67 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 67 Virtuoso  XML  SQL -> XML  NNTP  Create/Attach News Groups  Limit Groups  Local & Remote Groups XML/NNTP

68 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 68 Virtuoso cc Conductor

69 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 69 Virtuoso  SPARUL  an Update Language For RDF Graphs  Inserção/Carga de expressões  Virtuoso Sponger  IRI dereferenciável e Linked Data  Visões RDFs  Mapeando dados relacionais para RDF  Inferência (RDF Schema/OWL)  SPARQL / SPARQL BI  Tuning RDF

70 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 70 Virtuoso  Extensão SPARQL  Resultados  Sobconsultas  Agregações  Agrupamentos SPARQL BI

71 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 71 Virtuoso  Índices  G = Grafo  P = Predicado  O = Objeto  S = Sujeito  create bitmap index RDF_QUAD_PGOS on DB.DBA.RDF_QUAD (G, P, O, S); Tuning Grafos especificados e índices default Grafos não especificados e índices alternativos

72 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 72 Virtuoso  Chaves primárias/estrangeiras -> IRI  Coluna -> predicado IRI  Linha -> predicado rdf:type  Classe IRI RDF -> tabela  Tripla:  Sujeito: chave primária  Predicado: coluna  Objetos: valores da coluna Relacional -> RDF

73 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 73 Comparação Desempenho OLTP Suporta SPARQL SGBD D2R Server Sim Ferramenta Sesame Sim Não BOCA NãoSimNão (DB2) Mulgara Não???/iTQL??? AllegroGraph NãoSimNão Virtuoso Sim Comparação entre repositórios

74 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 74 Comparação Comparação entre repositórios  128 consultas  126 consultas

75 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 75 Comparação Comparação entre repositórios

76 Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa 76 Comparação Comparação entre repositórios


Carregar ppt "Ferramentas Triplify D2R Server Virtuoso Boca Repositórios Mulgara AllegroGraph Sesame Comparação Capa Ferramentas e Repositórios RDF Ana Carolina Almeida."

Apresentações semelhantes


Anúncios Google