IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Couchbase sort la version 7.0 à la suite d'une introduction en bourse réussie
Cette nouvelle version étend le support des transactions SQL multi-instructions

Le , par Bill Fassinou

78PARTAGES

3  0 
Programmée depuis le début de l'année, l'introduction en bourse de Couchbase s'est fait en juillet, mais la société a également profité pour publier la version 7.0 de la base de données open source. Cette nouvelle version majeure ajoute la prise en charge des transactions SQL multi-instructions qui sont à la base des applications de traitement des transactions (OLTP), les Scopes et les Collections qui permettent à Couchbase de ressembler et d'agir davantage comme une base de données relationnelle, etc. Des améliorations ont également été apportées à la gestion de l'accès aux données, au partitionnement et à l'isolation des index au niveau de la collection.

Couchbase entre en bourse et dépasse ses propres attentes

Couchbase s'est inscrit auprès de la SEC (Securities and Exchange Commission) des États-Unis pour une introduction en bourse qui pourrait la valoriser à hauteur de 3 milliards de dollars en mars. Mais début juillet, l'entreprise a déclaré qu'elle prévoyait de lever environ 161 millions de dollars en vendant environ 7 millions d'actions dans dont le prix se situe entre 20 et 23 dollars par action. Cela devrait lui permettre d'être valorisée à plus de 900 millions de dollars. Le jeudi 22 juillet, elle a émis 8,3 millions d'actions à 24 dollars chacune, ce qui était supérieur à la fourchette de prix initiale. Le premier jour de cotation, l'action a bondi de 27 %.



La société a également augmenté les options de surallocation des preneurs fermes à environ 1,25 million, contre 1,05 million prévu précédemment. Au total, la société s'attendait à avoir environ 40,1 millions d'actions en circulation après l'introduction en bourse, ce qui valorisait Couchbase à un peu moins d'un milliard de dollars sur une base non diluée, même avant la hausse. Ce chiffre a grimpé à environ 1,25 milliard de dollars. Selon des documents soumis auprès de la SEC après l'événement, l'introduction en bourse a finalement rapporté environ 200,1 millions de dollars à l'entreprise.

Le document indique que l'entreprise prévoyait d'utiliser l'argent pour son fonds de roulement, ses dépenses d'exploitation et ses dépenses d'investissement, ainsi que pour le remboursement éventuel de sa dette et pour de futures acquisitions. Selon les analystes, c'est une introduction en bourse réussie pour Couchbase qui devrait devenir plus compétitif sur le marché. Couchbase exploite ce qu'elle appelle une "base de données NoSQL moderne haute performance, flexible et évolutive qui fonctionne dans les centres de données et dans n'importe quel cloud". Le marché des bases de données est énorme.

En effet, selon l'International Data Corporation (IDC), les dépenses se sont élevées à environ 42,9 milliards de dollars en 2020 et devraient atteindre 62,2 milliards de dollars d'ici 2024. L'un des catalyseurs clefs de la croissance est le besoin de transformation numérique, notamment pour proposer des applications mobiles, gérer les systèmes périphériques et exploiter l'intelligence artificielle. De telles technologies ne fonctionnent tout simplement pas bien avec les bases de données relationnelles. « Les bases de données relationnelles ont été construites pour des applications volumineuses et monolithiques », a déclaré Matt Cain, PDG de Couchbase.

« Mais les applications d'aujourd'hui impliquent de nombreux ensembles de données et des interactions lourdes. Chez Couchbase, nous combinons le meilleur des bases de données relationnelles et du modèle NoSQL », a-t-il ajouté.

Couchbase 7.0 est disponible avec d'importantes mises à jour

Couchbase est une base de données moderne pour les applications d'entreprise. Couchbase Server 7.0 combine les forces des bases de données relationnelles avec la flexibilité, la performance et l'échelle de Couchbase. Selon l'équipe de développement, cette nouvelle version majeure ajoute une nouvelle prise en charge du modèle relationnel, y compris un modèle dynamique de confinement des données avec des couches de structure de type schéma appelées "Scopes" et "Collections", une prise en charge étendue des charges de travail transactionnelles, ainsi que des améliorations de performance et de fonctionnement. Voici ci-dessous les principales nouvelles fonctionnalités et améliorations.

Support étendu pour les transactions SQL multi-instructions

Couchbase 7.0 étend le support actuel de SQL au domaine des applications qui étaient jusqu'à présent réservées aux bases de données relationnelles. Désormais, les équipes informatiques peuvent traiter des transactions à haute performance parallèlement à des requêtes analytiques qui peuvent s'exécuter sur de grandes quantités de données non structurées sur une base de données orientée documents. « Les organisations informatiques peuvent pour la première fois exécuter des transactions SQL ACID (atomicity, consistency, isolation, durability) multidocuments en quelques microsecondes », a déclaré Ravi Mayuram, directeur technique de Couchbase.



