HyperAIHyperAI

Command Palette

Search for a command to run...

LumoSQL : Améliorations Sécurisées et Performantes de SQLite pour les Architectures Modernes

Résumé de l'article sur LumoSQL Présentation de LumoSQL LumoSQL est une modification de la bibliothèque SQLite, l'une des technologies de stockage de données embarquées les plus largement déployées dans le monde. Ce projet, actuellement en Phase II, vise à ajouter des fonctionnalités de sécurité, de confidentialité, de performance et de mesure à SQLite, sans en faire une fourchette indépendante. Caractéristiques principales Backends interchangeable : LumoSQL permet de remplacer facilement les moteurs de stockage clé-valeur sous-jacents de SQLite. LMDB est l'exemple le plus connu, mais d'autres moteurs peuvent être intégrés. Sécurité moderne : LumoSQL inclut des chiffrements modernes, notamment l'Attribute-Based Encryption (ABE), qui peut être appliqué de manière granulaire jusqu'au niveau des lignes. Chaque ligne est munie d'un checksum pour détecter rapidement les erreurs. Outil debenchmarking : L'outil non-forkeur (Not-forking tool) permet de tester et comparer de manière cohérente les performances de SQLite sur divers systèmes et configurations. Développement et utilisation Maintenance et participation : LumoSQL est maintenu à l'aide de Fossil, une plate-forme de gestion de source code. Pour participer au développement, vous pouvez rejoindre le forum ou demander l'accès au dépôt Fossil. Malgré les modifications nécessaires, LumoSQL ne fourchette pas les projets upstream, ce qui facilite les mises à jour et la collaboration avec SQLite. Installation et dépendances : Pour cloner le dépôt LumoSQL, utilisez fossil clone https://lumosql.org/src/lumosql. Les outils obligatoires sont not-fork (un script Perl) et Fossil (recommandé). Sur Debian ou Ubuntu, installez les dépendances avec sudo apt update, sudo apt full-upgrade et sudo apt install git build-essential tclx. Sur Fedora, utilisez sudo dnf install git make gcc ncurses-devel readline-devel glibc-devel autoconf tcl-devel tclx-devel. Benchmark rapide : Pour lancer le benchmark, exécutez make benchmark USE_LMDB=no USE_BDB=no SQLITE_VERSIONS='3.35.5'. Les résultats sont stockés dans une base de données SQLite nommée benchmarks.sqlite. Utilisez tool/benchmark-filter.tcl pour filtrer et visualiser les résultats. Par exemple, make benchmark USE_LMDB=no USE_BDB=no DATASIZE=2 SQLITE_VERSIONS='3.35.5 3.33.0' peut vous aider à comparer les performances entre différentes versions et tailles de données. Limitations de LumoSQL Bien qu'en développement avancé, LumoSQL présente encore certaines limitations. Par exemple, certaines versions de LMDB peuvent avoir une performance moindre comparativement à la version native de SQLite 3.35.5, mais ces différences de performance peuvent varier selon le type de disque dur utilisé et la taille des données. Histoire de LumoSQL LumoSQL prend racine dans les travaux précurseurs de Howard Chu, qui a proposé une intégration de LMDB à SQLite en 2013. Ce travail a montré des avantages significatifs en termes de performance. Cependant, ces implantations étaient souvent des fourches dures qui n'évoluaient plus. En janvier 2020, la conclusion du projet était qu'une approche non-fourcheuse était nécessaire pour maintenir la compatibilité et faciliter les mises à jour. Depuis, LumoSQL a exploré de nouvelles possibilités de collaboration et de développement. Évaluation par des professionnels de l'industrie Les professionnels de l'industrie saluent les efforts de LumoSQL pour améliorer l'infrastructure de SQLite tout en respectant son intégrité. Cette approche non-forkeuse est vue comme une solution prometteuse pour introduire de nouvelles fonctionnalités critiques sans perturber les milliards d'utilisateurs actuels de SQLite. Profil de l'entreprise LumoSQL est soutenu par la NLNet Foundation, une organisation dédiée à l'avancement des technologies libres et open source. Le projet est distribué sous licence MIT, favorisant ainsi l'adoption et la contribution de la communauté. Conclusion LumoSQL représente une avancée notable dans l'optimisation et l'amélioration de SQLite. Bien que toujours en développement, il offre des fonctionnalités innovantes en matière de sécurité et de performance, tout en maintenant une compatibilité étroite avec le code original de SQLite. Le soutien de la NLNet Foundation et la collaboration avec d'autres projets promettent un futur brillant pour LumoSQL.

Liens associés

LumoSQL : Améliorations Sécurisées et Performantes de SQLite pour les Architectures Modernes | Articles tendance | HyperAI