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 !

PlanetScale, une base de données pour les développeurs basé sur Vitess, qui ne souffrirait pas des contraintes liées à la gestion d'un schéma
Comme dans MySQL

Le , par Bill Fassinou

47PARTAGES

6  3 
Les bases de données sont devenues aujourd'hui indispensables et les développeurs veulent la durabilité, la stabilité et l'évolutivité d'une base de données SQL. Pour satisfaire leur besoin, PlanetScale, la société derrière la base de données open source Vitess, a annoncé mardi PlanetScale, une nouvelle base de données en tant que service (DbaaS), qui permet aux développeurs de créer en quelques secondes une nouvelle base de données qui grandira au fur et à mesure de leur croissance, pendant des années, sans aucune limite d'évolutivité. PlanetScale affirme que sa nouvelle base de données est basée sur Vitess, mais ne souffre pas des contraintes liées à la gestion d'un schéma.

Qu'est-ce que PlanetScale ?

Selon James Governor, cofondateur de RedMonk, les sociétés SaaS comme les grandes entreprises ont du mal à gérer les bases de données à l'échelle. « Les équipes d'ingénieurs finissent par se concentrer sur les problèmes de mise à l'échelle plutôt que sur l'amélioration des applications, des fonctionnalités et de la plateforme. Les services gérés se sont imposés comme l'approche privilégiée, sous-tendant la renaissance du relationnel, car les bases de données sont un problème difficile. La base de données de l'avenir devrait évoluer de manière transparente sans intervention », a-t-il ajouté.



C'est à cet enjeu que s'attaque PlanetScale. Actuellement utilisé par Figma et MessageBird, PlanetScale fournit une version hébergée de Vitess, la base de données open source qui sous-tend YouTube, Slack, Square et AirBNB. La nouvelle offre va bien au-delà de ces fondations avec une base de données qui ne nécessite aucune connaissance ou sélection de toutes les zones habituelles du cloud, des tailles de cluster et d'autres minuties liées à la base de données que d'autres exigeraient et qui augmentent les frais généraux des développeurs.

PlanetScale est en outre une base de données sans serveur compatible avec MySQL. Selon la société, PlanetScale accélère le succès des entreprises en étant à la fois le meilleur choix pour les développeurs le premier jour, lorsqu'ils créent leur entreprise, et le choix le plus évolutif lorsqu'ils atteignent l'hyperscale. « Comme le savent les ingénieurs de toute entreprise à croissance rapide, les premières décisions de mise à l'échelle ont un impact énorme sur votre capacité à fournir votre produit aux clients à mesure que l'entreprise se développe », a déclaré Karl Matthias, directeur de la plateforme et de l'architecture chez Community.

« Peu d'équipes disposent de l'expertise nécessaire pour concevoir et gérer des systèmes de données évolutifs qui vous permettent de vous concentrer sur la création de valeur pour les clients, au lieu de faire des exercices de mise à l'échelle. C'est l'offre de PlanetScale et, à ma connaissance, elle est unique dans le secteur », a-t-il ajouté.

Les caractéristiques de PlanetScale

Branching (branchement)

La société a déclaré que le branchement est une fonctionnalité essentielle de PlanetScale qui permet d'effectuer des modifications non bloquantes du schéma. Dans PlanetScale, une branche de base de données est une base de données distincte qui est déployée avec une copie du schéma de la base de données principale. Toutes les modifications du schéma de la base de données doivent être effectuées sur une branche de la base de données de développement avant d'être déployées en production. Pour s'adapter au flux de travail d'un développeur, PlanetScale utilise un modèle de branchement similaire à Git.

La création d'une branche de base de données permet aux développeurs de créer une copie exacte du schéma de leur base de données de production. Ils peuvent utiliser cette branche pour tester les changements apportés au schéma. Une fois que les développeurs ont testé leurs modifications, ils peuvent appliquer en toute sécurité les changements à leur base de données de production. Le branchement permet de modifier le schéma en ligne, de manière asynchrone. (En ligne signifie que cela ne bloquera pas la production ou les insertions et les sélections sur votre base de données.)

Selon l'entreprise, le branchement accélère le développement en permettant aux développeurs d'itérer rapidement sans se soucier de l'impact sur leur environnement de production.

