Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Graph Databases no SQL Server 2017
Dennes Torres Graph Databases no SQL Server 2017
2
Speaker Bio Arquiteto de Software Instrutor
Diretor da Búfalo Informática Instrutor MCT, MCSE Data Platform, MCSE BI, MCSD Web Development Líder do devSQL PASS Chapter Rio de Janeiro DevSQL Bufaloinfo Dennes.Torres @Dennes
4
PosConference – 01/10 - SP +Info: Inscrições
Local: Microsoft Brasil – SP Valor: R$150,00 100% do dinheiro para caridade Inscrições
5
Download PPT e Scripts Video da apresentação:
6
Agenda O que são Modelo Relacional x Graph Como criar Nós e Edges
Pseudo-Campos Como inserir dados Como consultar dados
7
O que são Graph Databases são mais focados em relacionamentos
Permitem a representação de grafos Mais adequados para alguns cenário
8
Graph Databases Graph Databases AllegroGraph ArangoDB BlazeGraph
Cayley
9
Modelo Relacional
10
Modelo Graph
11
Como Funciona no SQL Server
Tabelas Graph são um novo tipo de tabela dentro do banco Um banco relacional pode conter tabelas graph As tabelas podem interagir entre si Um modelo pode ser relacional, Graph ou misto Internamente, utilizam estruturas em JSON
12
Como Criar As entidades principais são nós
Os relacionamentos são edges Nós e Edges são tabelas Nós, em geral, contém atributos Edges podem conter atributos ou não
13
Criando um nó CREATE TABLE [dbo].[ForumMembers]( [MemberID] [int] IDENTITY(1,1) NOT NULL, [MemberName] [varchar](100) NULL ) AS NODE
14
Criando um Edge Create table dbo.[Written_By] as EDGE
15
Nó
16
Edge
17
Pseudo-Campos Atalhos para os campos reais em nós e edges Nós: Edges:
$node_id Edges: $edge_id $from_id $to_id
18
Apenas ignoramos a presença do $node_id
Inserindo dados no nó Apenas ignoramos a presença do $node_id O valor de $node_id será gerado automaticamente
19
Inserindo relacionamentos no Edge
Insert into Written_By ($to_id,$from_id) values ( (select $node_id from dbo.ForumMembers where MemberId= 1 ), (select $node_id from dbo.ForumPosts where PostID=8 ) )
20
Demo: Criação e inserção
21
Queries
22
MATCH Aplicado na clausula where Substitui as relações de chaves
Indica o relacionamento entre nós e edges MATCH (Post1-Written_By->Member) Post.$node_id=Written_By.$From_id AND Member.$node_id=Written_By.$to_id
23
Demo: Queries
24
Limitações Não é possível usar MATCH com uma tabela derivada
Transitive Closure não está disponível na primeira versão Polimorfismo nas queries também não está disponível Funções de graph, tal como ‘shortest path’, não estão disponíveis Constraints não são suportadas Não existe síntaxe específica para validação de Edges
25
Demo: Validação
26
Links
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.