« L'objectif est de réduire le nombre de bases de données que les entreprises doivent déployer et maintenir pour prendre en charge différentes catégories de charges de travail applicatives », a-t-il ajouté. Le support des transactions était déjà présent dans la version 6.5 qui prenait en charge le "commit" et le "rollback" complets pour les transactions couvrant plusieurs documents, où vous pouviez invoquer des transactions en utilisant le SDK Couchbase ou l'API de base de données. Toutefois, parmi les acteurs des bases de données orientées documents NoSQL, Couchbase n'est pas le premier à y arriver.

Il existe certains parallèles avec le support des transactions introduit dans la version la plus récente de MongoDB. Mais dans la version 7.0, il y a une réelle différence avec MongoDB, car les transactions de Couchbase sont désormais supportées par son langage de type SQL, appelé N1QL. Cela signifie que les transactions sont prises en charge par les instructions SQL courantes SELECT, INSERT, UPDATE, DELETE et MERGE. Le support des transactions est distribué, ce qui correspond à l'architecture sans maître de Couchbase. Mais, comme il s'agit encore d'une version précoce du support des transactions, il y a quelques limitations.

Les transactions fonctionnent sur plusieurs nœuds, mais pour l'instant, pas sur plusieurs régions. De plus, lorsque les transactions sont mises à jour, les index qui les accompagnent restent éventuellement cohérents. Il s'agirait d'un domaine dans lequel Couchbase, tout comme MongoDB, Cosmos DB, DynamoDB, serait à la traîne de ses homologues comme Google Cloud Spanner, Yugabyte, etc. dans le monde relationnel. Dans les prochaines versions, Couchbase devrait compléter le support des transactions en accord avec son positionnement de base de données distribuée, en conjonction avec l'amélioration de son service de base de données Couchbase Cloud.

Les nouvelles fonctionnalités Scopes et Collections

Un autre point fort de la nouvelle version majeure est l'ajout d'une construction Scopes permettant à Couchbase de ressembler et d'agir davantage comme une base de données relationnelle. Il complète les Collections, un artefact courant dans les bases de données orientées documents. Selon l'équipe de développement, tous deux sont des projections ou des vues logiques de données physiquement stockées sous forme de documents JSON. Les Scopes et les Collections fournissent un modèle dynamique de confinement des données en vous permettant de catégoriser et d'organiser les documents dans un conteneur (bucket).

La définition technique est que les Scopes peuvent regrouper plusieurs Collections, de sorte que si les Collections correspondent à peu près aux tables relationnelles, les Scopes correspondent aux schémas. Ces couches d'organisation des données entre les conteneurs Couchbase et les documents JSON s'adaptent facilement aux modèles de schéma des SGBDR, tout en conservant la flexibilité de JSON pour ajouter de nouvelles structures à la demande. Une collection est un conteneur de données, défini sur le serveur Couchbase, à l'intérieur d'un conteneur dont le type est soit Couchbase soit Ephemeral.

Les éléments d'un conteneur peuvent éventuellement être affectés à différentes collections en fonction de leur type de contenu. Par exemple, dans un conteneur qui contient des informations sur les voyages, les documents qui concernent spécifiquement les aéroports peuvent être affectés à une collection d'aéroports, tandis que les documents qui concernent les hôtels peuvent être affectés à une collection d'hôtels, et ainsi de suite. Un scope est un mécanisme permettant de regrouper plusieurs collections. Les collections peuvent être affectées à différents scopes en fonction du type de contenu ou de la phase de déploiement.

Les applications peuvent se voir attribuer des droits d'accès par champ d'application, ce qui permet à chaque application d'accéder uniquement aux collections dont elle a besoin. Les avantages des scopes et des collections sont les suivants :

  • le regroupement logique de documents similaires ; simplifiant potentiellement les opérations telles que les requêtes, le XDCR, la sauvegarde et la restauration ;
  • l'efficacité accrue de l'indexation, car le service de données est en mesure de fournir des documents de collections spécifiques au service d'indexation ;
  • l'interrogation simplifiée, puisque les instructions de requête peuvent plus facilement spécifier des sous-ensembles particuliers de documents ;
  • une migration plus facile des bases de données relationnelles vers Couchbase Server, puisque les collections peuvent être conçues pour correspondre à des tables relationnelles préexistantes ;
  • une isolation sécurisée des différents types de documents, au sein d'une collection, permettant aux applications d'être spécifiquement autorisées à utiliser uniquement les sous-ensembles de données qui leur conviennent.


