Introducción a la base de datos de gráficos neo4j

  • Introducción a neo4j
    • Base de datos de gráficos
    • Configuración de variables de entorno (requiere entorno Java): NEO4J_HOME + directorio de archivos; Ruta:% NEO4J_HOME% \ bin; ingrese en la ventana de comandos: consola neo4j y luego ingrese neo4j install-service para instalar el servicio localmente; neo4j start inicia el servicio y
      abre el navegador de datos: http : // localhost: 7474 / browser /
    • Almacenamiento de datos: almacene datos en una estructura de gráfico, que puede almacenar nodos, atributos (pares clave-valor) y bordes del gráfico. Los atributos y nodos se almacenan por separado y la relación entre atributos y nodos constituye bordes.
    • Lectura y escritura de datos: En Neo4j, la tecnología de adyacencia sin índices se utiliza al almacenar nodos, es decir, cada nodo tiene un puntero a su nodo vecino, lo que nos permite encontrar el nodo vecino cuando la complejidad del tiempo es O (1) . Además, según el comunicado oficial, el borde es el más importante en Neo4j, que son Entidades de Primera, por lo que se almacena por separado, lo que es más propicio para mejorar la velocidad a la hora de atravesar el gráfico, y también se puede atravesar fácilmente en cualquier dirección.
    • Otros similares: Flockdb, Orientdb, Arangodb. Neo4j tiene la mejor estabilidad
  • Uso de Neo4j
    • La relación es direccional (use fusionar al crear una relación, luego regrese, si no, cree; use create, siempre creará)

    • La base de datos de gráficos almacena todos sus datos en nodos y relaciones, y almacena los datos en forma de gráficos en el formato nativo.

    • Use el motor GPE nativo para usar su formato de almacenamiento de imágenes nativo

    • Una relación puede tener un atributo como un par clave-valor. Por ejemplo: ID = 123

    • Las etiquetas asocian un conjunto de nodos o relaciones comunes, y los nodos o relaciones pueden contener una o más etiquetas

    • Use () para identificar el nodo, use [] para identificar la relación

    • crear Crear
      coincidencia de nodo, relación y atributo Recuperar nodo relacionado, relación y atributo
      retorno Devolver el resultado de la consulta
      donde Proporcionar la condición para recuperar datos
      eliminar eliminar nodo y relación
      eliminar eliminar el
      orden de atributos de nodo y relación ordenando recuperar
      conjunto de datos Agregar o actualizar etiqueta

    • booleano Tipo booleano: verdadero, falso
      byte entero de 8 bits
      corto entero de 16 bits
      int Entero de 32 bits
      largo entero de 64
      bits flotante número de coma flotante de 32 bits
      doble número de coma flotante de 64 bits
      char Carácter de 16 bits
      Cadena de cadena

    • El servidor de base de datos de Neo4j usa <nombre-nodo> para almacenar los detalles del nodo en la base de datos. Como Neo4j DBA o Desarrollador, y no se puede usar para acceder a los detalles del nodo. El
      servidor de base de datos Neo4j crea un <nombre-etiqueta> como alias para el nombre del nodo interno . Utilice este nombre de etiqueta para acceder a los detalles del nodo

    • Match debe usarse con return, set y delete

    • Modificación del archivo de configuración de neo4j

    • match (a:author) set a.name="wu" return a      #增加属性或者修改属性。这里'a'是给'author'起个"变量名",下面类似
      match (n:author) where n.name=~'w*' return n   #可以使用正则匹配
      match (n:author) where n.name contains 'w' return n   #包含查询
      DETACH DELETE    #子句允许你删除一个节点的同时删除与其相连的所有关系
      match(c:Customer) where id(c)=110 delete c return c    #根据节点id删除节点
      match (c:Creditcard) where id(c)=111 set c.name="工商银行" return c  #根据节点id增加属性
      match (c:Customer) match (a:Creditcard) create (a)-[r:消费]->(c)  return r    #创建关系                                                
      match (w:weibo),(c:chaping) where w.emot=0 create (w)-[r1:差评]->(c) return r1 #根据属性建立节点关系
      MATCH p=()-[r:`消费`]->() where id(r)=0 set r.`额度`=200000 return r #创建关系的属性
      match (c:Customer) return c.name as name,c.id as id union match (a:Creditcard) return a.id as id,a.name as name        #联合查询,此处id只能返回节点属性里设置的id,默认节点id会返回null.(union查询会过滤掉重复行,union all 返回所有数据)
      create(drop) index on :author(name)   #创建/删除索引
      create(drop) constraint on (a:author) assert (a:author) is unique  #创建/删除约束
      
    • APOC (un paquete de componentes) :

      • Dos paquetes jar, colóquelos en el directorio de complementos de neo4j: apoc-3.4.0.3.jar y mysql-connector-java-5.1.21.jar
      • Índices de texto y búsqueda (búsqueda de texto e índice)
      • funciones de utilidad (funciones de utilidad): extracción de nombre de dominio, hora, fecha, conversión de formato de datos y otras funciones
      • algoritmos de gráficos: detección de comunidades, PageRank, algoritmo central, etc.
      • Espacial (función espacial): geocodificación, cálculo de ubicación, búsqueda de espacio y tiempo, etc.
      • integración de datos: JSON, JDBC, CSV y otra carga de datos
      • refactorizaciones de gráficos: fusión de nodos, especificación y clasificación de atributos, etc.
      • nades / rels virtuales (nodos / relaciones virtuales): proporciona la creación de gráficos virtuales
      • operaciones de cifrado: operación de instrucción de cifrado única y múltiple y operación de script
      • Disparadores (disparadores): la misma forma de entender los disparadores que las bases de datos relacionales
    • Grupo de datos triple de importación de Neo4j

      • Apague el servicio neo4j de la computadora
      • Elimine el archivo de base de datos predeterminado \ datos \ bases de datos \ graph.db de neo4j; de lo contrario, cree un nuevo archivo de base de datos bajo esta ruta, el nombre del archivo es ***. Db, y luego modifique el archivo de configuración de neo4j \ conf \ neo4j.conf, modifique Oficina: # dbms.active_database = graph.db, cambie el nombre de su base de datos recién creada y descomente
      • Hay muchas formas de importar datos, utilicé el método de importación para colocar el nodo organizado csv y la relación csv en el archivo de importación de neo4j
      • 导入 文件 命令 : neo4j-admin import --nodes E: \ neo4j-community-3.5.14 \ import \ entity.csv --relationships E: \ neo4j-community-3.5.14 \ import \ relationship.csv --multiline- campos = verdadero --ignore-missing-nodes = verdadero
      • Abra el servicio neo4j, ingrese al sitio web de visualización incorporado para ver la base de datos de gráficos

Supongo que te gusta

Origin blog.csdn.net/weixin_46046193/article/details/108632351
Recomendado
Clasificación