20

대규모 데이터를 위한 Blocking 기법

Day 3: Blocking & Indexing 전략

학습 목표

대규모 데이터 처리를 위한 Blocking 기법을 이해한다 LSH, MinHash 등 고급 기법의 개념을 파악한다

대규모 데이터의 도전

문제: 1억 건 x 1억 건 = 1경 쌍

Standard Blocking으로 99.9% 줄여도:

에디터 로딩 중...

해결책 1: 더 엄격한 Blocking

복합 키 (Compound Key)

에디터 로딩 중...

위험: 키 하나라도 오류 시 누락


해결책 2: LSH (Locality Sensitive Hashing)

유사한 항목은 높은 확률로 같은 버킷에 해시

에디터 로딩 중...

MinHash LSH

Jaccard 유사도 추정용

에디터 로딩 중...

SimHash

Cosine 유사도 기반 (텍스트 중복 탐지)

에디터 로딩 중...

분산 처리

Spark에서 Blocking

에디터 로딩 중...

Approximate Matching at Scale

기법용도라이브러리
MinHash LSHJaccard 유사도datasketch
SimHash텍스트 중복simhash
FAISS벡터 유사도faiss
AnnoyANN (근사 최근접)annoy

임베딩 기반 Blocking

에디터 로딩 중...

장점:

  • 의미적 유사성 포착
  • "삼성전자" vs "Samsung Electronics" 매칭 가능

단점:

  • 계산 비용
  • 모델 의존성

실무 가이드

데이터 규모권장 기법
< 10만Standard Blocking
10만 ~ 1000만복합 키 + Multi-Block
1000만 ~ 1억LSH + 분산 처리
> 1억임베딩 + FAISS + Spark