首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在python中用泡菜从Neo4j中转储图形

在python中用泡菜从Neo4j中转储图形
EN

Stack Overflow用户
提问于 2021-09-10 00:09:43
回答 2查看 175关注 0票数 0

我在Neo4j中有一个相当大的图,需要用它做一些计算工作。这就是为什么我需要在HPC集群上这样做。到目前一切尚好。但是我的程序多次访问neo4j图,这在集群上是做不到的。这就是我想用pickle.dump()转储图形对象的原因。不幸的是,我遇到了一个错误:

文件"...myFile.py",第9行,在pickle.dump中(图(“螺栓:/localhost:7474/”,auth=("neo4j","0000")),f) AttributeError:不能选择本地对象‘ConnectionPool.connect.’

我的(简化)代码:

代码语言:javascript
运行
AI代码解释
复制
import pickle
from py2neo import Graph

graph2 = Graph("bolt:///localhost:7474/", auth=("neo4j", "0000"))

with open('graph.pkl', 'wb') as f:
    pickle.dump(Graph("bolt:///localhost:7474/", auth=("neo4j", "0000")), f)

with open('graph.pkl', 'rb') as f:
    graph = pickle.load(f)

print("Hello")

有人能告诉我,为什么我会犯这个错误(可能的话,如何消除它)?先谢谢你。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-09-11 03:52:25

我猜您得到了这个错误,因为您不仅试图转储节点和关系,而且还要转储Graph的整个实例,包括函数等等。

我不清楚这个垃圾堆会如何帮助你实现你的目标。

不过,这个答案看上去很含糊:https://stackoverflow.com/a/31809054/2403344

这个想法是从您的Python创建一个Python。这个可以被腌制等。

票数 1
EN

Stack Overflow用户

发布于 2021-09-11 03:58:13

您需要做的是实现__getstate____setstate__。有关示例,请参见这里。为了实现这些方法,我认为您必须扩展Graph

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69129161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档