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. Elle gère automatiquement les instances répliquées, la segmentation et le traitement des transactions. Vous pouvez ainsi rapidement effectuer un scaling 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) est testée et prête à évoluer à l'échelle mondiale.
  • Disponibilité de 99,999 %:Cloud Spanner offre une disponibilité de pointe de 99,999 % pour les instances multirégionales, soit 10 fois moins de temps d'arrêt qu'une disponibilité de 99,99 %, et fournit une réplication transparente et synchrone sur les configurations régionales et multirégionales.
  • Segmentation automatique:Cloud Spanner optimise la segmentation automatique des données en fonction de la charge des requêtes et de la taille des données. Vous pouvez ainsi passer moins de temps à vous préoccuper du scaling de votre base de données au lieu de vous concentrer sur le scaling de votre entreprise.

Voir toutes les fonctionnalités

Points abordés

  • Créer des instances Cloud Spanner via la console Google Cloud
  • Créer une base de données dans une instance Cloud Spanner
  • Utilisation de samplesb 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 Platform peuvent bénéficier d'un essai sans frais de 300$.

3. Ouvrir Cloud Spanner dans Cloud Console

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

Faites défiler la page vers le bas et sélectionnez "Spanner" :

46fe7785700d335.png

L'interface utilisateur de Cloud Spanner doit 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 demande de l'activer. 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

Commencez par créer une instance Cloud Spanner. Dans l'interface utilisateur, cliquez sur "Créer une instance". pour créer une instance:

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. Avec les configurations régionales, toutes les instances répliquées se trouvent dans la même région, tandis que les configurations multirégionales créent des instances répliquées avec accès en lecture dans plusieurs régions. Cliquez 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 pouvez augmenter le nombre de nœuds pour attribuer plus de ressources à votre instance, ou le réduire 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 "Créer une base de données" :

71761f0803038a5.png

Saisissez un nom pour votre nouvelle base de données. À ce stade, vous pouvez également fournir un schéma.

d7ca47df879931c2.png

Nous n'allons pas fournir de schéma à cette étape et cliquons sur "Créer". pour créer une base de données vide.

e398ab29aad3d601.png

Une fois que vous avez cliqué sur "Créer", une base de données est 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 samplesb. Sampledb contient divers 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 vous utilisez Google Cloud Shell pour la première fois pour ce projet, le logo Google Cloud Shell s'affiche dans la barre de navigation supérieure. Activez Cloud Shell en appuyant dessus.

e23b881395174c00.png

Une fois la console activée, 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
Cloning into 'sampledb'...
remote: Enumerating objects: 59, done.
remote: Counting objects: 100% (59/59), done.
remote: Compressing objects: 100% (42/42), done.
remote: Total 59 (delta 23), reused 35 (delta 11), pack-reused 0
Unpacking objects: 100% (59/59), done.
$ 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 la base de données "my-sample-db" avec deux nouvelles tables (commentaires et stories):

eb4adca281f8704a.png

L'exemple d'ensemble de données contient des articles et des commentaires provenant de Hacker News. Vous pouvez cliquer sur le bouton "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. Cependant, le projet que vous utilisez continue d'être facturé pour l'instance. Si vous n'avez plus besoin de cette instance, vous devez la supprimer pour éviter ces frais.

Revenez à la page de l'instance en cliquant sur "my-first-instance" dans l'angle supérieur gauche:

2a226b985f43074f.png

Cliquez sur "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 accidentellement la mauvaise instance, 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 et cliquez sur "Supprimer".

8. Félicitations !

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

Points abordés

  • Créer des instances Cloud Spanner via la console Google Cloud
  • Créer une base de données dans une instance Cloud Spanner
  • Utilisation de samplesb pour charger et interroger des exemples de données
  • Supprimer l'instance Cloud Spanner

En savoir plus