3 俞博士

尚未进行身份认证

我要认证

专注图数据库、图深度学习和行业应用的技术直男。 e: joshua.yu@neo4j.com

等级
TA的排名 8w+

Neo4j图数据库高级应用系列 / 服务器扩展指南 APOC(5.1) - 导出数据到CSV文件

1、配置要求为了能够使用APOC过程导出数据,需要增加下面的配置项: neo4j.conf apoc.export.file.enabled=true 为了能够使用APOC过程导入数据,需要增加下面的配置项: neo4j.conf apoc.import.file.enabled=true APOC的数据导入和导出目录是服...

2020-06-22 22:46:50

Neo4j图数据库高级应用系列 / 服务器扩展指南 APOC(4.7) - Cypher语句的条件分支

1、概述APOC提供以下过程来运行有条件分支的Cypher语句。 接口 过程 CALL apoc.when( condition, ifQuery, elseQuery:'', params:{} ) YIELD value 基于条件,执行给定参数的ifQuery或elseQuery只读查询。 CALL apoc.do.when( condition, ...

2020-06-22 22:41:54

Neo4j图数据库高级应用系列 / 服务器扩展指南 APOC(4.6) - 并行执行Cypher

Cypher的执行在缺省情况下都是单线程的。而有时,我们需要并行执行查询,例如对一个名称列表,查询它们在图中的邻居。这里,可以用APOC的Cypher相关过程runParallel()。// 并行初始化并执行查询。 // 缺省情况下,最大分区数/并行数为CPU内核数 x 100; // 最多批次数为10000。例如,如果Neo4j数据库被分配了4个内核, // 那么并行的最多进程数为400。CALL apoc.cypher.parallel( fragment, params,

2020-06-15 16:21:17

Neo4j图数据库高级应用系列 / 服务器扩展指南 APOC(4.5) - 动态Cypher执行

有时候,我们需要更加灵活的Cypher查询执行,例如在创建节点时根据变量的值决定节点的标签,这时可以使用APOC中cypher执行相关的过程。 接口 功能 CALL apoc.cypher.run( fragment, params ) YIELD value 使用给定的参数执行数据库读取查询。 函数 apoc.cypher.runFirstColumnSingle ..

2020-06-15 15:20:23

Neo4j中文开发人员周刊 - 20200520【创刊号】

Neo4j中文开发人员周刊2020年5月20日各位Neo4j图数据库的开发者和使用者,你们好!酝酿和筹备已久的《Neo4j中文开发者周刊》终于和大家见面了!在中国有大量Neo4j的使用者和开发者,然而关于Neo4j产品的最新进展和应用案例方面的中文介绍一直不能满足大家的需要。相比起英文资源的丰富度与多样,能够帮助大家了解、使用和精通Neo4j图数据库的中文资源仍然存在内容有限、更新滞后和缺乏干...

2020-06-11 21:21:20

Neo4j图数据库高级应用系列 / 服务器扩展指南 APOC(4.4) - 自定义Cypher函数和过程

1、定义APOC提供相关过程来创建用户自定义的函数和过程。这些函数和过程实际上是参数化的Cypher语言查询,类似宏(Macro)的概念。相关过程如下:apoc.custom.asFunction(),创建用户自定义函数; apoc.custom.asProcedure(),创建用户自定义过程。用户自定义函数和过程可以通过CALL dbms.functions和CALL dbms.procedures查看,所有自定义函数和过程自动被加上custom为前缀,例如custom.MyProcedure

2020-06-07 20:32:01

Neo4j图数据库高级应用系列 / 服务器扩展指南 APOC(4.3) - 后台执行查询submit

1、定义对于复杂的更新数据库的Cypher查询,可以使用APOC的submit()过程异步执行该查询。APOC还提供下面的过程管理异步/后台执行的任务:apoc.periodic.list():列出所有正在后台执行的任务 apoc.periodic.cancel(taskName):终止后台任务管理正在运行的查询是Neo4j企业版才有的功能。因为APOC可以同时运行在Neo4j社区版和企业版上,使用上述APOC异步执行过程使得社区版同样拥有部分管理后台查询的能力。2、过程概述apoc.p

2020-06-07 20:24:16

从文本到知识:Neo4j 图数据库 + NLP (自然语言处理) 实现案例

我们现在处于“大数据时代”,而在浩繁的“大数据”中,绝大多数是文本形式的非结构化数据。图其实可以非常灵活和有效的表示和处理文本内容中的词语、概念、依存关系,并用作知识推理、情感分析、智能问答等丰富的应用中。 本文以百度云的自然语言处理API服务为例,介绍怎样将文本分析的结果保存到Neo4j图数据库中。1、准备 Neo4j图数据库3.5.*。 APOC扩展包。关于如何安装APOC,请参见这里。我们要用到APOC中访问RESTful AP...

2020-05-22 09:37:34

Neo4j Bloom最新版发布:支持多数据库、并且免费试用

Neo4j的Bloom图可视化工具1.3版正式发布。重要的更新包括:1) 支持Neo4j 4多数据库(4.0.3以上版本);2) 从Neo4j Desktop中安装、用于本地数据库模式,现在已经可以免费试用了。下面,我们来看一下Bloom 1.3的主要特性。图模式搜索使用图模式进行搜索提供了一种灵活的方式来浏览图形。这是一种基于自然语言的搜索范例,它使用图的元素...

2020-04-26 01:31:49

Graphs4Good: 使用Neo4j Bloom实现新冠病毒案例的接触史追踪

