3
Tarantool est un système de gestion de base de données NoSQL fonctionnant sur un serveur d'applications Lua.Le code est disponible gratuitement sous les termes de la licence BSD.Les plates-formes prises en charge sont GNU / Linux, Mac OS et FreeBSD.Caractéristiques clés Contrairement à la plupart des bases de données NoSQL, Tarantool prend en charge les clés primaires, secondaires, les clés en plusieurs parties, les types d'index HASH, TREE et BITSET.Tarantool prend en charge les procédures stockées Lua, qui peuvent accéder et modifier les données de manière atomique.Les procédures peuvent être créées, modifiées et supprimées lors de l'exécution.L'utilisation de Lua comme langage d'extension ne s'arrête pas aux procédures stockées: les programmes Lua peuvent être utilisés au démarrage, pour définir des déclencheurs et des tâches d'arrière-plan, interagir avec des pairs en réseau.Contrairement aux cadres de développement d'applications populaires implémentés autour d'un modèle de «réacteur», la mise en réseau dans Lua côté serveur est séquentielle, mais très efficace, car elle est construite sur l'environnement multitâche coopératif utilisé par le serveur lui-même.Étendu avec Lua, Tarantool remplace généralement non pas un mais quelques composants existants par un seul système performant, modifiant et simplifiant les architectures d'applications Web multiniveaux complexes.Tarantool prend en charge la réplication.Les répliques peuvent s'exécuter localement ou sur un hôte distant.La réplication de Tarantool est asynchrone et ne bloque pas les écritures sur le maître.Lorsque ou si le maître devient indisponible, la réplique peut être commutée pour assumer le rôle du maître sans redémarrage du serveur.