0% encontró este documento útil (0 votos)
78 vistas3 páginas

Tutorial básico de Neo4j y Cypher

Este documento presenta un tutorial básico sobre Neo4j y su lenguaje de consulta Cypher. Explica cómo instalar Neo4j, crear nodos y relaciones mediante comandos Cypher y visualizar el grafo resultante. También muestra ejemplos de queries para recuperar atributos de nodos y relaciones específicas.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
78 vistas3 páginas

Tutorial básico de Neo4j y Cypher

Este documento presenta un tutorial básico sobre Neo4j y su lenguaje de consulta Cypher. Explica cómo instalar Neo4j, crear nodos y relaciones mediante comandos Cypher y visualizar el grafo resultante. También muestra ejemplos de queries para recuperar atributos de nodos y relaciones específicas.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

TUTORIAL de NEO4J

En este tutorial vamos a aprender los comandos básicos y la sintaxis de Cypher. También
utilizaremos la herramienta de visualización Screencast.

Lo primero que debemos hacer es descargar Neo4j de la página web. Trabajaremos con
la community edition, que es gratuita y ofrece todas las funcionalidades necesarias apra
proyectos pequeños:

[Link]

Una vez instalado, lo abrimos y utilizamos la ubicación por defecto para lanzar Neo4j en el
navegador. En Chrome o Firefox navegamos a:

[Link]

Y ya podemos empezar.

Introducción a Cypher:

Cypher es el lenguaje propio de Neo4j. Su sintaxis utiliza un estilo ascii-art para hacer los
comandos muy intuitivos.

Los nodos se representan con círculos y las relaciones con flechas. Su representación en
ascii-art consiste en poner nodos entre paréntesis y relaciones como flechas etiquetadas
por corchetes:
(nodo)-[:RELACIÓN]->(nodo)

Las propiedades de los nodos o las relaciones se indican con una estructura parecida a
un diccionario:
(nodo {name:'Oscar', surname:'Garcia'})

las etiquetas se indican después de definir la variable:

(nodo:Person {name:'Oscar', surname:'Garcia'})

Empezamos por crear un nodo:


CREATE (os {name:'Óscar', surname:'García'})

Veamos si se ha creado:
MATCH (n) RETURN n

Creemos un par de nodos más:


CREATE
(va {name:'Vanessa', surname:'Gómez'}),
(co {name:'Coffee', type:'Drink'}),
(na {name:'Napolitana', type:'Dessert'})
Visualizemos el grafo:
MATCH (n) RETURN n

Vamos a añadir algunas etiquetas (ejecutar cada linea por separado):


MATCH (os {name:'Óscar'}) SET os:Person
MATCH (va {name:'Vanessa'}) SET va:Person
MATCH (co {name:'Coffee'}) SET co:Food
MATCH (na {name:'Napolitana'}) SET na:Food

Visualicemos otra vez para ver el cambio.

Ahora vamos a establezer una relación entre dos nodos:


MATCH (o {name:'Óscar'}), (c {name:'Coffee'})
CREATE (o)-[:ADDICTED_TO]->(c)

Podemos crear relaciones entre nodos de forma simultanea:


MATCH (p:Person), (f:Food)
CREATE (p)-[:CONSUME]->(f)

Ahora vamos a crear un par de nodos más y relacionarlos en un sólo bloque:


CREATE
(sug:Ingredient {name:'Sugar', type:'Liquid'}),
(wat:Ingredient {name:'Water', type:'Liquid'})
WITH sug, wat
MATCH
(na {name:'Napolitana'}),
(co {name:'Coffee'})
CREATE
(sug)-[:REQUIRED]->(na),
(wat)-[:REQUIRED]->(co)

Ahora hagamos una query sencilla para visualizar los nodos con la etiqueta Person:
MATCH (n:Person) RETURN n

Hagamos la misma query pero visualizando un par de atributos en forma tabular:


MATCH (n:Person) RETURN [Link] AS Names, [Link] AS Surnames

Probemos una query relacional:


MATCH (o {name:'Óscar'})-[:CONSUME]->(f) RETURN f

La misma query pero visualizando un atributo en formato tabular:


MATCH (o {name:'Óscar'})-[:CONSUME]->(f) RETURN [Link] AS Food

Un par de queries más. ¿Qué hacen?:


MATCH (o {name:'Óscar'})-[r]-(f) RETURN type(r)
MATCH (n:Person) WHERE [Link] = 'Vanessa' RETURN [Link] AS
Surname
Ya estamos listos para hacer el tutorial con el movie graph. Primero eliminemos
completamente nuestro grafo:
MATCH (n) DETACH DELETE n

Este comando sólo es útil con grafos pequeños, pero de momento nos sirve.

A continuación iniciaremos el tutorial de Neo4j que emplea una base de datos de


películas, actores y directores:
:play movie graph

Gracias!

También podría gustarte