neo4jEmpezando con neo4j


Observaciones

Esta sección proporciona una descripción general de qué es neo4j y por qué un desarrollador puede querer usarlo.

También debe mencionar cualquier tema importante dentro de neo4j, y vincular a los temas relacionados. Dado que la Documentación para neo4j es nueva, es posible que deba crear versiones iniciales de los temas relacionados.

Cypher Query Language

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

Primero, debemos comenzar por aprender 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 CREATE para crear datos
  • Para indicar un nodo, utiliza paréntesis: ()
  • La parte ab: Object se puede desglosar 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 paréntesis: {} corchetes

A continuación, aprenderemos sobre cómo encontrar PARTIDOS.

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

MATCH especifica que desea buscar un patrón de relación / nodo determinado (abc: Object) se refiere a un patrón de nodo (con objeto de etiqueta) que almacena las coincidencias en la variable abc. Puedes pensar en esta línea entera como la siguiente

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

En este caso, DONDE agrega una restricción que es que el destino debe ser Inglaterra. Debe incluir una devolución al final de todas las consultas de 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 a medida que introducimos los otros tipos de consultas que puede hacer].

La siguiente línea se explicará en el futuro, después de que veamos algunos elementos más del lenguaje de consulta Cypher. ¡Esto es para darle una idea de lo que podemos hacer con este idioma! A continuación, encontrará un ejemplo que muestra el reparto 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 los comandos y su sintaxis en la Tarjeta de referencia de cifrado oficial de Neo4j aquí .

Instalación e inicio de un servidor Neo4j

Prerrequisitos pasos:

  • Instala Java en tu 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 descargado .tar en su directorio personal

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

  • Visite el subdirectorio /bin de la carpeta extraída y ejecute en la terminal ./neo4j console
  • Ahora puedes ejecutar consultas neo4j en el terminal.

Iniciar servidor web Neo4j

  • Visite el subdirectorio / bandeja de la carpeta extraída y ejecute en la terminal ./neo4j start
  • Visite http: // localhost: 7474 /
  • Solo la primera vez, tendrá que iniciar sesión con la cuenta predeterminada y cambiar la contraseña predeterminada. A partir de la versión 3.0.3 de la comunidad, 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.

Iniciar servidor web Neo4j

Cada servidor Neo4j actualmente (en la edición comunitaria) puede alojar una sola base de datos Neo4j, así 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 al 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; ./neo4j status al subdirectorio / bin y ejecute el ./neo4j status . Si el mensaje de salida muestra que el servidor se está ejecutando, también ejecute ./neo4j stop .

  • Luego vaya al subdirectorio / datos / bases de datos y elimine la carpeta de la base de datos que desea eliminar.

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 fue creado con Java, por lo tanto, se ejecutará en cualquier plataforma con Java instalada, sin embargo, el equipo de Neo4j ha simplificado la instalación al proporcionar paquetes de instalación fáciles para la plataforma popular (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 la página de otras versiones de Neo4j

Configura 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
 

RDBMS Vs Graph Database

RDBMS Base de datos gráfica
Mesas Graficas
Filas Nodos
Columnas y datos Propiedades y sus valores.
Restricciones Relaciones
Se une Travesía