Des modifications non bloquantes du schéma

Les modifications non bloquantes du schéma dans PlanetScale alimentent un flux de travail de modification du schéma qui permet aux utilisateurs de mettre à jour les tables de la base de données sans verrouiller ou causer de temps d'arrêt pour les bases de données de production. PlanetScale permet de déployer en toute sécurité les modifications du schéma dans les bases de données de production via les branches Développement et Production. Les branches de production (principales) ne peuvent être supprimées et ne peuvent être mises à jour qu'à l'aide de demandes de déploiement.

Les branches de développement constituent une base de données distincte avec une copie du schéma de la branche principale. Les développeurs peuvent apporter des modifications au schéma dans les branches de développement, les tester localement et ouvrir une demande de déploiement pour déployer leurs modifications dans la base de données de production. Ils peuvent aussi commenter les demandes de déploiement et demander aux réviseurs d'approuver une demande de déploiement avant que ses modifications de schéma puissent être déployées dans la branche principale de la base de données.

Actuellement, la demande d'approbation est un paramètre qui est désactivé par défaut. Lorsque ce paramètre est désactivé, les développeurs n'ont pas besoin d'approbation pour fusionner une demande de déploiement.

Sécurité

« Chez PlanetScale, nous nous engageons à fournir une plateforme de base de données puissante et facile à utiliser, tout en assurant la sécurité et la conformité de vos données. Nous prenons la sécurité très au sérieux et nous travaillons dur pour assurer la sécurité et l'intégrité continues des données stockées sur notre plateforme », a écrit l'équipe dans la documentation de l'outil. La sécurité de PlanetScale est caractérisée par les éléments suivants :

  • certification SOC2 : PlanetScale cherche actuellement à obtenir la certification SOC2. L'équipe a annoncé avoir mis en place tous les contrôles SOC2 pertinents et peut fournir sur demande un rapport non audité avec une attestation de l'auditeur ;
  • chiffrement au repos : toutes les données stockées sont chiffrées au repos sur la plateforme PlanetScale. Cela permettrait de réduire le risque d'accès involontaire ou malveillant aux données des utilisateurs sur les systèmes de stockage ;
  • accès et gestion : l'équipe a déclaré qu'elle fournit une authentification configurable, une journalisation des audits et une gestion des accès des utilisateurs.

Source : PlanetScale

Et vous ?

Que pensez-vous de PlanetScale et de ses caractéristiques ?
Selon vous, les développeurs ont-ils besoin d'une base de données sans la contrainte de la gestion d'un schéma ? Pourquoi ?
Selon vous, quelles sont les contraintes liées à la gestion d'un schéma dans une base de données MySQL ?
Avez-vous déjà utilisé Vitess, la technologie sous-jacente de PlanetScale ? Si oui, quels sont vos commentaires ?

Voir aussi

Microsoft fait l'acquisition de Citus Data l'extension qui transforme PostgreSQL en une base de données distribuée

MariaDB SkySQL : La nouvelle mise à jour majeure de la base de données Cloud intègre les bases SQL distribuées pour garantir évolutivité et élasticité

DuckDB, une base de données SQL intégrable comme SQLite, supporte les fonctionnalités de PostgreSQL, conçu pour le traitement et le stockage d'ensembles de données tabulaires

Dolt, une base de données SQL avec des fonctions de contrôle de version, qui peut être forké, cloné, dérivé et DoltHub, un site Web qui héberge les BDD Dolt, décrit comme un Git pour les BDD

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

Avatar de SQLpro
Rédacteur https://www.developpez.com
Le 20/05/2021 à 15:02
Première remarque, ajouter un objet à une base de données relationnelle (CREATE ...) ne bloque pas les utilisateurs. Seule la modification (ALTER ...) ou la suppression (DROP ...) peut bloquer.

Cela fait longtemps que les gros éditeurs de SGBDR comme IBM avec DB2, Oracle ou Microsoft avec SQL Server depuis la version 2008) permettent de faire du DDL "online", donc modifier le schéma de tout objet de la base sans poser de verrous !

C'est donc loin d'être une nouveauté.... De même que le clonage de schéma, via des template (base model de SQL Server, base templates de PostGreSQL), voire des procédures (DBCC CLONEDATABASE pour SQL Server...) !

A +
2  0