盡可能指定邊緣標籤 - Amazon Neptune

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

盡可能指定邊緣標籤

建議在模式指定邊緣時盡可能提供邊緣標籤。請考慮下列範例查詢,此查詢用於連結居住在城市中的所有人員與造訪該城市的所有人員。

MATCH (person)-->(city {country: "US"})-->(anotherPerson) RETURN person, anotherPerson

如果您的圖形模型使用多個邊緣標籤將人員連結至城市以外的節點,則透過不指定最終標籤,Neptune 將需要評估稍後將捨棄的其他路徑。在上述查詢中,由於未提供邊緣標籤,因此引擎會先執行更多工作,然後篩選出值以取得正確的結果。上述查詢的較好版本可能是:

MATCH (person)-[:livesIn]->(city {country: "US"})-[:visitedBy]->(anotherPerson) RETURN person, anotherPerson

這不僅有助於評估,而且可讓查詢規劃器建立更好的計劃。您甚至可以將此最佳實務與備援節點標籤檢查結合,以移除城市標籤檢查並將查詢寫入為:

MATCH (person)-[:livesIn]->({country: "US"})-[:visitedBy]->(anotherPerson) RETURN person, anotherPerson