在ArangoDB中,边(Edge)是用于连接图中两个顶点的特殊文档。边定义了顶点之间的关系,并且可以包含额外的属性来描述这种关系。以下是关于ArangoDB中边定义的一些关键点:
首先,你需要创建一个边集合来存储边文档。边集合在ArangoDB中是一个普通的集合,但它被标记为边集合,以便ArangoDB知道它将用于图操作。
db._createEdgeCollection("edges", { waitForSync: true });
边文档通常包含以下字段:
_from
: 源顶点的ID,格式为"collectionName/vertexKey"
。_to
: 目标顶点的ID,格式为"collectionName/vertexKey"
。例如,创建一个表示“朋友”关系的边:
db.edges.save({
_from: "users/123",
_to: "users/456",
since: 2020
});
你可以使用AQL(ArangoDB查询语言)来查询边集合。例如,查找所有从用户123出发的朋友关系:
FOR v, e IN 1..1 OUTBOUND 'users/123' edges
RETURN { vertex: v, edge: e }
在ArangoDB中,图是由顶点集合和边集合组成的。你可以使用ArangoDB的图形管理工具来定义图:
var graph = db._createGraph("socialNetwork", [
{ collection: "users", type: "vertex" },
{ collection: "edges", type: "edge" }
]);
一旦定义了图,你可以使用图特定的操作来查询和遍历图。例如,查找从用户123出发的所有朋友:
FOR v IN 1..2 OUTBOUND 'users/123' socialNetwork
RETURN v
_from
和_to
字段,否则它们将被视为普通文档。waitForSync: true
),以确保数据在磁盘上持久化。通过这些步骤,你可以在ArangoDB中有效地定义和使用边,从而构建复杂的图形数据模型。
领取专属 10元无门槛券
手把手带您无忧上云