Autres nouveautés et améliorations de performance

Enfin, des améliorations ont été apportées à la gestion de l'accès aux données, du partitionnement et de l'isolation des index au niveau de la collection. Un service de sauvegarde configurable a été ajouté, permettant d'effectuer des constructions d'index en parallèle et de les rendre portables lors du rééquilibrage du cluster. De plus, un optimiseur de requêtes plus flexible remplace l'ancien optimiseur basé sur des règles.

Support des Scopes et Collections avec N1QL

Dans Couchbase Server 7.0, le langage de requête N1QL prend en charge une syntaxe de chemin en pointillé pour les références aux espaces clefs afin de pouvoir accéder aux scopes et aux collections. En outre, un contexte de requête par défaut peut être spécifié par l'intermédiaire du Query Workbench ou d'un paramètre au niveau de la requête, de sorte que les requêtes peuvent se référer directement à une collection sans avoir à spécifier le chemin. Le langage N1QL contient également de nouvelles instructions pour la gestion des scopes et des collections.

Fonctions définies par l'utilisateur

Les fonctions définies par l'utilisateur sont disponibles dans Couchbase Server 7.0. Elles vous permettent de créer des fonctions pour des tâches répétitives. De même, les fonctions définies par l'utilisateur peuvent être écrites en N1QL ou dans un langage externe – seul JavaScript est actuellement supporté. Les fonctions définies par l'utilisateur peuvent être stockées au niveau du conteneur ou du scope. Cela détermine le contexte des références aux espaces clefs dans la définition de la fonction. Le langage N1QL comprend de nouvelles instructions pour créer, remplacer, exécuter et supprimer les fonctions définies par l'utilisateur.

Optimiseur basé sur les coûts

L'optimiseur basé sur les coûts (CBO – cost-based optimizer) est disponible dans Couchbase Server 7.0. Il prend en compte le coût de la mémoire, du processeur, du transport réseau et de l'utilisation du disque pour choisir le plan optimal d'exécution d'une requête. L'optimiseur basé sur les coûts utilise les métadonnées et les statistiques pour estimer la quantité de traitement (mémoire, CPU et E/S) pour chaque opération. Il compare le coût des routes alternatives, puis sélectionne le plan d'exécution de la requête le moins coûteux.

Définition des quotas d'utilisation de la mémoire

Le Query Service prend en charge plusieurs nouveaux paramètres au niveau des nœuds et des requêtes pour prendre en charge les transactions et les collections. Le Query Service prend également en charge un nouveau paramètre de quota de mémoire au niveau du nœud et de la demande, qui permet aux utilisateurs de spécifier la consommation maximale de mémoire du document pour une requête. Reportez-vous à la section Paramètres pour plus de détails.

Le service de sauvegarde

Le service de sauvegarde prend en charge la planification de sauvegardes complètes et incrémentielles de données, soit pour des compartiments individuels spécifiques, soit pour tous les compartiments du cluster. Il permet également de planifier des fusions de sauvegardes effectuées précédemment. Les données à sauvegarder peuvent également être sélectionnées par service. Par exemple, les données des services de données et d'index peuvent être sélectionnées pour la sauvegarde, sans inclure les données des autres services.

Le service – qui est également appelé cbbs (Couchbase Backup Service) – peut être configuré et administré au moyen de l'interface utilisateur de la console Web Couchbase, de la CLI ou de l'API REST.

Voir le replay du webinaire gratuit "Base de données sur Kubernetes, une nouvelle réalité"

Source : Couchbase

Et vous ?

Quel est votre avis sur le sujet ?
Que pensez-vous de l'introduction en bourse de Couchbase ?
Que pensez-vous des nouvelles fonctionnalités introduites par Couchbase 7.0 ?

Voir aussi

Couchbase vise une valorisation de plus de 900 millions de dollars lors de son introduction en bourse aux États-Unis grâce à une levée de fonds de plus de 161 millions de dollars

Les sociétés de l'open source SUSE et Couchbase se préparent à entrer bourse, une solution de viabilité financière durable pour les entreprises de l'open source ?

MongoDB prépare son introduction en bourse pour financer son développement et mieux concurrencer le géant des SGBD Oracle qu'il considère vulnérable

SUSE amorce l'acquisition du spécialiste Kubernetes Rancher Labs qui a développé une technologie pour aider les entreprises à exécuter des logiciels dans des conteneurs

Une erreur dans cette actualité ? Signalez-nous-la !