【问题标题】:How to model airport/flight data in a graph database like neo4j如何在 Neo4j 等图形数据库中对机场/航班数据进行建模
【发布时间】:2012-01-14 14:34:11
【问题描述】:

我需要在图形数据库中对航空公司航班数据进行建模(我专门使用 neo4j,但如果出现问题我会考虑其他人)。我的问题更多是关于如何以一种易于遍历和发现不同航班选择的方式对这些数据进行建模。我想存储和以后查询的数据类型的一些具体示例:

1) 像 JFK->LAX 这样的直飞场景。看起来直截了当,简单的两个节点关系。但是这两个节点之间可能有很多航班感兴趣。那么,如果我需要存储单个航班的详细信息,那么最好在 JFK 和 LAX 节点之间的关系上存储一个数组吗?

2) 具有多个站点的飞行场景,例如 JFK->LAX->SAN。在这种情况下,如果我对出发和到达城市感兴趣,那么对三个节点之间的关系进行建模似乎作用有限?即,我可以与 JFK->SAN 建立关系,而在洛杉矶国际机场有中途停留的事实可能是这种关系的属性?

如果我需要根据节点之间关系中的数据数组来查询或遍历图,并且这些数组变得很大(例如 JFK 和 LAX 之间有 100 个不同的航班),这是否会带来性能或可扩展性问题?

希望这个问题不是太开放 - 我只是想避免构建适用于具有约 5 个节点但无法扩展到数百个机场和数万个航班的小型示例模型的东西。

【问题讨论】:

    标签: graph neo4j


    【解决方案1】:

    数百个机场和数万个航班仍然是一个非常小的数据集,如果这会成为 neo4j 中的问题,我会感到惊讶。

    在我的脑海中,您也许可以将所有机场作为它们自己的节点,并且每条路线都可以是它自己的节点,与它所接触的所有机场都有关系,也许每个关系上都有一个“订单”属性,这是本地的到路线。

    (ROUTE1)--------- / \ \ *订单=1/ \*订单=2 \*订单=3 v v v (肯尼迪机场) (洛杉矶国际机场) (SAN)

    我确信有更好的解决方案。

    【讨论】:

      【解决方案2】:

      查看 Neo4J 的contribution page

      他们比赛的获胜者之一是描述US Flights and Airports做得很好的要点

      【讨论】:

        【解决方案3】:

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2016-03-05
          • 1970-01-01
          • 2012-05-03
          • 1970-01-01
          • 2015-11-13
          • 1970-01-01
          • 2011-05-08
          相关资源
          最近更新 更多