繁体   English   中英

Neo4j的数据分析

[英]Data Analytics with Neo4j

我想将Rails应用程序上的Neo4j图形数据库与GraphLab集成在一起以进行data analytics 是否可以在不显式取出数据库快照的情况下直接集成GraphLab?

是否有其他工具可以轻松地与Neo4j集成在一起?

如果不可能的话,那么担心的是Neo4j不允许以csv格式导出数据。 虽然GraphLab仅允许csv导入。

如果图形足够小以适合RAM,则可以分几步进行此导入:

  1. 使用neo4j-shell-tools从neo4j导出到GraphML。
  2. 使用NetworkX从GraphML导入到NetworkX Graph对象(我们称其为g )。
  3. 使用循环或列表理解将NetworkX图的顶点和边添加到graphlab.SGraph (我们称其为sg ):

import graphlab sg = graphlab.SGraph() sg = sg.add_vertices([graphlab.Vertex(i) for i in g.nodes()]) sg = sg.add_edges([graphlab.Edge(*edge) for edge in g.edges()])

您也可以使用py2neo(如上面的注释中所述,来查询图形),而不是写入CSV,而是使用add_vertices和add_edges或通过构建顶点/边缘SFrame,然后使用这些来直接从查询中构建SGraph 。构造图。 这可能是一种更快的生产解决方案(没有中间磁盘表示),并且如果您的图形大于可容纳在RAM中的图形,这也可能有助于解决内存大小限制。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM