[1부] 표준프레임워크 신규버전 v4.3 검색 기능에 활용된 AWS OpenSearch 알아보기! (김세웅 리더 OpenSearch User Group)
- 오픈서치는 커뮤니티 주도 오픈소스 검색 플랫폼이며, 분석, 벡터 데이터베이스, 옵저빌리티, 보안 등 다양한 용도로 활용된다. 🔍
- 2021년 ELv2 라이선스 이슈로 엘라스틱서치에서 포크되어 탄생했으며, 현재는 링크스 파운데이션에 속해 있다. 📜
- 오픈서치는 코어, 대시보드, 데이터 프리퍼라는 세 가지 주요 플랫폼으로 구성되어 있으며, 다양한 플러그인을 통해 확장 가능하다. 🧩
- 역색인 구조를 사용하여 단어 기반 검색에 효율적이며, 필드 데이터 캐시와 독밸류를 통해 집계 및 정렬 쿼리 성능을 향상시킨다. 🗂️
- BM25 알고리즘은 문서 길이 가중치를 고려하여 검색 결과의 관련성을 높이는 데 사용된다. ⚖️
- 데이터는 인덱스, 샤드, 루신 인덱스, 세그먼트 구조로 저장되며, 세그먼트는 불변 객체이다. 🧱
- 데이터 쓰기 과정은 버퍼, 트랜스로그, 파일 시스템 캐시, 디스크 순으로 진행되며, 리프레시와 플러시를 통해 데이터의 지속성을 보장한다. 💾
- 삭제 및 업데이트는 삭제 마커를 사용하며, 병합 과정을 통해 실제 데이터가 제거된다. 🗑️
- API 호출 시 Q와 스레드 풀을 사용하며, Q가 가득 차면 429 에러가 발생할 수 있다. 🚦