Scaling Airbnb’s Identity Graph with a Unified Knowledge Graph Infrastructure
Author: Lucen Zhao, Shukun Yang, Ashish Jain | Source: Medium (Airbnb Engineering) | Published: 2026-05-20
한 줄 요약
Airbnb가 서드파티 SaaS 그래프 DB의 long-tail 지연·운영 불안정을 벗어나, JanusGraph + DynamoDB 기반 사내 멀티테넌트 knowledge graph 인프라로 70억 노드·110억 엣지 규모의 identity graph를 마이그레이션해 P99 지연을 32~93% 개선.
핵심 주장/내용
- Identity graph는 Trust & Safety의 핵심 기반(의심 활동 탐지, 연결 계정 식별). 7B 노드/11B 엣지, 일 500만 엣지 증가, 4~8 hop 쿼리가 다수 → 확장성·long-tail 지연·안정성 난제
- 기존 그래프 도입의 4가지 안티패턴: 관계형 “그래프”(비싼 조인), 오프라인 그래프(일일 스냅샷 한계), DIY 오픈소스(운영 부담), Managed PaaS(벤더 락인·병목)
- 기술 스택: JanusGraph(Apache TinkerPop 기반 분산 그래프 DB) + DynamoDB(스토리지 백엔드) + OpenSearch(인덱싱) + Gremlin 쿼리. JanusGraph의 pluggable storage로 스토리지 분리 → 분산 스토리지 재발명 없이 그래프 로직 레이어 제어
- JanusGraph 엔진 최적화: DynamoDB 조건부 쓰기 기반 경량 트랜잭션, getMultiSlices 병렬 실행(high-fanout 지연 감소), 분산 트레이싱 통합
- 마이그레이션: shadow traffic으로 동일 Gremlin 쿼리 side-by-side 벤치마크 + 클라이언트 측 쿼리 재작성(Path step 제거 → 조건부 쿼리, side-effect step 최적화)
주요 수치 / 사실
- 70억 노드, 110억 엣지, 일 ~500만 신규 엣지
- 읽기 쿼리 4~8 hop이 대부분
- Gremlin 읽기 지연(P95/P99) 서드파티 대비 32~93% 감소
- E2E 읽기 P95 ~2.1s→1.0s(-51%), P99 ~5.0s→2.5s(-49%); 쓰기 P95 353ms→156ms(-56%)
- 쓰기 QPS 부하 테스트에서 기존 솔루션의 10배까지 스케일
- 현재 사기 탐지, 인벤토리 지식 그래프, 데이터 리니지 등 지원
관련 위키
- Knowledge Graph Infrastructure
- Knowledge Representation
- Distributed Systems Reliability
- Data Governance
Source: 원문 보기