그래프 데이터베이스의 기본 개념
- 관계형 데이터베이스(RDB)의 한계
복잡한 데이터 관계를 처리할 때 비효율적이며, JOIN 연산이 많아질수록 성능 저하가 발생합니다.
- 그래프 데이터베이스의 장점
데이터 간의 관계를 직관적으로 표현할 수 있어 인사이트 도출이 용이합니다.
노드와 관계를 통해 실시간으로 데이터 구조를 유연하게 변경할 수 있습니다.
그래프 데이터베이스의 구성 요소
- 노드(Node):
엔티티나 객체를 나타냅니다.
예: 사람, 장소, 제품 등.
- 관계(Relationship):
노드 간의 연관성을 나타냅니다.
방향성이 있으며, 관계의 유형을 정의할 수 있습니다.
예: "친구이다", "구매했다", "작업한다".
- 속성(Properties):
노드나 관계에 부가적인 정보를 제공하는 키-값 쌍입니다.
예: 노드의 '이름', '나이', 관계의 '시작일', '역할'.
- 라벨(Labels):
노드의 유형이나 클래스를 지정하는 태그입니다.
예: :Person, :Company, :Product
RDBMS와 그래프 데이터베이스의 비교
| 항목 | 관계형 데이터베이스(RDBMS) | 그래프 데이터베이스 |
|---|
| 데이터 구조 | 테이블 | 노드와 관계 |
| 관계 표현 | 외래 키 및 조인 | 관계(Edge)로 직접 연결 |
| 데이터 탐색 | 조인을 통한 탐색 | 관계를 통한 직접 탐색 |
| 스키마 | 엄격한 스키마 필요 | 유연한 스키마 지원 |
| 성능 | 복잡한 관계에서 성능 저하 | 복잡한 관계에서도 우수한 성능 |
Neo4j 사용

신기하다
아직 사용법이 익숙하지 않고 어려워서
공부를 더해봐야 겠다.