
카산드라부터 엘라스틱서치까지, 수십억 개의 벡터를 실시간으로 요리하는 데이터 퓨전 아키텍처
본 아티클은 넷플릭스가 수천 시간의 영상 데이터에서 원하는 장면을 즉각적으로 찾아내기 위해 구축한 멀티모달 검색 아키텍처를 소개합니다. 카산드라, 카프카, 엘라스틱서치를 유기적으로 결합하여 수십억 개의 벡터 데이터를 처리하는 파이프라인의 핵심 설계를 심도 있게 다룹니다.
대규모 미디어 에셋을 관리하거나 벡터 검색 엔진 도입을 고민하는 데이터 및 백엔드 엔지니어에게 실무적인 파이프라인 설계 가이드가 될 것입니다.
방대한 양의 원본 영상 데이터에서 원하는 장면을 찾는 과정은 매우 느리고 비효율적이며, 기존의 키워드 매칭 방식으로는 영상의 깊은 맥락과 의도를 파악하기 어렵습니다.
카산드라를 이용한 영속성 계층, 카프카 기반의 오프라인 데이터 퓨전 파이프라인, 그리고 엘라스틱서치의 벡터 검색 기능을 결합한 3단계 디커플링 아키텍처를 도입했습니다.
수십억 개의 데이터 포인트를 처리하면서도 1초 미만의 쿼리 지연 시간을 유지하며, 프레임 단위의 정확한 검색 결과를 제공하여 제작팀의 창의적 흐름을 지원합니다.
Trade-off
오프라인 퓨전 파이프라인에서 발생하는 높은 연산 비용과 메타데이터 증가에 따른 저장 공간 부담이 있으며, 검색 정확도가 개별 AI 모델들의 성능 및 시간 동기화 정밀도에 의존적입니다.
연속적인 영상 메타데이터를 고정된 크기의 시간 단위로 분할하여 이기종 모델의 데이터를 단일 타임라인으로 정렬하는 기술입니다.
심볼릭 텍스트 매칭과 시멘틱 벡터 임베딩의 점수를 결합하여 결과의 정확성과 해석 가능성을 동시에 확보하는 방식입니다.
Elasticsearch에서 부모 문서와 자녀 문서의 관계를 계층적으로 유지하여 복합적인 속성 검색을 지원하는 인덱싱 기법입니다.




