本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
您可以使用 OpenCypher 查詢 Neptune 中的屬性圖資料,而不管它的載入方式,但是您不能使用 OpenCypher 來查詢以 RDF 載入的資料。
Neptune 大量載入器接受 Gremlin CSV 格式的屬性圖資料,以及 openCypher CSV 格式的屬性圖資料。另外,當然,您可以使用 Gremlin 和/或 OpenCypher 查詢,將屬性資料新增至圖形。
有許多在線上教學課程可用於學習 Cypher 查詢語言。在這裡,OpenCypher 查詢的幾個簡單範例可以協助您了解該語言,但到目前為止,開始使用 OpenCypher 查詢 Neptune 圖形的最好且最簡單的方法是透過在 Neptune 工作台中使用 OpenCypher 筆記本。此工作台是開放程式碼,並託管於 GitHub,網址為 https://github.com/aws-samples/amazon-neptune-samples
您會在 GitHub Neptune 圖形筆記本儲存庫
由 OpenCypher 處理的資料採取無排序的一系列鍵/值映射形式。優化、操作和擴大這些映射的主要方法是使用子句,執行模式比對、插入、更新和刪除鍵值對等任務。
在 OpenCypher 中有幾個子句用於尋找圖形中的資料模式,其中 MATCH
是最常見的。MATCH
可讓您指定要在圖形中尋找之節點、關係和篩選條件的模式。例如:
-
取得所有節點
MATCH (n) RETURN n
-
尋找連線的節點
MATCH (n)-[r]->(d) RETURN n, r, d
-
尋找路徑
MATCH p=(n)-[r]->(d) RETURN p
-
取得具有標籤的所有節點
MATCH (n:airport) RETURN n
請注意,上面的第一個查詢會傳回圖形中的每個單一節點,而接下來的兩個查詢會傳回每個具有一個關係的節點,但通常不建議這樣做!在幾乎所有情況下,您都想要縮小傳回的資料範圍,您可以透過指定節點或關係標籤和屬性來做到這一點,如第四個範例所示。
您可以在 Neptune github 範例儲存庫