Primeros pasos con neo4j

Lenguaje de consulta cifrado

Este es el Cypher, el lenguaje de consulta de Neo4j. En muchos sentidos, Cypher es similar a SQL si está familiarizado con él, excepto que SQL se refiere a los elementos almacenados en una tabla, mientras que Cypher se refiere a los elementos almacenados en un gráfico.

Primero, debemos comenzar aprendiendo cómo crear un gráfico y agregar relaciones, ya que eso es esencialmente de lo que se trata Neo4j.

CREATE (ab:Object { age: 30, destination: "England", weight: 99 })
  • Usas CREAR para crear datos
  • Para indicar un nodo se utiliza paréntesis: ()
  • La parte ab:Object se puede dividir de la siguiente manera: una variable ‘ab’ y la etiqueta ‘Object’ para el nuevo nodo. Tenga en cuenta que la variable puede ser cualquier cosa, pero debe ser coherente en una línea de Cypher Query
  • Para agregar propiedades al nodo, use corchetes: {} corchetes

A continuación, aprenderemos a encontrar COINCIDENCIAS

MATCH (abc:Object) WHERE abc.destination = "England" RETURN abc;

COINCIDIR especifica que desea buscar un cierto patrón de nodo/relación (abc:Objeto) se refiere a un Patrón de nodo (con la etiqueta Objeto) que almacena las coincidencias en la variable abc. Puedes pensar en toda esta línea como la siguiente

abc =  find the matches that is an Object WHERE the destination is England.

En este caso, WHERE agrega una restricción que es que el destino debe ser Inglaterra. Debe incluir un retorno al final para todas las consultas MATCH (neo4j no aceptará solo una coincidencia… su consulta siempre debe devolver algún valor [esto también depende del tipo de consulta que esté escribiendo… hablaremos más sobre esto más adelante, ya que presentamos los otros tipos de consultas que puede realizar].

La siguiente línea se explicará en el futuro, después de repasar algunos elementos más del lenguaje de consulta Cypher. ¡Esto es para darle una idea de lo que podemos hacer con este lenguaje! A continuación, encontrará un ejemplo que obtiene el elenco de películas cuyo título comienza con ‘T’

MATCH (actor:Person)-[:ACTED_IN]->(movie:Movie)
WHERE movie.title STARTS WITH "T"
RETURN movie.title AS title, collect(actor.name) AS cast
ORDER BY title ASC LIMIT 10;

Puede encontrar una lista completa de comandos y su sintaxis en la Tarjeta de referencia de cifrado de Neo4j aquí.

Instalación o Configuración

Vaya a Instalar Neo4j, que debería detectar la plataforma del sistema operativo a través de su navegador web, descargue y siga las instrucciones de instalación habituales para su sistema operativo.

Neo4j se creó con Java, por lo tanto, se ejecutará en cualquier plataforma con Java instalado; sin embargo, el equipo de Neo4j ha simplificado la instalación al proporcionar paquetes de instalación fáciles para plataformas populares (por ejemplo, un .dmg para Mac, un .deb para Debian y Ubuntu, un .exe para plataformas Windows de 64 y 32 bits…).

Para revisar otras versiones y plataformas disponibles, consulte Página de otras versiones de Neo4j

Configure Neo4j como un contenedor Docker:

## Required : Docker machine, docker cli

# Pull neo4j image from the docker hub
docker pull neo4j

# create the docker container
docker run \
    --publish=7474:7474 --publish=7687:7687 \
    --volume=$HOME/neo4j/data:/data \
    neo4j

# If you are running docker directly on the host (e.g ubuntu, RHEL, CentOs etc)
#     Access the neo4j console at http://localhost:7474
# If you are on OSX/ Windows
#     Access the neo4j console at http://<docker-machine-ip>:7474

Instalación e inicio de un servidor Neo4j

Pasos previos:

  • Instale Java en su máquina
  • Visite el sitio web de neo4j y haga clic en el enlace “Descargar Community Edition” o visite directamente el enlace de descarga.
  • Descomprima el archivo .tar descargado en su directorio de inicio

Inicie Neo4j desde la consola (sin cabeza, sin servidor web)

  • Visita el subdirectorio /bin de la carpeta extraída y ejecuta en la terminal ./Consola neo4j
  • Ahora puede ejecutar consultas neo4j en la terminal

Inicie el servidor web Neo4j

  • Visite el subdirectorio /bin de la carpeta extraída y ejecute en la terminal ./inicio neo4j
  • Visite http://localhost:7474/
  • Solo la primera vez, tendrás que iniciar sesión con la cuenta predeterminada y cambiar la contraseña predeterminada. A partir de la versión comunitaria 3.0.3, el nombre de usuario y la contraseña predeterminados son neo4j y neo4j.
  • Ahora puede insertar consultas Neo4j en la consola provista en su navegador web e investigar visualmente los resultados de cada consulta.

Inicie el servidor web Neo4j

Cada servidor de Neo4j actualmente (en la edición de la comunidad) puede alojar una única base de datos de Neo4j, por lo que para configurar una nueva base de datos:

  • Visite el subdirectorio /bin y ejecute ./neo4j stop para detener el servidor
  • Visite el subdirectorio /conf y edite el archivo neo4j.conf, cambiando el valor del parámetro dbms.active_database por el nombre de la nueva base de datos que desea crear.
  • Visite nuevamente el subdirectorio /bin y ejecute ./neo4j start
  • El servidor web ha comenzado de nuevo con la nueva base de datos vacía. Puede visitar nuevamente http://localhost:7474/ para trabajar con la nueva base de datos.
  • La base de datos creada se encuentra en el subdirectorio /data/databases, en una carpeta con el nombre especificado en el parámetro dbms.active_database.

Eliminar una de las bases de datos

  • Asegúrese de que el servidor Neo4j no se esté ejecutando; vaya al subdirectorio /bin y ejecute ./neo4j status. Si el mensaje de salida muestra que el servidor se está ejecutando, ejecute también ./neo4j stop.
  • Luego vaya al subdirectorio /data/databases y elimine la carpeta de la base de datos que desea eliminar.

RDBMS Vs Base de datos de gráficos

RDBMS Base de datos de gráficos
Mesas gráficos
Filas Nodos
Columnas y Datos Propiedades y sus valores
Restricciones Relaciones
Une El recorrido