(本文的英文原文发表于:https://community.neo4j.com/t/graphs4good-protecting-community-from-covid-19-by-answering-key-questions-in-neo4j-bloom/17291) 尽管目前世界上大多数国家都在半封锁状态、以减慢致命的COVID-19病毒的传播,但寻找治愈方法的斗争从未停止...

2020-04-19 13:58:39

Neo4j图数据库高级应用系列 / 服务器扩展指南 APOC(4.2) - 循环执行 commit

2.按照条件循环执行 - commit2.1 定义 commit()过程包含两个子操作:1) 第一个是查询操作,返回指定数量的、符合条件的数据库对象; 2) 第二个是更新操作,对第一个查询中返回的每个对象进行相应的更新操作。第二个操作通常在不同的事务中执行。 上面的两个步骤重复执行,直到第一个查询操作返回空的结果集合。...

2019-06-26 09:36:42

Neo4j图数据库高级应用系列 / 服务器扩展指南 APOC(4.1) - 查询任务管理

概述 APOC扩展包中的查询任务管理提供相关过程帮助将复杂查询分解成较小的批次迭代执行,从而减少事务处理的开销、提高内存使用效率。 Cypher的LOAD CSV语句允许通过USING PERIODIC COMMIT 指定批次大小,以减小更新事务的规模、提高性能并降低对内存(主要是Java堆内存/Heap Memory)的需求。对于其他Cypher语句,例如CRE...

2019-06-26 09:28:45

Neo4j图数据库高级应用系列 / 服务器扩展指南 (3.3) - 搜索子图

​​​​​1.定义 搜素子图的过程使用与路径扩展类似的方法从指定节点出发、沿着特定关系类型遍历,并返回能够到达的所有节点和关系。 APOC提供两种搜素子图的过程: - subgraphNodes():仅返回可以到达的节点; - subgraphAll():返回节点和关系。 与路径扩展过程expand和exp...

2019-06-18 21:15:27

Neo4j图数据库高级应用系列 / 服务器扩展指南 (3.2) - 可配置的路径扩展过程

1. 定义 可配置的路径扩展过程提供完整的配置参数来控制遍历过程。2.过程调用接口 过程接口 CALL apoc.path.expandConfig( startNode <id>Node/list, { minLevel, max...

2019-06-13 21:28:43

Neo4j图数据库高级应用系列 / 服务器扩展指南 (3.1) - 基本路径扩展过程

1、概述路径扩展过程(Path Expanding)是从指定的一个或一组起始节点开始,根据过滤规则沿着特定关系依次访问其他相连节点的过程。该过程迭代执行,直到没有更多相连节点或者预设的结束条件满足时终止。路径扩展可以看作是图的遍历(Graph Traversal)的一种实现方式。2、应用在Cypher中也可以实现图的遍历。APOC的路径扩展过程除了调用方法不一样以外,还具有下面的优势:1...

2019-06-09 12:37:55

Neo4j图数据库高级应用系列 / 服务器扩展指南 (2) - 安装和配置

2.1 扩展包的下载 ALGO和APOC扩展包是二进制JAR文件,可以直接下载、安装,经过简单配置即可使用。 APOC的下载链接是:http://github.com/neo4j-contrib/neo4j-apoc-procedures/releases/,在线文档:https://neo4j-contrib.github.io/neo4j-apoc-proc...

2019-06-05 10:15:38

Neo4j图数据库高级应用系列 / 服务器扩展指南 (1) - 概述

随着Neo4j图数据库学习和应用不断普及、特别是对复杂图操作的需求越来越多样化,Neo4j的服务器端扩展包越来越多地被提及和使用。从2019年6月起,将连载Neo4j迄今为止发布的最重要的两个扩展包APOC和ALGO中主要过程的用途、用法和样例,供大家学习和讨论。相关内容计划在明年初成书出版,欢迎提出问题和意见!1.1 背景 Neo4j图数据库扩展是基于Ne...

2019-06-02 22:27:59

【Neo4j查询优化系列】如何在查询中限制每个类别中返回结果的数量

Cypher提供了LIMIT谓词来限制返回的结果数量。例如,我们用Neo4j自带的电影-演员示例数据库为例,以下查询返回前三个演员-电影关系:MATCH (m:Movie)<-[:ACTED_IN]-(p:Person)RETURN p, m ORDER BY p LIMIT 3结果如下: 如果我们需要只返回每个演员出演过的前三部电影,那查询应该怎么写?最简单的方法是使用c...

2019-03-05 22:26:54

【Neo4j查询优化系列】使用Cypher在当前数据库中生成创建索引和限制的命令

如果想要生成创建索引和限制的Cypher命令,只需运行下面的查询:// 生成创建索引的语句CALL db.indexes() YIELD descriptionRETURN 'CREATE ’ + description返回结果:“CREATE INDEX ON :Movie(title)”“CREATE INDEX ON :Person(name)”// 生成创建限制...

2019-03-05 14:33:42

【Neo4j查询优化系列】如何快速统计节点的关系数

在图数据库中我们经常需要统计节点上的关系数目。一种常见的查询写法是这样的:MATCH(n:Person{name:‘KeanuReeves’})-[]-()RETURNcount(*);上面的查询会返回代表基诺-李维斯的节点(节点标签为Person)上所有关系的总数,包括进入的和流出的关系。如果用PROFILE来看一下查询的执行步骤和成本,结果如下:我们看到在统计节点拥有...

2019-03-04 09:48:09

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv1
    勤写标兵Lv1
    授予每个自然周发布1篇到3篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。