Cloud Spanner: votre première base de données

1. Présentation

Dernière mise à jour : 23/07/2020

Qu'est-ce que Cloud Spanner ?

Google Cloud Spanner est une base de données distribuée à l'échelle mondiale et conforme à la norme ACID, qui gère automatiquement les instances répliquées, la segmentation et le traitement des transactions. Vous pouvez ainsi la faire évoluer rapidement pour vous adapter aux différents modèles d'utilisation et garantir la réussite de vos produits.

Principales fonctionnalités

  • Base de données relationnelle conçue pour évoluer : tout ce que vous attendez d'une base de données relationnelle (schémas, requêtes SQL et transactions ACID), largement éprouvée et prête à évoluer à l'échelle mondiale.
  • Disponibilité de 99,999 % : Cloud Spanner offre une disponibilité de premier ordre de 99,999 % pour les instances multirégionales, soit 10 fois moins de temps d'arrêt que pour une disponibilité de 99,99 %. Il assure également une réplication transparente et synchrone pour les configurations régionales et multirégionales.
  • Segmentation automatique : Cloud Spanner optimise ses performances en segmentant automatiquement les données selon la charge des requêtes et la taille des données. Vous pouvez ainsi vous concentrer davantage sur l'évolutivité de votre entreprise plutôt que sur celle de votre base de données.

Afficher toutes les fonctionnalités

Points abordés

  • Créer des instances Cloud Spanner à l'aide de la console Google Cloud
  • Créer une base de données dans une instance Cloud Spanner
  • Utiliser sampledb pour charger et interroger des exemples de données.
  • Supprimer l'instance Cloud Spanner.

2. Préparation

Configuration de l'environnement au rythme de chacun

Si vous ne possédez pas encore de compte Google (Gmail ou Google Apps), vous devez en créer un. Connectez-vous à la console Google Cloud Platform ( console.cloud.google.com) et créez un projet :

50983ac3fdbbf8d0.png

ea581205026ca8e3.png

Mémorisez l'ID du projet. Il s'agit d'un nom unique permettant de différencier chaque projet Google Cloud (le nom ci-dessus est déjà pris ; vous devez en trouver un autre). Il sera désigné par le nom PROJECT_ID tout au long de cet atelier de programmation.

Vous devez ensuite activer la facturation dans la console Cloud pour pouvoir utiliser les ressources Google Cloud.

Suivre cet atelier de programmation ne devrait pas vous coûter plus d'un euro. Cependant, cela peut s'avérer plus coûteux si vous décidez d'utiliser davantage de ressources ou si vous n'interrompez pas les ressources (voir la section "Effectuer un nettoyage" à la fin du présent document).

Les nouveaux utilisateurs de Google Cloud peuvent s'inscrire à un essai sans frais pour bénéficier d'un crédit de 300$valable pour un essai sans frais.

3. Ouvrir Spanner dans la console Cloud

Dans la console Google Cloud, cliquez sur l'icône de menu en haut à gauche de l'écran pour afficher le menu de navigation de gauche.

Faites défiler l'écran vers le bas, puis sélectionnez "Spanner" :

46fe7785700d335.png

L'interface utilisateur Cloud Spanner devrait maintenant s'afficher. Si vous utilisez un projet pour lequel l'API Cloud Spanner n'est pas encore activée, une boîte de dialogue vous demandant de l'activer s'affiche. Si vous avez déjà activé l'API, vous pouvez ignorer cette étape.

Cliquez sur "Activer" pour continuer :

323474ade0d07c48.png

4. Créer une instance

Vous allez d'abord créer une instance Cloud Spanner. Dans l'UI, cliquez sur "Créer une instance" pour en créer une :

1126607e9b3a95f7.png

Lorsque vous cliquez sur "Créer une instance", vous êtes redirigé vers une page permettant de créer une instance. Saisissez un nom d'instance et choisissez une configuration.

Vous pouvez choisir une configuration régionale ou multirégionale. Dans les configurations régionales, toutes les instances répliquées se trouvent dans la même région. Dans les configurations multirégionales, des instances répliquées avec accès en lecture sont créées dans plusieurs régions. Vous pouvez cliquer sur "Comparer les configurations régionales" pour comparer la configuration.

