Neo4j 그래프 개념 — 노드·관계·프로퍼티

Neo4j 그래프 개념 — 노드·관계·프로퍼티

Neo4j 의 그래프 데이터 모델은 노드, 관계, 프로퍼티, 라벨 네 가지 기본 요소로 이뤄져 있어요. 이 개념을 이해하면 그래프 데이터를 설계하고 쿼리할 수 있어요.

노드 (Node)

  • 데이터의 개체를 나타내요. 예: Person, Movie, City.
  • 하나 이상의 라벨(Label) 로 분류하고, 프로퍼티로 세부 정보를 담아요.
(:Person {name: 'Tom Hanks', born: 1956})
  • 라벨: Person / 프로퍼티: name, born.

관계 (Relationship)

  • 두 노드를 방향성 있게 연결해요. 예: (:Person)-[:ACTED_IN]->(:Movie).
  • 관계에도 타입프로퍼티를 줄 수 있어요. 예: [:ACTED_IN {roles:['Forrest']}].

프로퍼티 (Property)

  • 노드/관계에 붙는 키-값 속성이에요.
  • 문자열, 숫자, 불리언, 리스트, 날짜 등 여러 타입을 지원해요.

라벨 (Label)

  • 노드를 그룹으로 분류하는 태그예요. 한 노드에 여러 라벨을 붙일 수 있어요.
  • 쿼리에서 (:Person) 처럼 특정 라벨의 노드만 골라낼 수 있어요.

예시 그래프

CREATE (tom:Person {name:'Tom Hanks'})
CREATE (forrest:Movie {title:'Forrest Gump'})
CREATE (tom)-[:ACTED_IN {roles:['Forrest']}]->(forrest)

더 알아보기 (Learn more)

출처: Neo4j Graph Database Concepts