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

news2024/9/24 21:25:55

文章目录

    • 简介
    • 找到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。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2077989.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

EmguCV学习笔记 C# 6.S 特别示例

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 EmguCV是一个基于OpenCV的开源免费的跨平台计算机视觉库,它向C#和VB.NET开发者提供了OpenCV库的大部分功能。 教程VB.net版本请访问…

Datawhale AI夏令营 第五期 CV方向 Task1笔记

Task1:跑通YOLO方案baseline! 赛题解读 根据您提供的图片内容,这是一份关于城市管理违规行为智能识别竞赛的赛题描述。以下是对内容的分析: 一、赛题描述 背景:随着城市化进程的加速,城市管理面临新的挑…

JavaScript初级——获取元素的样式

1、获取元素当前的显示样式 语法:元素.currentStyle.样式名 可以用来读取当前元素正在显示的样式,如果当前的元素没有设置样式,则获取他的默认值 currentStyle只有IE8浏览器支持,其他的浏览器不支持。 2、在其他浏览器中&#xf…

修复 502 Bad Gateway 错误的 6 种方法

通常,我们在使用网站时可能会遇到一系列错误。有些非常常见,例如 404,有些则不太常见,例如 101。这些被称为 HTTP 状态代码。其中,502 错误是某种服务器错误。那么,让我们先了解一下 Bad Gateway 502 的含义…

JetBrains Rider 2024 for Mac/Win:跨平台.NET IDE集成开发环境的全面解析

JetBrains Rider 2024作为一款专为Mac和Windows用户设计的跨平台.NET IDE集成开发环境,以其强大的功能和卓越的性能,在.NET开发领域脱颖而出。这款IDE不仅集成了IntelliJ IDEA的代码编辑优势,还融合了ReSharper的C#开发体验,为开发…

STM32(F103ZET6)第十六课:WIFI模块的配置与应用

目录 需求一、wifi模块简述二、配置流程1.配置通信串口2.配置引脚与中断接受3.简述AT指令4.程序编写 三、需求实现代码 需求 完成WiFi模块的配置,使其能连接服务器并最终能和服务器相互发送消息。 一、wifi模块简述 本项目开发版上没有封装好的WIFI模块,所以借助…

SpringBoot日常:基于DeferredResult的异步处理

文章目录 示例代码代码执行结果代码执行过程解析DeferredResult 的优势 本章内容主要讲讲基于DeferredResult的异步处理 在 Servlet 容器中启用了异步请求处理功能,控制器方法就可以用 包装任何支持的控制器方法返回值DeferredResult,控制器可以从不同的…

谷粒商城实战笔记-261~262-商城业务-订单服务-页面环境搭建-SpringSession

文章目录 一,261-商城业务-订单服务-页面环境搭建1,静态资源上传2,配置域名映射3,网关配置4,页面静态资源引用修改 二,262-商城业务-订单服务-整合SpringSession1,页面跳转2,配置Spr…

Python实战:如何使用K-means算法进行餐馆满意度NLP情感分析

🍊作者:计算机毕设匠心工作室 🍊简介:毕业后就一直专业从事计算机软件程序开发,至今也有8年工作经验。擅长Java、Python、微信小程序、安卓、大数据、PHP、.NET|C#、Golang等。 擅长:按照需求定制化开发项目…

详解Apache 和 Tomcat 整合原理及区别

Apache 和 Tomcat 都是Web服务器,它们之间既有联系又有区别。Apache主要负责静态解析,如HTML。Tomcat主要负责动态解析,如JSP。 为什么要让 Apache 与 Tomcat 之间进行连接呢? 原因有下面几个: 提升对静态文件的处理性能 利用…

ms_送给新人的面试题简单解答

第一部分 1 项目中遇到的bug或者难题 这个问题比较容易,每个人都会在开发过程中遇到或多或少的问题,你不可能答我已经天下无敌了,大家开发的项目类型都不太一样,事实上也没人听得太仔细,就算你要说的‘难题‘并不难&…

Apache Druid日志实时分析

业务分析 ​ 秒杀业务中,通常会有很多用户同时蜂拥而上去抢购热卖商品,经常会出现抢购人数远大于商品库存。其实在秒杀过程中,热卖商品并不多,几乎只占1%,而99%的流量都源自热卖商品,很有可能因为这1%的热…

【SQL】分类统计的薪水

目录 题目 分析 代码 题目 表: Accounts ------------------- | 列名 | 类型 | ------------------- | account_id | int | | income | int | ------------------- 在 SQL 中,account_id 是这个表的主键。 每一行都包含一个银行帐户的月收入的…

深入解析Go语言os/user包:用户和组管理实战指南

深入解析Go语言os/user包:用户和组管理实战指南 引言什么是os/user包?为什么要学习os/user包?本文将介绍的内容 os/user包基础如何导入os/user包获取当前用户信息示例代码 *user.User类型详解常见错误处理小结 用户查询与管理根据用户名查询用…

这本大模型书籍我敢说知道的人不超过1%,大模型入门必备书籍

当然可以!我为您推荐一本关于大模型的书籍:《Transformer Tutorials: From Theory to Practice》。虽然这本书不是直接以“大模型”命名,但它涵盖了构建和理解大规模语言模型(如GPT系列和BERT)所需的关键技术和理论。接…

娱乐社交、游戏行业的最新玩法实践与未来增长趋势解读|网易数智x华为云城市沙龙杭州站邀你前来!

随着5G、AI、区块链等前沿技术的深度融合应用,泛娱乐行业正经历深刻变革的同时,也面临着一系列挑战与问题,面对社交产品监管的加强、海外市场的双重机遇与风险以及增速放缓的游戏行业...... 探求新增长点与新思路成为当下泛娱乐行业从业者的关…

收银系统源码助力零售门店数字化升级

一、国内零售业数字化转型迈入深水区 近年来,我国零售业数字化进程显著加速,从线上电商到新零售模式,再到利用大数据、人工智能等技术优化供应链、提升体验,每一步都见证了行业的深刻变革。随着零售行业进入存量市场竞争&#xf…

nuxt3连接mongodb操作

文章目录 创建一个nuxt3应用添加nuxt后端服务nuxt3路由创建mongo数据连接mongodb数据库补充添加显示(用v-for打印出数组)nuxt-server-insertmongodb删除数据创建一个nuxt3应用 Node.js - v18.0.0 或更新版本推荐使用 Visual Studio Code 以及 Volar 扩展npx nuxi@latest init p…

使用jwt实现登录验证

jwt工具类 public class JwtUtil {public static String key"mykey";public static String genToken(String username) {JWTCreator.Builder builder JWT.create();Map<String, Object> headersnew HashMap<>();headers.put("typ","jwt&…

uniapp重新编译在微信开发者工具跳转指定页面

uniapp重新编译在微信开发者工具跳转指定页面 步骤 选择编译模式添加编译模式设置启动页面