当前位置: 首页 > news >正文

湖南住房与城乡建设部网站北京网页设计公司兴田德润挺好

湖南住房与城乡建设部网站,北京网页设计公司兴田德润挺好,网站重做,河南卓越建设工程有限公司网站学习LOAD CSV#x1f680; 在使用Neo4j进行大量数据导入的时候#xff0c;发现如果用代码自动一行一行的导入效率过低#xff0c;因此明白了为什么需要用到批量导入功能#xff0c;在Neo4j中允许批量导入CSV文件格式#xff0c;刚开始从网上的中看了各种半残的博客或者视频…学习LOAD CSV 在使用Neo4j进行大量数据导入的时候发现如果用代码自动一行一行的导入效率过低因此明白了为什么需要用到批量导入功能在Neo4j中允许批量导入CSV文件格式刚开始从网上的中看了各种半残的博客或者视频拼拼凑凑也实现了功能然后想写个博客记录一下一想直接把代码沾上来讲的也不是很全面就打算按照官方文档的思路讲一下然后给中间补充一些文档中往往会省略的实践细节故有了这篇博客在对官方文档的翻译中加入自己对技术的理解会比机翻或者要求严格的文档更好理解一些。本文只介绍前几个常用的节点和关系的批量导入不然内容太多了后面不常用的就先不介绍了。 阅读本文需要对Neo4j的基础知识有一些了解如果还没有学习可以阅读本文章的前置文章。 Neo4j 新手教程 环境安装 基础增删改查 python链接 常用操作 纯新手向 文章目录 学习LOAD CSV1.LOAD CSV 简介2. Import CSV data into Neo4j 把CSV导入Neo4j 极简版(重要)3.Import compressed CSV files 导入压缩的csv文件4.Import data from relational databases 导入关联数据(重要) 结束 首先给出Neo4j的官方文档的地址 https://neo4j.com/docs/cypher-manual/current/clauses/load-csv/ 1.LOAD CSV 简介 LOAD CSV 是用来将CSV文件导入到Neo4j数据集当中的。 LOAD CSV FROM https://data.neo4j.com/bands/artists.csv AS row MERGE (:Artist {name: row[1], year: toInteger(row[2])})FROM 后面接一个文件所在路径的字符串命令是一行一行处理文件的每次处理的时候用AS将这一行的数据临时存储在一个变量里在这个例子中这个变量是row用MERGE访问row变量然后存入到数据集中 LOAD CSV 支持本地和远程的URL本地路径关联在Neo4j的数据库的文件夹中。 URL Uniform Resource Locator 雅称统一资源定位符 俗称文件路径新手可以直接这吗理解虽然严格意义不准确 2. Import CSV data into Neo4j 把CSV导入Neo4j 极简版(重要) 可以将CSV文件保存在本地数据集的文件夹import下面然后使用一个file:///前缀名字。下面是官方给的一个例子接下来我们具体实际操作一下 首先是保存这个csv文件首先我们直接来一个简单的txt直接过去之后再做用excel转的直接新建一个txt然后粘进去。 1,ABBA,1992 2,Roxette,1986 3,Europe,1979 4,The Cardigans,1992然后点右上角的文件选择另存为然后进入到Neo4j的import文件夹的目录下 之后把文件后缀的txt直接改为csv然后确认一下文件编码为UTF-8        然后打开该目录你会看到一个csv文件        用excel打开看一眼嗯 然后打开Neo4j的控制台。在上方的命令框输入命令 LOAD CSV FROM file:///artists.csv AS row MERGE (a:Artist {name: row[1], year: toInteger(row[2])}) RETURNa.name,a.year如果不知道如何打开请移步愚作Neo4j 新手教程 环境安装 基础增删改查 python链接 常用操作 纯新手向 按下CtrlEnter或者右上侧的蓝色小三角运行命令运行结果如下导入成功。 如果不想保存到数据库文件的import文件夹下直接换成本地路径直接导入,例如直接把文件复制到E盘然后把路径直接换成E:/artists.csv结果是不行。 为了解决这个问题需要求改Neo4j数据库的配置文件首先在数据库的conf文件下下找到neo4j.conf文件然后用记事本打开。 找到这个serve.directories.importimport给它前面加一个#号注释掉 注释之后变成这样        然后CtrlS保存一下或者关闭的时候点一下也行然后把E:/artists.csv改成file:///E:/artists.csv然后再运行成功 file:///必须加不加报错在配置文件中注释了server.directories.importimport之后把路径设置回file:///artists.csv也依旧可以从Import文件下下导入文件 LOAD CSV FROM file:///E:/artists.csv AS row MERGE (a:Artist {name: row[1], year: toInteger(row[2])}) RETURNa.name,a.year3.Import compressed CSV files 导入压缩的csv文件 LOAD CSV也可以上传压缩成ZIP的CSV文件不管套了几个文件最后这个ZIP文件里只能有一个CSV文件文档里写的太官方我这里尝试重新描述一下然后再给它分几种情况测一测挖一挖它这个功能。 好现在import文件下直接右键CSV压缩一层得到一个zip压缩包 然后再Neo4j控制台导入OK成功 LOAD CSV FROM file:///artists.zip AS row MERGE (a:Artist {name: row[1], year: toInteger(row[2])}) RETURNa.name,a.year然后将压缩文件从import目录移动到E盘然后运行OK LOAD CSV FROM file:///E:/artists.zip AS row MERGE (a:Artist {name: row[1], year: toInteger(row[2])}) RETURNa.name,a.year然后开始套娃 首先套了两层文件 然后将套娃文件打包成zip 然后运行ok可行 接下来套娃的时候把套娃的文件夹名字修改一下先修改一下套娃中间文件夹的名字给它改成a再打包再运行 OK可行 然后把套娃最外层的文件夹的名字改了改成和CSV文件的名字不一致然后打包成zip 这个不可行 然后把最外层的文件夹名字改成和CSV一致然后在artist.csv在路径下加一些奇奇怪怪的文件然后再打包成zip然后运行 可行 然后在路径下加个其他的csv文件然后再打包成csv然后运行 OK可行 结论和文档中的描述基本一致就说最外层文件夹的名字得和要导入的csv文件一致最外层文件夹名字是哪个就读哪个CSV 桀桀桀感受到中国算法工程师的执着了吗Neo4j的官方人员笑。 4.Import data from relational databases 导入关联数据(重要) 在官方文档中给了这样一个例子一个数据和其作者的数据集那这里不但包含着作者和书籍的节点node还包含着A作者写了B书的一个关系relationship        接下来老操作直接复制到txt文件然后给它转存成UTF-8编码的csv,文件名字是books要是忘了咋操作或者跳读到这的话翻回到上面的这里。 Import CSV data into Neo4j 把CSV导入Neo4j 极简版 id,title,author,publication_year,genre,rating,still_in_print,last_purchased 19515,The Heights,Anne Conrad,2012,Comedy,5,true,2023/4/12 8:17:00 39913,Starship Ghost,Michael Tyler,1985,Science Fiction|Horror,4.2,false,2022/01/16 17:15:56 60980,The Death Proxy,Tim Brown,2002,Horror,2.1,true,2023/11/26 8:34:26 18793,Chocolate Timeline,Mary R. Robb,1924,Romance,3.5,false,2022/9/17 14:23:45 67162,Stories of Three,Eleanor Link,2022,Romance|Comedy,2,true,2023/03/12 16:01:23 25987,Route Down Below,Tim Brown,2006,Horror,4.1,true,2023/09/24 15:34:18ok好的看一下然后右侧的这个时间是缩略了展开就能看见了不用害怕。 // Create Book nodes 导入节点 LOAD CSV WITH HEADERS FROM file:///books.csv AS row MERGE (b:Book {id: row.id, title: row.title}) MERGE (a:Author {name: row.author});// Create WROTE relationships 导入关系 LOAD CSV WITH HEADERS FROM file:///books.csv AS row MATCH (a:Author{name: row.author}) MATCH (b:Book{id: row.id}) MERGE (a)-[:WROTE]-(b);这段代码使用了Cypher查询语言来处理两个主要任务 首先它从一个CSV文件中导入数据来创建Book和Author节点 其次它基于相同的CSV文件创建这些Book和Author节点之间的WROTE关系。下面是对这两个过程的详细解释 第一部分创建Book和Author节点 LOAD CSV WITH HEADERS FROM file:///books.csv AS row MERGE (b:Book {id: row.id, title: row.title}) MERGE (a:Author {name: row.author});LOAD CSV WITH HEADERS FROM file:///books.csv AS row这条命令告诉Neo4j从给定的路径file:///books.csv 加载一个CSV文件该文件具有标题行即每列的第一行包含列名。AS row表示每一行数据都会被赋予变量名row之后可以通过这个变量访问行中的数据。MERGE (b:Book {id: row.id, title: row.title})MERGE命令用于创建一个新的Book节点或者如果具有相同id和title属性的节点已经存在则匹配不重复创建该节点。这里row.id和row.title是从CSV文件中读取的每一行的对应列数据。MERGE (a:Author {name: row.author})类似地这条命令用于创建或匹配一个Author节点其name属性由当前行的author列提供。 第二部分创建WROTE关系 LOAD CSV WITH HEADERS FROM file:///books.csv AS row MATCH (a:Author{name: row.author}) MATCH (b:Book{id: row.id}) MERGE (a)-[:WROTE]-(b);加载数据部分一样MATCH (a:Author{name: row.author})和MATCH (b:Book{id: row.id})这两个MATCH命令分别用于查找当前行中提到的Author和Book节点。它们通过比较name和id属性与文件中的相应列来定位节点。MERGE (a)-[:WROTE]-(b)最后MERGE命令用来创建一个新的WROTE关系从找到的Author节点指向Book节点。如果这样的关系已经存在则不会创建重复的关系。 然后运行上诉代码这里我把URL改成本地了而文档中用的是网络URL这里还是先了解怎么在本地导入节点和关系网络导入暂时不需要 然后点一下这个WROTE,ok完美 结束 然后文档的后面还有一些增加属性以及处理数据例如去除Null值等诸如此类的工作不是重点暂时就先不介绍了。然后有个小麻烦的地方在导入不同类别的数据的时候需要分批导入类别参数不能直接用CSV中的导入值我自己有个数据集有50类关系我手动输入了50次命令我简单了解了一下之后应该可以用Foreach命令解决这个问题会纳入到后续的更新规划当中。
http://www.zqtcl.cn/news/81245/

