Après Swyft, Cupertino met le code source de FoundationDB en open source. Cette startup spécialisée en bases de données SQL/noSQL a participé à iCloud depuis son rachat en 2015.
Apple fait un nouveau pas vers l’open source, après la timide poussée du langage de programmation maison Swyft dans le monde du libre. Cette fois-ci, c’est le code-source de FoundationDB, une startup spécialisée dans les bases de données SQL/NoSQL rachetée il y a trois ans par Cupertino, qui est publié sur Github.
FoundationDB propose une gestion de bases de données distribuées « conçue pour gérer de gros volumes de données structurées à travers des clusters ». L’avantage de sa solution noSQL est sa capacité de monter en charge de manière linéaire avec l’augmentation du nombre de nœuds, mais la startup s’adressait également aux bases SQL avec SQL Layer. Son fonctionnement par couches (layers) permet de faire correspondre les systèmes de traitement des données aux besoins spécifiques des applications développées.
Sa solution repose sur un index de valeurs clés (« key-value store ») sur lequel vont être déployés en couches (« layers ») des modèles de données. « En exécutant plusieurs couches sur un même cluster (par exemple, une couche de stockage de documents et une couche de graphique), vous pouvez faire correspondre vos applications spécifiques au meilleur modèle de données » explique l’entreprise.
L’open source en couches
Soit une montée en charge linéaire avec l’augmentation du nombre de nœuds sur le cluster. Cette solution permettant une mise à l’échelle de l’infrastructure, et donc des coûts moindres, elle a tapé dans l’œil des éditeurs d’applications exigeant des bases de données massives. C’est pourquoi Apple avait racheté la startup en 2015, de telle sorte que FoundationDB devienne la pierre angulaire d’iCloud pour la gestion des données utilisateurs des dizaines de millions de comptes que revendique le service de stockage d’Apple.
A été ouvert à l’open source le cœur de FoundationDB, son « key-value store ». L’objectif est de permettre à la communauté de développer de nouvelles couches mais aussi d’améliorer le noyau de base « en signalant les bugs » notamment. « En ouvrant FoundationDB, notre objectif est de bâtir une communauté saine et réactive » écrit l’équipe de FoundationDB. Le code source est publié sur Github et un forum a été créé.