Замена 3 ГБ SQLite на 10 МБ: FST — новый герой?

Кто-то сжал 3 ГБ базы до 10 МБ с помощью FST — и это не магия, а конечные автоматы.
Представьте: вы приходите на работу, а ваш 3-гигабайтный SQLite файл вдруг худеет до 10 МБ. Нет, это не новый детокс-тренд для баз данных, а эксперимент с FST (finite state transducer).
Как это работает?
FST — это как умный комбинаторный замок: он хранит данные в виде состояний и переходов, отбрасывая всё лишнее. В отличие от SQLite, который тащит за собой индексы, логи и прочий «жирок», FST сжимает информацию до минимально возможного размера, сохраняя при этом возможность быстрого поиска.
Кому это нужно?
- Если у вас read-only данные (словари, геоданные, маршруты).
- Если каждый мегабайт на счету (мобильные приложения, IoT).
- Если вы фанат минимализма и ненавидите раздутые БД.
Подводные камни
Конечно, FST не умеет делать JOIN'ы и транзакции — это не замена SQLite, а скорее швейцарский нож для специфических задач. Но когда нужно хранить миллионы записей и быстро их искать, FST выглядит как герой из фильма «Начало»: компактно и эффективно.
Комментарий студии METABYTE: Мы тоже любим оптимизацию, но пока не готовы заменить все базы на FST — наш CI/CD этого не переживёт. Хотя для статических данных — отличный вариант!