从数据生成到图数据库:Linux下Neo4j的CSV导入

2024-08-24 18:28

本文主要是介绍从数据生成到图数据库:Linux下Neo4j的CSV导入,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • 简介
    • 找到import文件夹
    • 准备csv表格数据
    • 导入neo4j
      • Teacher
      • Student

简介

介绍如何在Linux系统中设置和使用Neo4j数据库。

  • 首先,找到Neo4j的import文件夹,通常位于Neo4j安装目录下的data文件夹内,并展示通过neo4j.conf配置文件查找和修改import目录路径。
  • 接着,通过大模型生成两张CSV表格数据,一张是老师数据,另一张是学生数据,并保存到import文件夹中。
  • 最后,展示了如何使用Cypher语句将这两张表格导入Neo4j,创建相应的节点和关系。

找到import文件夹

在Linux系统中,Neo4j的import目录通常位于Neo4j安装目录下的data文件夹内。
linux neo4j 标准的安装步骤:ubuntu sudo apt-get install neo4j 配置安装与设置远程访问
按照上述文章,进行配置后,就可以通过终端安装 neo4j:
安装完成后,neo4j的配置文件在 /etc/neo4j下。

sudo apt-get install neo4j

Neo4j的配置文件(通常是neo4j.conf)允许你自定义import目录的路径。这个文件通常位于Neo4j安装目录下的conf文件夹中。通过修改配置文件中的dbms.directories.import属性,你可以将import目录设置为你希望的任何绝对路径。
例如,如果你想要将import目录设置为/home/neo4j/import,你可以在neo4j.conf文件中找到dbms.directories.import属性,并将其值更改为/home/neo4j/import。

进入 /etc/neo4j 目录下,可以看到 neo4j.conf 文件:
在这里插入图片描述

vim neo4j.conf

在这里插入图片描述如上图配置文件所示,我的 neo4j 的 import 文件夹是 /var/lib/neo4j/import

cd /var/lib/neo4j/import

准备csv表格数据

自己准备数据,一时之间,还不知道去哪里找。所以我让大模型帮我生成两张数据表。

下述是大模型生成数据的提示词:

请你给出5条老师csv数据,包括:姓名、年龄;
给出10条学生csv数据,包括:姓名、年龄、老师、关系;
在生成表格数据时,遵守下述规则:
1. 学生表的老师属性与老师表的姓名是对应的;
2. 学生和老师的姓名,都是全名。老师名字要带有80后的时代特点,学生名字要带有00后的时代特点;
3. 学生表中的关系属性,范围是从50到100;

下述的两张表,是由大模型根据上述提示词生成:

teacher.csv:

姓名,年龄
张伟,38
李娜,40
王强,39
赵敏杰,42
刘丽芳,37

student.csv:

姓名,年龄,老师,关系
李明轩,18,张伟,85
张梓涵,17,李娜,65
王梓轩,16,王强,90
赵欣怡,15,赵敏杰,70
刘浩宇,17,刘丽芳,55
陈梓萱,16,张伟,100
黄思远,18,李娜,75
杨梦涵,15,王强,80
周雨轩,17,赵敏杰,95
吴宇轩,16,刘丽芳,60

导入neo4j

首先将上述两张表保存到 import 文件夹下。
两张表,已放到 import 文件夹下。
在这里插入图片描述

启动 neo4j :

sudo neo4j start

访问 http://127.0.0.1:7474/browser/ :

Teacher

LOAD CSV WITH HEADERS FROM 'file:///teacher.csv' AS row  
CREATE (:Teacher {name: row.姓名, age: toInteger(row.年龄)})

在这里插入图片描述如下图所示,老师节点已经创建完成:
在这里插入图片描述

Student

学生节点的创建会麻烦一点。因为要生成与老师节点之间的关系。

学生表创建的Cypher语句如下:

LOAD CSV WITH HEADERS FROM 'file:///student.csv' AS row  
MATCH (t:Teacher {name: row.老师})  
CREATE (s:Student {name: row.姓名, age: toInteger(row.年龄)})  
CREATE (s)-[r:STUDENT_OF {weight: toInteger(row.关系)}]->(t)  
RETURN s, r, t

在这里插入图片描述我使用鼠标点击学生赵欣怡与老师赵敏杰之间的边(STUDENT_OF),在右侧展示出了他们之间的关系是70。

这篇关于从数据生成到图数据库:Linux下Neo4j的CSV导入的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1103260

相关文章

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

Linux如何查看文件权限的命令

《Linux如何查看文件权限的命令》Linux中使用ls-R命令递归查看指定目录及子目录下所有文件和文件夹的权限信息,以列表形式展示权限位、所有者、组等详细内容... 目录linux China编程查看文件权限命令输出结果示例这里是查看tomcat文件夹总结Linux 查看文件权限命令ls -l 文件或文件夹

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

idea的终端(Terminal)cmd的命令换成linux的命令详解

《idea的终端(Terminal)cmd的命令换成linux的命令详解》本文介绍IDEA配置Git的步骤:安装Git、修改终端设置并重启IDEA,强调顺序,作为个人经验分享,希望提供参考并支持脚本之... 目录一编程、设置前二、前置条件三、android设置四、设置后总结一、php设置前二、前置条件

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

Linux下在线安装启动VNC教程

《Linux下在线安装启动VNC教程》本文指导在CentOS7上在线安装VNC,包含安装、配置密码、启动/停止、清理重启步骤及注意事项,强调需安装VNC桌面以避免黑屏,并解决端口冲突和目录权限问题... 目录描述安装VNC安装 VNC 桌面可能遇到的问题总结描js述linux中的VNC就类似于Window

linux下shell脚本启动jar包实现过程

《linux下shell脚本启动jar包实现过程》确保APP_NAME和LOG_FILE位于目录内,首次启动前需手动创建log文件夹,否则报错,此为个人经验,供参考,欢迎支持脚本之家... 目录linux下shell脚本启动jar包样例1样例2总结linux下shell脚本启动jar包样例1#!/bin

C#监听txt文档获取新数据方式

《C#监听txt文档获取新数据方式》文章介绍通过监听txt文件获取最新数据,并实现开机自启动、禁用窗口关闭按钮、阻止Ctrl+C中断及防止程序退出等功能,代码整合于主函数中,供参考学习... 目录前言一、监听txt文档增加数据二、其他功能1. 设置开机自启动2. 禁止控制台窗口关闭按钮3. 阻止Ctrl +