赞
踩
APOC(Awesome Procedures on Cypher)是Neo4j图数据库的一个插件,它提供了一组强大的过程和函数,扩展了Cypher查询语言的功能。APOC可以帮助你进行更高级的数据处理和操作,例如导入和导出数据、动态创建节点和关系、执行事务操作等。
使用APOC插件需要先下载并安装它,然后在Neo4j的配置文件中启用它。一旦启用,你就可以在Cypher查询中使用APOC提供的各种过程和函数了。
我这里主要是想使用,APOC中的相似度查询
功能.
操作系统; window 11
neo4j版本:neo4j-community-4.4.23
APOC 版本:apoc-4.4.0.3-all.jar
比较推荐这个方法:
第三方下载地址(推荐使用)
apoc插件分为两种,一个是core核心版,一个是 all 豪华本。另外,apoc插件本身也是需要和neo4j的版本号一一对应的,两者是需要版本兼容的关系。
我这里使用的是 :apoc-4.4.0.3-all.jar
版本不对应,大概率,neo4j 服务启动不起来。提示 版本问题
将下载的 apoc-4.4.0.3-all.jar
直接复制到这个文件夹 就行
打开配置文件将,这两行内容,注释去掉就行了
dbms.security.procedures.unrestricted=apoc.*
将apoc中一般要加载的过程和函数列入白名单 (允许运行的程序列表中)
dbms.security.procedures.allowlist=apoc.coll.*,apoc.load.*
这里因为需要 还有有其他的配置,这个配置就 根据需要来进行配置就行
正常情况情况下,配置到第五步就结束了,大概率配置成功了、但是我正好是不幸运的一拨人。配置到第五步 启动:RETURN apoc.version()
出现了
Neo.ClientError.Statement.SyntaxError
Invalid input '': expected <init> (line 1, column 1 (offset: 0))
"RETURN apoc.version();"
^
解决方法:就是 第 5 步图片中的那样子。
把这一行内容 : dbms.security.procedures.allowlist=apoc.coll.*,apoc.load.*
注释掉
配置成功
RETURN apoc.text.distance("手提包包女新款潮韩版时尚尼龙布单肩包休闲简约斜挎包妈妈包", "新款女士手提包韩版大容量菱格牛津手提斜挎包多功能大容量单肩包")
RETURN apoc.text.levenshteinDistance("手提包包女新款潮韩版时尚尼龙布单肩包休闲简约斜挎包妈妈包", "新款女士手提包韩版大容量菱格牛津手提斜挎包多功能大容量单肩包")
RETURN apoc.text.levenshteinSimilarity("手提包包女新款潮韩版时尚尼龙布单肩包休闲简约斜挎包妈妈包", "新款女士手提包韩版大容量菱格牛津手提斜挎包多功能大容量单肩包")
RETURN apoc.text.fuzzyMatch("手提包包女新款潮韩版时尚尼龙布单肩包休闲简约斜挎包妈妈包", "新款女士手提包韩版大容量菱格牛津手提斜挎包多功能大容量单肩包")
要在Python中使用APOC插件,首先需要确保已经安装了Neo4j和APOC插件。安装Neo4j可以参考官方文档(https://neo4j.com/docs/)。一旦安装完成,您可以使用Python的Neo4j驱动程序来连接到Neo4j数据库,并执行Cypher查询来调用APOC过程。
一个简单的示例代码,演示如何使用Python和Neo4j驱动程序执行APOC过程:
from neo4j import GraphDatabase # 连接到Neo4j数据库 driver = GraphDatabase.driver("bolt://localhost:7687", auth=("neo4j", "password")) # 执行查询并调用APOC过程 def run_query(query): with driver.session() as session: result = session.run(query) return result # 调用APOC过程 query = "CALL apoc.someProcedure()" result = run_query(query) # 处理结果 for record in result: # 在这里进行结果处理 print(record) # 关闭驱动程序连接 driver.close()
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。