Как известно, те, кто хочет, ищет способы, а те, кто не хочет — оправдания.
Те, кому не хватает целеустремленности и авантюризма, говорят, что SQLite не заточена под работу с большими объемами данных и вообще не в этом ее главное преимущество. Те, кто открыт новому и не боится вызовов, делают базу на 6 терабайт.
Ко вторым относится автор searchcode — проекта по поиску исходного кода. В базе больше 75 миллиардов строк из 40 миллионов проектов. Вот так 6,4 ТБ данных и набежало.
🔵Изначально автор использовал MySQL, и был верен ей с самого начала до конца 2024 года. Но он постоянно искал способы сделать архитектуру проекта проще и удобнее — и пришел к мысли, что пора переходитm на SQLite.
🔵Переход не всегда был простым — пришлось и разобраться, как обойти ошибку
database is locked, и найти способ сжатия данных в SQLite. В MySQL вопрос решался через функцию compress, а вот в SQLite решение оказалось не таким очевидным.Спойлернем: автор начал с поисков стороннего плагина, но в итоге пришел к тому, что более жизнеспособный вариант — компрессия на уровне файловой системы.
🔵Несмотря на все сложности, SQLite с 6,4 ТБ справляется не хуже, а иногда даже лучше, чем MySQL. Автор все равно переживает, что какие-нибудь проблемы все равно вылезут, но пока полет нормальный.
Как вам такой эксперимент?
❤️ — Проект работает, цель достигнута — значит, все было не зря!
🙈 — Слишком много суеты непонятно для чего
