▶️30

왜 그래프 데이터베이스인가?

그래프 데이터 모델 기초

왜 그래프 데이터베이스인가?
YouTube에서 보기

"친구의 친구의 친구"를 찾는 데 5분이 걸린다면?

왜 중요한가?

소셜 네트워크 회사에서 실제 있었던 일입니다.

문제 상황:

  • "나와 3촌 이내 연결된 사람 추천" 기능 개발
  • PostgreSQL로 구현했더니 쿼리 응답 시간 5분
  • 사용자들이 페이지를 떠나기 시작

원인 분석:

에디터 로딩 중...

결과:

  • 관계가 깊어질수록 JOIN이 기하급수적 증가
  • 1000만 사용자 x 평균 500친구 = 폭발적 연산

실무 시나리오 1: 금융 사기 탐지

은행에서 이상 거래를 추적하는 상황을 생각해보세요.

에디터 로딩 중...
에디터 로딩 중...
에디터 로딩 중...

PayPal: 그래프 DB로 전환 후 사기 탐지율 40% 향상, 오탐율 60% 감소


실무 시나리오 2: 추천 시스템

Netflix가 "이 영화를 좋아하셨다면..." 추천을 만드는 방법:

에디터 로딩 중...
에디터 로딩 중...
에디터 로딩 중...

실무 시나리오 3: IT 인프라 장애 분석

에디터 로딩 중...

그래프 DB로 인프라 의존성을 모델링하면:

  • "이 서버가 죽으면 어떤 서비스가 영향받나?" -> 1줄 쿼리
  • "이 장애의 근본 원인(root cause)은?" -> 역방향 탐색
  • Cisco, SAP가 네트워크 토폴로지에 그래프 DB 사용

어떻게 작동하는가?

그래프 DB의 해결책

에디터 로딩 중...

응답 시간: 0.3초 (1000배 빠름!)

왜 이렇게 빠른가? - Index-free Adjacency

에디터 로딩 중...

성능 벤치마크 (실측 데이터)

에디터 로딩 중...

핵심: 관계형 DB는 깊이가 깊어질수록 기하급수적 느려지지만, 그래프 DB는 선형적으로만 증가합니다.

그래프 DB가 빛나는 순간

사용 사례왜 그래프?실제 기업성과
소셜 네트워크친구 관계, 영향력 분석Facebook, LinkedIn실시간 추천
추천 엔진"이 상품 산 사람들이 본 것"Amazon, Netflix매출 35% 증가
사기 탐지순환 거래, 공모 패턴PayPal, 은행탐지율 40% 향상
지식 그래프개념 연결, 추론Google, Wikipedia검색 정확도 향상
네트워크 분석IT 인프라, 공급망Cisco, SAP장애 분석 90% 단축
의료/생명과학약물 상호작용, 질병 경로AstraZeneca신약 개발 가속
공급망 관리부품 추적, 리스크 분석Walmart공급망 가시성 확보

그래프 DB가 적합하지 않은 경우

모든 문제에 그래프 DB가 답은 아닙니다:

사용 사례더 나은 선택이유
단순 CRUDPostgreSQL, MySQL관계 탐색 없으면 불필요
로그/시계열InfluxDB, TimescaleDB시계열 최적화 DB가 적합
비정형 문서MongoDB문서 단위 저장/조회
대량 집계ClickHouse, BigQuery컬럼나 분석 DB가 빠름

핵심 통찰

"관계형 DB는 데이터를 테이블로 본다. 그래프 DB는 데이터를 네트워크로 본다."

이 차이가 중요한 이유:

  • 현실 세계의 데이터는 원래 연결되어 있음
  • 관계가 핵심인 문제에서 그래프 DB가 압도적 성능
  • 질문 자체가 "어떻게 연결되어 있나?"일 때 적합
  • "데이터 간의 관계를 탐색하는가?" -> Yes면 그래프 DB 고려
핵심 포인트
  • 관계 중심 쿼리에서 RDBMS는 JOIN 폭발 문제 발생
  • 그래프 DB는 Index-free Adjacency로 연결된 것만 탐색
  • 소셜, 추천, 사기 탐지, 지식 그래프에 그래프 DB 적합
  • 핵심 질문: "어떻게 연결되어 있는가?"
  • 깊이가 깊어질수록 RDBMS는 기하급수적 느려지고, 그래프 DB는 선형적