【问题标题】:Graph Dataset: PostgreSQL or Neo4j?图数据集:PostgreSQL 还是 Neo4j?
【发布时间】:2015-04-24 13:10:43
【问题描述】:

我几乎是一个初学者,对于个人项目,我决定映射一个相对简单的数据集来描述一些互联网连接。 我知道一点 SQL 并且以前使用过 Postgres。但我也对 Neo4j 等图形数据库感到好奇。

数据集由 3 个表组成:
A - (nodes)
nodeID: i1 i2 ... in
N33 91.6.6 44.55 99.32.1

B -(链接)
linkID N1:i1 N2:i2 ... Nm:im
链接99 N33:5.32.4 N14:11.49.66

C -(节点属性)
nodeID 国家地区城市纬度经度
N54: CH WF 洛桑 19.3267 34.8167

作为附加信息,我可能会补充说这些数据具有空间组件,并且我想提出一个考虑到这一点的可视化(即根据它们的纬度/经度位置映射节点/链接)。
这对我来说是关键点。
我知道Gephi 有一个地理插件,但我也知道它需要一个精确的数据结构,目前与我的不同,即:

链接:
来源 |目标
1 | 2
1 | 43
1 | 27
节点:
节点ID |属性1 |属性 2 ...
1洛桑CH

因此,我的广义问题是:导入和查询/可视化数据的最佳选择应该是什么?

  • 我应该坚持使用 PostgreSQL 吗?
    • 但是,如何导入和管理表 A 和 B(具有不同数量的列)中的数据?
      像处理多对多关系问题一样处理它? 我是否应该导入具有尽可能多列的表并将其余的视为空值?
  • 我应该事先重新塑造数据吗?从而使它们更类似于 Gephi 数据结构(源节点跨越多行并且只有另一列:目标列)
  • 我应该尝试 Neo4j 的方式吗?我愿意尝试它,据我所知,它非常简洁,虽然我是初学者,不确定它是否适合我的技能。另外,这个数据集是不是有点矫枉过正?

提前感谢大家的回答,很抱歉发了这么长的帖子。

【问题讨论】:

    标签: postgresql graph neo4j geospatial


    【解决方案1】:

    我认为很大程度上取决于您要如何查询数据。我不熟悉 Gephi 在空间方面的功能,但是 Neo4j 有一个插件可以直接进行空间查询:

    https://github.com/neo4j-contrib/spatial

    不过,一般来说,这部分与 Neo4j 的遍历查询能力有些垂直。使用空间查询,您通常将一组节点缩小到一个区域。然后,您可以选择浏览节点之间的链接。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-17
      • 2015-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多