我有一个要保存的对象事件位置。我想有两种方法可以做到这一点: 1.创建事件节点并将其连接到位置节点并保存位置 2.保存Event节点上的位置。
考虑到将来我有兴趣提取在某个地方发生的所有事件的信息。 最有效的方法是什么?
我还有一个关于有效的问题。我有 2 个用户:移动应用程序用户和网络用户。我正在思考保存信息的有效方法。我也在这里思考两种方法: 1.将所有用户的数据保存在一个节点上,并添加到app用户标签mobile上 2.将所有用户的数据保存在一个节点中,并将其连接到仅保存设备类型的节点。
考虑到将来我有兴趣提取所有使用 IOS/Android 的用户的信息。 最有效的方法是什么?
最佳答案
这取决于您想如何处理位置信息。您可能使用 Location
节点(从而在 Event
和 Location
之间建立关系)的一些原因:
- 您想要某个位置的属性
- 您正在另一个上下文中使用位置,并且希望能够将所有内容链接在一起
- 在您的应用程序中,位置对您来说更像是一个实体,而不仅仅是
Event
的属性
但是,如果您只有纬度/经度或位置名称,那么您就更倾向于在Event
上拥有属性。如果您要查询属性,请确保您有一个索引(该索引也适用于您想要在 Location
节点上查询的任何属性)。
关于用户:如果您要存储两组用户,您可能会感到头疼。我将拥有一组用户并使用诸如 logged_in_with_android
之类的属性。
关于database - neo4j 图数据库的效率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33521758/