相关文章:

  • 网站设计的大公司小型门户网站建设硬件配置
  • 做网站怎么买域名亚马逊跨境电商介绍
  • 放心的网站设计制作wordpress网关支付
  • 网站域名解析错误怎么办南宁seo结算
  • 电商平台介绍网站模板如何在工商网站做预先核名
  • 深圳网站制作 公司wordpress tag 数据库
  • 网站被黑 禁止js跳转零基础培训网页设计
  • 网站建设 搜狐群晖不用套件安装wordpress
  • 音乐网站是否可以做浅度链接安卓优化大师历史版本
  • php制作电影网站住房和城乡建设管理局
  • 广告设计网站排行榜前十名做网站的语言有哪些
  • 上海建设安全协会网站ui设计实训报告
  • 推广及建设网站php网站开发好找工作吗
  • 郑州做网站推广运营商做企业网站首页尺寸
  • 优秀的手机网站案例分析工具类网站如何做排名
  • 自己做网站哪里最好个人网站 创意
  • 别样网图片素材网站网站开发的费用
  • 连云港网站seo大连建设网交费查询
  • 外贸网站建设模板企业网站的设计风格
  • 微网站可以做商城吗广州网站优化推广
  • 山东省春季高考网站建设试题纸牌网站建设
  • 制作一个网站难吗做网站端口无法清除
  • 全屏 单页网站织梦品牌集团公司网站模板(精)
  • 创建自己的网站网站建设哪个公司最好
  • node.js网站开发iis 网站目录权限
  • 有没有帮忙做标书的网站加快网站收录
  • 安康网站定制厂家绍兴以往网站招工做
  • 自建网站平台哪个好婚礼顾问网站介绍模版
  • 谷歌优化教程外贸seo网站搭建
  • 公司网站建设文案wordpress 封禁账号