Neo4j是一個高度可擴展的原生圖數據庫管理系統,它具有成熟數據庫的所有特性。在Neo4j中,數據被表示為節點(Node)、關系(Relationship)、屬性(Property)和標簽(Label)等元素。下面是關于Neo4j實體和關系的定義:
(startNode)-[relationship]->(endNode)
的形式。KNOWS
、LOVES
、WORKS_FOR
等,這些類型可以擴展以適應特定的應用需求。在Neo4j中定義實體和關系通常涉及以下步驟:
CREATE (n:Label {property:value})
語句創建具有特定標簽和屬性的節點。例如,CREATE (p:Person {name:"Alice", age:30})
將創建一個名為Alice的30歲的人的節點。CREATE (n1)-[r:RelationshipType {property:value}]->(n2)
語句在兩個節點之間創建具有特定類型和屬性的關系。例如,CREATE (p1:Person {name:"Bob"})-[r:KNOWS {since:2020}]->(p2:Person {name:"Alice"})
將在Bob和Alice之間創建一個從2020年開始的KNOWS
關系。MATCH (n)-[r]->(m) RETURN n, r, m
等Cypher查詢語言語句來查詢和分析節點和關系。通過靈活地定義和使用實體和關系,可以充分利用Neo4j在圖數據存儲和處理方面的強大功能。