尝试批量创建节点和关系 - 批量创建失败 - 帖子末尾的回溯
注意具有较小节点子集的代码功能 - 当进入大量关系时会失败,不清楚这发生在什么限制。
- 想知道是否需要将 ulimit 增加到 40,000 个以上的打开文件
- 阅读人们在进行批量创建时遇到 REST API 的 Xstream 问题的地方——不清楚问题集是在 py2neo 范围内,还是在 Neo4j 服务器调优/配置上,还是在 Python 范围内。任何指导将不胜感激。
数据集中的一个集群最终在 700 多个节点中有大约 625525 个关系。总关系将超过 100 万 - 使用带有 x86_64 的 Apple Macbook Pro Retina - Ubuntu 13.04、SSD、8GB 内存。
- Neo4j:配置的 auto_indexing & auto_relationships 设置为 ON
- 通过 Python Panadas DataFrame.groupby() 集群/分组的节点
- 节点:包含 3 个属性
- 关系属性:1 -> 已创建 IN & Out 关系
- ulimit 设置为 40,000 个打开的文件
代码
https://github.com/alienone/OSINT/blob/master/MANDIANTAPT/spitball.py
- 操作系统:Ubuntu 13.04
- Python版本:2.7.5
- py2neo 版本:1.5.1
- Java版本:1.7.0_25-b15
- Neo4j 版本:社区版 1.9.2
追溯
回溯(最后一次调用):文件“/home/alienone/Programming/Python/OSINT/MANDIANTAPT/spitball.py”,第 63 行,在 main() 文件“/home/alienone/Programming/Python/OSINT/MANDIANTAPT/ spitball.py”,第 59 行,在主 graph_db.create(*sorted_nodes) 文件中“/home/alienone/.pythonbrew/pythons/Python-2.7.5/lib/python2.7/site-packages/py2neo/neo4j.py ”,第 420 行,在创建返回 batch.submit() 文件“/home/alienone/.pythonbrew/pythons/Python-2.7.5/lib/python2.7/site-packages/py2neo/neo4j.py”,第 2123 行,在 self._submit() 文件“/home/alienone/.pythonbrew/pythons/Python-2.7.5/lib/python2.7/site-packages/py2neo/neo4j.py”中提交响应,第 2092 行,在提交身份证,请求枚举(self.requests)文件“/home/alienone/.pythonbrew/pythons/Python-2.7.5/lib/python2.7/site-packages/py2neo/rest.py”,第428行,在_send返回self._client().send(request) 文件“/home/alienone/.pythonbrew/pythons/Python-2.7.5/lib/python2.7/site-packages/py2neo/rest.py”,第 365 行,在发送中返回响应(request.graph_db,rs.status,request.uri,rs.getheader(“位置”,无),rs_body)文件“/home/alienone/.pythonbrew/pythons/Python-2.7.5/lib/python2。 7/site-packages/py2neo/rest.py",第 279 行,在init中 引发 SystemError(body) SystemError:无
进程以退出代码 1 结束