f5f41323226be8b7.png

Une fois que vous avez choisi une configuration, le récapitulatif s'affiche dans le panneau de droite :

be5e99711a47047f.png

À l'avenir, vous pourrez augmenter le nombre de nœuds pour allouer plus de ressources à votre instance, ou le diminuer si votre instance n'a pas besoin de ressources supplémentaires.

Cliquez sur "Créer" pour créer l'instance.

97cf7427660e36bd.png

Votre instance Cloud Spanner est maintenant prête à être utilisée.

13ac2d48ea60370b.png

5. Créer une base de données

Pour créer une base de données, cliquez sur "Create Database" (Créer une base de données) :

71761f0803038a5.png

Attribuez un nom à votre nouvelle base de données. Vous pouvez également fournir un schéma à ce stade.

d7ca47df879931c2.png

Nous allons ignorer la fourniture d'un schéma à cette étape et cliquer sur "Créer" pour créer une base de données vide.

e398ab29aad3d601.png

Après avoir cliqué sur "Créer", une base de données sera créée :

4164af0df20ca180.png

6. Charger et interroger des exemples de données

Dans cet atelier de programmation, nous allons charger et interroger des exemples de données à l'aide de sampledb. Sampledb contient différents ensembles de données et peut importer des données dans vos bases de données existantes.

Nous allons exécuter le programme dans Google Cloud Shell. Si c'est la première fois que vous utilisez Google Cloud Shell pour ce projet, le logo Google Cloud Shell s'affiche dans la barre de navigation supérieure. Appuyez sur Cloud Shell pour l'activer.

e23b881395174c00.png

Une fois l'outil activé, une console s'affiche en bas de l'écran :

b885c452da656556.png

Dans la console, clonez le dépôt sampledb et suivez les instructions pour installer les dépendances :

$ git clone https://github.com/cloudspannerecosystem/sampledb.git

Après avoir cloné le dépôt, accédez au nouveau répertoire, créez un environnement virtuel et installez les exigences nécessaires :

$ cd sampledb
$ virtualenv env
$ source env/bin/activate
$ pip install -r requirements.txt

Une fois les dépendances installées, vous pouvez exécuter sampledb pour créer une base de données avec des exemples de données :

$ python batch_import.py my-first-instance my-sample-db

Une fois l'opération réussie, vous pourrez voir "my-sample-db" avec deux nouvelles tables (commentaires et histoires) :

eb4adca281f8704a.png

L'exemple de jeu de données contient des articles et des commentaires provenant de Hacker News. Vous pouvez cliquer sur "Requête" pour commencer à interroger et à parcourir les données :

8b95a3b14709b285.png

7. Effectuer un nettoyage

Cette étape est facultative. Si vous souhaitez continuer à tester votre instance Cloud Spanner, vous n'avez pas besoin de la nettoyer pour le moment. Toutefois, le projet que vous utilisez continuera à être facturé pour l'instance. Si vous n'avez plus besoin de cette instance, supprimez-la dès maintenant pour éviter ces frais.

Revenez à la page de l'instance en cliquant sur "my-first-instance" (ma première instance) en haut à gauche :

2a226b985f43074f.png

Cliquez sur le bouton "Supprimer" pour supprimer l'instance :

27ee8f9656364f98.png

La suppression d'une instance est définitive. Les données de cette instance ne peuvent pas être récupérées. Pour éviter de supprimer une instance par erreur, vous devez confirmer la suppression en saisissant le nom de l'instance dans une boîte de dialogue de confirmation :

537e18cf2dd7a668.png

Saisissez le nom de votre instance, puis appuyez sur "Supprimer".

8. Félicitations !

Vous avez créé une instance Cloud Spanner, une base de données vide, chargé des exemples de données et (facultativement) supprimé l'instance Cloud Spanner.

Points abordés

  • Créer des instances Cloud Spanner à l'aide de la console Google Cloud
  • Créer une base de données dans une instance Cloud Spanner
  • Utiliser sampledb pour charger et interroger des exemples de données.
  • Supprimer l'instance Cloud Spanner.

En savoir plus