arrow_back

Charger des données dans Google Cloud SQL

Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

Charger des données dans Google Cloud SQL

Lab 1 heure universal_currency_alt 5 crédits show_chart Intermédiaire
Test and share your knowledge with our community!
done
Get access to over 700 hands-on labs, skill badges, and courses

GSP196

Google Cloud – Ateliers adaptés au rythme de chacun

Présentation

Dans cet atelier, vous importez des données dans Cloud SQL à partir de fichiers texte CSV, puis vous effectuez certaines analyses de données de base à l'aide de requêtes simples.

L'ensemble de données utilisé dans cet atelier comporte des informations historiques sur les vols intérieurs aux États-Unis provenant du Bureau des statistiques du transport américain (US Bureau of Transports Statistics). Cet ensemble de données permet d'illustrer un large éventail de concepts et techniques de science des données. Il est utilisé dans tous les ateliers de la quête Data Science on Google Cloud.

Objectifs

  • Créer une instance Cloud SQL
  • Créer une base de données Cloud SQL
  • Importer des données textuelles dans Cloud SQL
  • Créer un modèle de données initial à l'aide de requêtes

Préparation

Avant de cliquer sur le bouton "Démarrer l'atelier"

Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.

Cet atelier pratique vous permet de suivre vous-même les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Nous vous fournissons des identifiants temporaires pour vous connecter à Google Cloud le temps de l'atelier.

Pour réaliser cet atelier :

  • vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome) ;
Remarque : Ouvrez une fenêtre de navigateur en mode incognito/navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le temporaire étudiant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
  • vous disposez d'un temps limité ; une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Si vous possédez déjà votre propre compte ou projet Google Cloud, veillez à ne pas l'utiliser pour réaliser cet atelier afin d'éviter que des frais supplémentaires ne vous soient facturés.

Démarrer l'atelier et se connecter à la console Google Cloud

  1. Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, un pop-up s'affiche pour vous permettre de sélectionner un mode de paiement. Sur la gauche, vous trouverez le panneau Détails concernant l'atelier, qui contient les éléments suivants :

    • Le bouton Ouvrir la console Google
    • Le temps restant
    • Les identifiants temporaires que vous devez utiliser pour cet atelier
    • Des informations complémentaires vous permettant d'effectuer l'atelier
  2. Cliquez sur Ouvrir la console Google. L'atelier lance les ressources, puis ouvre la page Se connecter dans un nouvel onglet.

    Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.

    Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte.
  3. Si nécessaire, copiez le nom d'utilisateur inclus dans le panneau Détails concernant l'atelier et collez-le dans la boîte de dialogue Se connecter. Cliquez sur Suivant.

  4. Copiez le mot de passe inclus dans le panneau Détails concernant l'atelier et collez-le dans la boîte de dialogue de bienvenue. Cliquez sur Suivant.

    Important : Vous devez utiliser les identifiants fournis dans le panneau de gauche. Ne saisissez pas vos identifiants Google Cloud Skills Boost. Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés.
  5. Accédez aux pages suivantes :

    • Acceptez les conditions d'utilisation.
    • N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
    • Ne vous inscrivez pas aux essais offerts.

Après quelques instants, la console Cloud s'ouvre dans cet onglet.

Remarque : Vous pouvez afficher le menu qui contient la liste des produits et services Google Cloud en cliquant sur le menu de navigation en haut à gauche. Icône du menu de navigation

Activer Cloud Shell

Cloud Shell est une machine virtuelle qui contient de nombreux outils pour les développeurs. Elle comprend un répertoire d'accueil persistant de 5 Go et s'exécute sur Google Cloud. Cloud Shell vous permet d'accéder via une ligne de commande à vos ressources Google Cloud.

  1. Cliquez sur Activer Cloud Shell Icône Activer Cloud Shell en haut de la console Google Cloud.

Une fois connecté, vous êtes en principe authentifié et le projet est défini sur votre ID_PROJET. Le résultat contient une ligne qui déclare YOUR_PROJECT_ID (VOTRE_ID_PROJET) pour cette session :

Your Cloud Platform project in this session is set to YOUR_PROJECT_ID

gcloud est l'outil de ligne de commande pour Google Cloud. Il est préinstallé sur Cloud Shell et permet la complétion par tabulation.

  1. (Facultatif) Vous pouvez lister les noms des comptes actifs à l'aide de cette commande :
