- Projeto que adiciona segurança, privacidade, desempenho e recursos de instrumentação ao SQLite e adota um modelo de combinação dinâmica de código-fonte em vez de um fork, facilitando acompanhar mudanças do upstream
- Em vez de substituir diretamente o SQLite, permite aplicar individualmente ao SQLite apenas os recursos necessários, o que favorece adoção e expansão graduais
- Motor de backend conectável: pode usar o Btree padrão do SQLite, além de backends LMDB e Berkeley DB, com previsão de adicionar experimentalmente novos motores KVS (armazenamento chave-valor) no futuro
- Introduz tecnologias modernas de criptografia, como criptografia em disco (at-rest encryption), criptografia baseada em atributos (ABE) e criptografia/segurança em nível de linha (concedendo a cada usuário permissão para descriptografar apenas algumas linhas)
- Complementa limitações existentes do SQLite e atende a exigências de privacidade como o GDPR
- Integridade dos dados: oferece recurso de checksum em nível de linha (detecção/prevenção de corrupção)
- Ferramenta robusta de benchmarking
- Executa benchmarks combinando várias versões de SQLite/LMDB/BDB e opções de tamanho de dados (DATASIZE), armazenando automaticamente os resultados em um banco de dados
- Cada execução de benchmark é identificada permanentemente por um hash SHA3, facilitando análise de dados e reprodutibilidade
- Sistema de build flexível
- Automação de build, combinação e benchmark baseada em ferramentas Perl do modelo not-forking, com os resultados armazenados em banco de dados
- Desenvolvido como código aberto sob licença MIT com apoio da NLNet Foundation, com suporte a Linux (x86, ARM, RISC-V) e BSD
- Significado arquitetural e histórico
- Embora backends alternativos anteriores para SQLite frequentemente fossem hard forks, o LumoSQL tem como principais diferenciais ser sem fork, de combinação dinâmica e com múltiplos backends
- O ponto de partida foi o experimento de port baseado em LMDB de Howard Chu em 2013, e benchmarks posteriores demonstraram que o desempenho nativo do SQLite também continuou melhorando de forma consistente
- No futuro, deve ampliar seu papel como plataforma de experimentação para diversas arquiteturas KVS, tentativas de incorporação ao upstream e recursos avançados de segurança/integridade/privacidade
Ainda não há comentários.