graph databases titan - ufpr · graph databases titan raqueline penteado. definições •graph...

Post on 29-Sep-2020

2 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Graph DatabasesTitan

Raqueline Penteado

Definições

• Graph database

– Um SGBD em Grafo é um sistema de gerenciamento de dados online com métodos CRUD (Create, Read, Update, and Delete - CRUD) para manipular um modelo de dados em grafo.

– G = (V, E)

Definições

Definições

• Alguns pontos importantes

– Armazenamento físico (underlying storage)• Nativo

• Relacional…

– Processamento (processing engine)• Tipos de consultas

– Algoritmos

• Índices

– Distribuição• Dados

• Consulta

Titan

• Classificação/características

• Arquiteturas

• Formas de armazenamento

• Indexação

• Consultas

• Transações

• Comparações

**Cassandra

Exemplos

Características

• Transacional

• Suporte a grande volume de dados

• Escalável

– Usuários/Dados

• Distribuição e replicação de dados

• Licença

– Open source com licença Apache 2

Características

• Formas de armazenamento

– Cassandra , Hbase e Oracle BerkeleyDB

• Integração nativa com Tinkerpop

– Gremlin: linguagem de consulta

– Frames: mapeia objeto-para-grafo

– Rexster: servidor de grafos

– Blueprints: API padrão para banco de dados em grafos

– Suporta• Neo4j, Titan, OrientDB, DEX, TinkerGraph

Características

Arquiteturas

• Modo servidor local

• Modo servidor remoto

Arquiteturas

• Modo servidor remoto com Rexster

• Modo embutido

Arquiteturas

• Operações globais – Faunus

Arquiteturas

• Operações globais – Faunus

– OLAP

– RDF

Armazenando

Armazenando

Armazenando

Armazenando

• Memória (TinkerGraph)

Armazenando

• Cassandra

– Via Gremlin

• Cassandra

– Lista de adjacência em uma

família de colunas

– Chave (key) da linha = Id_vértice

– Cada propriedade e aresta é uma coluna

– Índices• Vértices

– .index()

• Arestas

– Primarykey

Armazenando

Armazenando

Armazenando

Indexando

Consultando

• Gremlin

Consultando

Consultando

• Combinando padrões de triplas

Consultando

• Combinando padrões de triplas

Consultando

• Combinando padrões de triplas

Consultando

• Scripts

– Conjunto de operações• Ler um grafo

• Consultar o grafo

• Armazenar o resultado em um arquivo

• Ler outro grafo

• Consulta o grafo

• Armazenar o resultado em um arquivo

• Trabalhar com o resultado do arquivo

• Enviar resposta ao usuário

Transações

• Isolamento, concorrência, consistência eventual

• Uma operação inicia a transação (primeira)

• A transação é finalizada explicitamente com commit(), roolback() ou shutdown() (commitautomaticamente)

Comparando

Salim Jouili e Aldemar Reynaga. imGraph: A distributed in-memory graph database. ASE/IEEE International Conference on Big Data. 2013.

top related