gcloud auth list
  1. Cliquez sur Autoriser.

  2. Vous devez à présent obtenir le résultat suivant :

Résultat :

ACTIVE: * ACCOUNT: student-01-xxxxxxxxxxxx@qwiklabs.net To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (Facultatif) Vous pouvez lister les ID de projet à l'aide de cette commande :
gcloud config list project

Résultat :

[core] project = <ID_Projet>

Exemple de résultat :

[core] project = qwiklabs-gcp-44776a13dea667a6 Remarque : Pour consulter la documentation complète sur gcloud, dans Google Cloud, accédez au guide de présentation de la gcloud CLI.

Tâche 1 : Préparer votre environnement

Cet atelier repose sur un ensemble d'exemples de code et de scripts développés pour l'ouvrage Data Science on the Google Cloud Platform, 2nd Edition publié par O'Reilly Media, Inc. Il aborde les tâches de configuration de Google Cloud SQL et d'importation de données présentées dans la première partie du chapitre 3, "Creating Compelling Dashboards" (Création de tableaux de bord attrayants). Vous allez cloner l'exemple de dépôt utilisé dans le chapitre 2 de GitHub dans Cloud Shell, où vous effectuerez toutes les tâches de l'atelier.

Cloner le dépôt "Data Science on Google Cloud"

  1. Dans Cloud Shell, exécutez la commande suivante pour cloner le dépôt :
git clone \ https://github.com/GoogleCloudPlatform/data-science-on-gcp/
  1. Accédez au répertoire du dépôt :
cd data-science-on-gcp/03_sqlstudio
  1. Pour la suite de l'atelier, créez les variables d'environnement correspondant à l'ID du projet et au bucket de stockage qui contient vos données :
export PROJECT_ID=$(gcloud info --format='value(config.project)') export BUCKET=${PROJECT_ID}-ml
  1. Saisissez la commande suivante pour copier le fichier dans le bucket Cloud Storage :
gsutil cp create_table.sql \ gs://$BUCKET/create_table.sql

Tâche 2. Créer une instance Cloud SQL

  1. Saisissez les commandes suivantes pour créer une instance Cloud SQL :
gcloud sql instances create flights \ --database-version=POSTGRES_13 --cpu=2 --memory=8GiB \ --region={{{project_0.default_region | "REGION"}}} --root-password=Passw0rd

Cette opération prend quelques minutes.

Tester la tâche terminée

Cliquez sur Vérifier ma progression pour valider la tâche exécutée. Si vous avez réussi à créer une instance Cloud SQL, vous recevez une note d'évaluation.

Créer une instance Cloud SQL
  1. Créez une variable d'environnement contenant l'adresse IP de Cloud Shell :
