在 ArangoDB 中,子圖(Subgraph)是一種特殊類型的圖形結構,它允許您將多個圖形集合組合在一起,以便更有效地查詢和操作數據。要配置子圖,您需要遵循以下步驟:
創建圖形集合:首先,您需要創建一個或多個圖形集合來存儲您的數據。您可以使用 CREATE COLLECTION
語句創建一個新的圖形集合。例如:
CREATE COLLECTION myGraphCollection;
創建子圖:接下來,您需要創建一個子圖實例,指定要包含在子圖中的圖形集合以及連接條件。您可以使用 CREATE SUBGRAPH
語句創建一個新的子圖。例如:
CREATE SUBGRAPH mySubgraph
STARTNODE <startNodeCollection>
ENDNODE <endNodeCollection>
EDGE <edgeCollection>
CONNECTS <startNodeCollection>/<startNodeId> TO <endNodeCollection>/<endNodeId>;
其中,<startNodeCollection>
和 <endNodeCollection>
是要包含在子圖中的圖形集合的名稱,<startNodeId>
和 <endNodeId>
是起始節點和結束節點的 ID,<edgeCollection>
是連接起始節點和結束節點的邊的集合名稱。
添加邊:在創建了子圖之后,您需要向子圖中添加邊。您可以使用 ADD EDGE
語句向子圖中添加一條邊。例如:
ADD EDGE myEdge
IN MYSUBGRAPH mySubgraph
STARTNODE <startNodeCollection>/<startNodeId>
ENDNODE <endNodeCollection>/<endNodeId>
<edgeProperties>;
其中,<edgeProperties>
是邊的屬性,可以是鍵值對的形式。
查詢子圖:最后,您可以使用 GO
語句查詢子圖中的節點和邊。例如:
GO FROM <startNodeCollection>/<startNodeId> IN MYSUBGRAPH mySubgraph YIELD <nodeCollection>._key, <nodeCollection>.<propertyName>;
其中,<startNodeCollection>/<startNodeId>
是子圖中起始節點的 ID,<nodeCollection>
是要查詢的節點集合的名稱,<propertyName>
是節點的屬性名稱。
通過以上步驟,您可以成功配置 ArangoDB 中的子圖。請注意,這些示例中的 <collection>
和 <id>
需要替換為您自己的圖形集合和節點 ID。