首页 > 其他分享 >neo4j

neo4j

时间:2023-09-22 14:55:06浏览次数:31  
标签:code ObjectNode projectId groupCode neo4j line id


公司数据导入:
load csv WITH HEADERS from "file:///dt_object_sjtb.csv" as line
create (:ObjectNode {objId:line.objId, name:line.name,localId:line.local_id,localName:line.local_name,groupCode:line.group_code, projectId:line.project_id,objType:line.obj_type,
classCode:line.class_code, grouping:toInteger(line.grouping),infos:line.infos,virtualCodes:line.virtual_codes,createApp:line.create_app,updateApp:line.update_app,creator:line.creator,creationTime:line.creation_time,modifier:line.modifier,modifiedTime:line.modified_time,valid:toInteger(line.valid)})

create constraint for(o:ObjectNode) require (o.objId,o.projectId,o.groupCode) is unique;
CREATE INDEX FOR (o:ObjectNode) ON(o.projectId,o.groupCode);
CREATE INDEX FOR (o:ObjectNode) ON(o.classCode,o.projectId,o.groupCode);
CREATE INDEX FOR (o:ObjectNode) ON(o.objId);

 

load csv WITH HEADERS FROM "file:///dt_relation_sjtb.csv" AS line
match (from:ObjectNode{objId:line.obj_from,groupCode:line.group_code,projectId:line.project_id}),(to:ObjectNode{objId:line.obj_to,groupCode:line.group_code,projectId:line.project_id})
merge (from)-[r:ObjectNodeRelation{groupCode:line.group_code,projectId:line.project_id,graphCode:line.graph_code,relCode:line.rel_code,rId:line.rId}]->(to)


load csv WITH HEADERS FROM "file:///dt_relation_1.csv" AS line
match (from:ObjectNode{objId:line.obj_from,groupCode:line.group_code,projectId:line.project_id}),(to:ObjectNode{objId:line.obj_to,groupCode:line.group_code,projectId:line.project_id})
merge (from)-[r:line.graph_code-line.rel_code{groupCode:line.group_code,projectId:line.project_id,graphCode:line.graph_code,relCode:line.rel_code,rId:line.rId}]->(to)

MATCH (n) where n.classCode="a" and id(n)<500000 detach delete n

 

关系索引后建,导入关系才快(最后建关系索引)

CREATE INDEX FOR ()-[r:ObjectNodeRelation]->() ON(r.relCode,r.graphCode,r.projectId,r.groupCode);
CREATE INDEX FOR ()-[r:ObjectNodeRelation]->() ON(r.projectId,r.groupCode);


//create constraint FOR ()-[r:ObjectNodeRelation]->() require (r.rId,r.projectId,r.groupCode) is unique;
//CREATE constraint on ()-[r:ObjectNodeRelation]-() ASSERT exists(r.rId,r.projectId,r.groupCode)


//Property existence constraint requires Neo4j Enterprise Edition
CREATE CONSTRAINT rId_index FOR ()-[r:ObjectNodeRelation]-() REQUIRE r.rId IS NOT NULL


drop constraint constraint_596248c4
drop index constraint_596248c4


1. ./bin/neo4j stop
2. 删除历史数据和文件。
rm -rf /data/databases/neo4j/*
rm -rf /data/transactions/neo4j/*
3. ./bin/neo4j-admin database import full --nodes import/dt_object_2.csv --relationships import/dt_relation_2.csv --multiline-fields=true
4. ./bin/neo4j start

 

标签:code,ObjectNode,projectId,groupCode,neo4j,line,id
From: https://www.cnblogs.com/shijianchuzhenzhi/p/17722362.html

相关文章

  • 在线问诊 Python、FastAPI、Neo4j — 创建 节点关系
    目录关系:症状-检查关系:疾病-症状代码重构relationship_data.csv症状,检查,疾病,药品,宜吃,忌吃"上下楼梯疼,不能久站,感觉有点肿","膝关节核磁","右膝髌上囊及关节腔少量积液","扶他林","西红柿,香蕉","辣椒,大蒜""眼睛胀痛,干涩,畏光,眼胀,眼痛,看东西有时候清楚有时候不清楚......
  • 构建基于neo4j知识图谱、elasticsearch全文检索的数字知识库
    前言:在数字化时代,知识库的建设正逐渐成为企业、学术机构和个人的重要资产。本文将介绍如何使用neo4j和elasticsearch这两种强大的数据库技术来构建知识库,并对其进行比较和探讨。技术栈:springboot+vue+neo4j+elasticsearch+activiti+mysql源码获取:Q+:3588019357正文:首先,让......
  • 在线问诊 Python、FastAPI、Neo4j — 创建 饮食节点
    目录饮食数据创建节点根据疾病、症状,判断出哪些饮食不能吃,哪些建议多吃饮食数据foods_data.csv建议值用“”引起来。避免中间有,号造成误识别饮食"辣椒""大蒜""芥末""海鲜""胡萝卜""核桃仁""菠菜""西红柿""香蕉"创建节点重构代码,将defexecute_write(sel......
  • 在线问诊 Python、FastAPI、Neo4j — 创建 疾病节点
    目录疾病数据创建节点根据检查结果、医生的临床经验得出疾病疾病数据disease_data.csv建议值用“”引起来。避免中间有,号造成误识别疾病"干眼""右膝髌上囊及关节腔少量积液"创建节点importloggingimportpandasaspdfromutils.neo4j_providerimportdriverloggi......
  • 在线问诊 Python、FastAPI、Neo4j — 创建 检查节点
    目录症状数据创建节点根据不同的症状,会建议做些相对应的检验、检查症状数据examine_data.csv建议值用“”引起来。避免中间有,号造成误识别检查"膝关节核磁""眼睛酸胀""视力""砂眼""辨色力""角膜""眼底"创建节点参考创建药品节点。importloggingfromutils.neo......
  • 在线问诊 Python、FastAPI、Neo4j — 创建症状节点
    目录参考创建药品节点。importloggingfromutils.neo4j_providerimportdriverlogging.root.setLevel(logging.INFO)#并生成CQLdefgenerate_cql()->str:cql="""CREATE(symptom1:Symptom{name:"膝盖疼"}),(symptom2......
  • 图数据库之neo4j
    一、Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数......
  • 在线问诊 Python、FastAPI、Neo4j — 创建节点
    目录前提条件创建节点Demo准备数据在线问诊Python、FastAPI、Neo4j—创建节点Neo4j节点的标签可以理解为Java中的实体。根据常规流程:首先有什么症状,做哪些对应的检查,根据检查诊断什么疾病,需要用什么药物治疗,服药期间要注意哪些饮食,需要做哪些运行在线问诊大概创建:症状......
  • Python FastAPI 异步获取 Neo4j 数据
    前提条件先往Neo4j里,准备数据参考:https://www.cnblogs.com/vipsoft/p/17631347.html#创建传承人搭建FastAPI项目:https://www.cnblogs.com/vipsoft/p/17684079.html改造utils/neo4j_provider.py增加了暴露给外面调用的属性,同时提供了同步和异步执行的驱动#!/usr/bin/py......
  • Python连接Neo4j工具比较 Neo4j Driver、py2neo
    Python有许多可以连接Neo4j的库和工具,以下是一些常用的:Neo4jDriverforPython这是官方提供的Python驱动程序,它使用Cypher查询语言与Neo4j数据库进行交互。您可以使用此驱动程序与Neo4j数据库建立连接,执行查询和管理事务。优点:官方提供的驱动程序,支持最新的Neo4j版本,提供完整......