export ADDRESS=$(curl -s http://ipecho.net/plain)/32
  1. Ajoutez l'instance Cloud Shell à la liste d'autorisation pour lui permettre de gérer votre instance SQL.
gcloud sql instances patch flights --authorized-networks $ADDRESS
  1. Lorsque vous y êtes invité, appuyez sur "Y" (Oui) pour accepter la modification.

Tester la tâche terminée

Cliquez sur Vérifier ma progression pour valider la tâche exécutée. Si Cloud Shell a été correctement ajouté à la liste d'autorisation pour l'accès à l'instance SQL, vous recevez une note d'évaluation.

Ajouter l'instance Cloud Shell à la liste d'autorisation pour lui permettre d'accéder à votre instance SQL

Créer une base de données et un tableau

Pour importer des données dans une table Postgres, vous devez d'abord créer une base de données vide et une table avec le schéma approprié.

  1. Dans la console Cloud, accédez au menu de navigation (Icône du menu de navigation), puis cliquez sur SQL.

  2. Pour ouvrir la page "Présentation" d'une instance, cliquez sur le nom de l'instance flights.

  3. Dans le menu de navigation SQL à gauche, choisissez Bases de données.

  4. Cliquez sur Créer une base de données.

  5. Dans la boîte de dialogue de nouvelle base de données, nommez la base de données bts.

  6. Cliquez sur Créer.

  7. Pour ouvrir la page "Présentation" d'une instance, sélectionnez Présentation dans le menu de navigation SQL.

  8. Cliquez sur IMPORTER en haut.

  9. Dans le champ de fichier Cloud Storage, cliquez sur Parcourir.

  10. Dans la section Buckets, cliquez sur la flèche en regard du nom de votre bucket.

  11. Sélectionnez le fichier create_table.sql.

  12. Cliquez sur Sélectionner.

  13. Dans la section Format de fichier, sélectionnez SQL.

  14. Spécifiez la base de données bts dans votre instance Cloud SQL.

  15. Cliquez sur Importer pour lancer l'importation.

Quelques secondes plus tard, une table vide est créée.

Tester la tâche terminée

Cliquez sur Vérifier ma progression pour valider la tâche exécutée. Si vous avez réussi à créer une base de données "bts" et une table "flights" à l'aide du fichier create_table.sql, vous recevez une note d'évaluation.

Créer une base de données "bts" et une table "flights" à l'aide du fichier create_table.sql

Tâche 3 : Ajouter des données à une instance Cloud SQL

Vous avez créé une base de données et une table vides, vous allez maintenant charger les fichiers CSV dans cette table. Vous allez charger les données pour le mois de janvier en sélectionnant le fichier 201501.csv dans votre bucket et en spécifiant comme format "CSV", comme base de données "bts" et comme table "flights".

  1. Sur la page de votre instance Cloud SQL, cliquez sur IMPORTER.

  2. Dans le champ du fichier Cloud Storage, cliquez sur Parcourir, puis sur la flèche en regard du nom du bucket, et enfin sur 201501.csv.

  3. Cliquez sur Sélectionner.

  4. Sélectionnez CSV comme format de fichier.

  5. Sélectionnez la base de données bts et renseignez comme table flights.

  6. Cliquez sur IMPORTER.

Tâche 4 : Interagir avec la base de données

  1. Connectez-vous à l'instance Cloud SQL depuis Cloud Shell avec la commande suivante :
gcloud sql connect flights --user=postgres
  1. Lorsque vous êtes invité à entrer un mot de passe, saisissez Passw0rd. Vous ne verrez peut-être pas les lettres que vous saisissez.

  2. Dans l'invite qui apparaît, connectez-vous à la base de données bts :

\c bts;
  1. Lorsque vous êtes invité à entrer un mot de passe, saisissez Passw0rd.

  2. Exécutez alors une requête pour obtenir les cinq aéroports les plus fréquentés :

SELECT "Origin", COUNT(*) AS num_flights FROM flights GROUP BY "Origin" ORDER BY num_flights DESC LIMIT 5;

Cette requête est rapide car l'ensemble de données est relativement peu volumineux (il ne concerne que le mois de janvier). Néanmoins, à mesure que vous ajouterez d'autres mois, la base de données va ralentir.

Les bases de données relationnelles sont bien adaptées à des ensembles de données relativement peu volumineux, sur lesquels vous effectuez des requêtes ad hoc qui renvoient un petit sous-ensemble des données. Pour les ensembles de données plus volumineux, vous ajustez les performances d'une base de données relationnelle en indexant ses colonnes d'intérêt. De plus, comme les bases de données relationnelles prennent généralement en charge les transactions et garantissent une cohérence forte, elles constituent un excellent choix pour les données devant être mises à jour fréquemment.

Toutefois, une base de données relationnelle n'est pas un bon choix dans les cas suivants :

  • Vos données sont principalement en lecture seule.
  • La taille de votre ensemble de données dépasse le téraoctet.
  • Vous devez analyser l'intégralité de la table (par exemple pour calculer la valeur maximale d'une colonne) ou vos données arrivent en flux à un débit élevé.

Ces éléments correspondent au cas d'utilisation des retards d'avion. Dans ce cas, vous passeriez d'une base de données relationnelle à un entrepôt de données d'analyse : BigQuery. L'entrepôt de données d'analyse nous permettra d'utiliser SQL, et c'est une solution bien plus adaptée pour traiter de très grands ensembles de données et des requêtes ad hoc (c'est-à-dire des requêtes qui ne nécessitent pas l'indexation des colonnes).

Félicitations !

Vous savez maintenant créer des tables et importer dans Google Cloud SQL des données textuelles stockées dans Cloud Storage.

Étapes suivantes et informations supplémentaires

Pour aller plus loin :

Formations et certifications Google Cloud

Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.

Dernière mise à jour du manuel : 28 novembre 2023

Dernier test de l'atelier : 28 novembre 2023

Copyright 2024 Google LLC Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.