telexed ~ c / 35605736-16fradar:50 · otherLIVE
← 피드로
NO.
#35605736
분야
기타
출처
GeekNews
게재
2026-05-11 06:02:24
중요도
★ 5/10 — radar 50
`3GB SQLite` 사전을 `10MB FST` 바이너리로 교체
FIG-3561:1

`3GB SQLite` 사전을 `10MB FST` 바이너리로 교체

Replacing a `3GB` `SQLite` dictionary with a `10MB` `FST` binary

접두사 검색처럼 후보가 수천만 개로 불어나는 데이터는 SQLite FTS보다 정적 FST가 배포 비용에서 훨씬 유리하다. 읽기 전용 검색이라면 앱 번들급 크기로 줄여 모바일·엣지 배포에 바로 써먹을 수 있다.

[ 요점 ]
  1. 핀란드어 굴절형 확장으로 항목 수가 4천만~6천만 개까지 불어나며, 순수 트라이 구조는 메모리와 크기 한계에 걸렸다.
  2. 임시 해법으로 SQLite FTS를 붙여 검색 속도는 확보했지만, 첫 다운로드가 3GB라 설치 장벽이 너무 컸다.
  3. 정적 FST 바이너리로 바꾸자 결과물이 약 10MB까지 줄었다. 검색 엔진이 아니라 배포 포맷을 바꾼 셈이다.
  4. 변경이 드문 사전·태그·지역명 자동완성처럼 읽기 비중이 압도적인 데이터라면 같은 압축 전략을 그대로 이식할 만하다.
원문news.hada.io/topic?id=29379원문 보기 →

// related