我在 ArangoDB 中没有得到一件事:
边缘集合和图有什么区别?在哪些情况下我应该选择哪个?
我在 ArangoDB 中没有得到一件事:
边缘集合和图有什么区别?在哪些情况下我应该选择哪个?
ArangoDB 中的图是建立在文档和边之上的。
边缘集合在_from
和上有自动索引_to
,允许有效检索任何连接的文档。由于数据仍存储在常规(文档和边缘)集合中,因此您也可以在非图形查询中使用这些集合。
图表在数据之上添加了一些功能(即查询方法、遍历)。您可以在 ArangoDB 中拥有多个。将“图表”想象成一种对部分或全部数据进行分组的方法,并使它们可以在查询中访问。
这是一个优势:
{
"_id": "edges/328701573688",
"_from": "nodes/150194180348",
"_to": "nodes/328668871224",
"_rev": "3680146597",
"_key": "328701573688",
"type": "includes"
}
这是一个文件:
{
"_id": "nodes/328668871224",
"_rev": "3610088613",
"_key": "328668871224",
"name": "Gold-edged Gem",
"type": "species"
}
如您所见,没有根本区别。它们都是文件。边缘集合仅在您使用 Arango 的图形数据库功能时才有用。
据我了解,将集合的类型设置为“edge”这一点告诉 Arango,它应该确保存储在其中的所有文档都至少具有 _to 和 _from 属性,以便文档可以作为其他两个文档之间的连接器。文件。
一旦你有一个文档集合,其文档由边缘集合中的一堆边缘文档连接......现在你有一个图表。