A novidade em bancos de dados é o velho SQLite! Para produção!
Tenho visto postagens - nem todas novas sobre o uso do SQLite de verdade em produção!
Quando pensamos em novas arquiteturas de banco de dados, ficamos hipnotizados pelos limites de escala. Se não puder lidar com petabytes, ou pelo menos terabytes, não está na conversa. Mas a maioria dos aplicativos nunca verá um terabyte de dados, mesmo que sejam bem-sucedidos.
SQLite é um banco de dados embutido. Ele não vive em uma camada arquitetônica convencional; é apenas uma biblioteca vinculada ao processo do seu servidor de aplicativos.
As vantagens apontadas por muitos são:
- É estável, multiplataforma e compatível com versões anteriores;
- Seu código é de domínio público e gratuito, ou seja, todos podem utilizar;
- Guarda o banco de dados em um único arquivo.
4 milhões de queries por segundos com SQLite - inglês
Migrando de PostGress para SQLite - inglês
Notas sobr SQLite e GO - inglês
O maior problema com o uso do SQLite na produção é a recuperação de desastres. Se o seu servidor morrer, seus dados também morrerão.
Mas inventaram o litestream.
O Litestream é um projeto de código aberto que torna o SQLite viável para aplicativos full-stack por meio do poder da replicação.
Litestream é uma ferramenta que executa em um processo separado e replica continuamente um banco de dados SQLite para o Amazon S3 ou outro lugar!
Seguindo dia do blopes tem o https://github.com/superfly/litefs
Que é parecido com o litestream, e ambos tem o mesmo desenvolvedor a diferente é que o
LiteFS tem um patrocinador!
Dica do thelinuxlich @solinvictvs no twitter
https://github.com/maxpert/marmot
Marmot é um replicador SQLite distribuído com consistência eventual e sem master
Lembrando que o SQLite pode trabalhar com pesquisa de texto
Full-text search
E com SQLite Json