Interroger un ensemble de données public avec la bibliothèque cliente BigQuery PHP

Bibliothèque cliente BigQuery PHP : interroger des données publiques

Découvrez comment :

  1. Activer Cloud Shell dans un projet Google Cloud
  2. Ouvrir l'éditeur Cloud Shell
  3. Préparer les fichiers pour les requêtes
  4. Interroger un ensemble de données public dans BigQuery
  5. effectuer un nettoyage.

Durée estimée :

Pour commencer, cliquez sur Démarrer.

Activer Cloud Shell dans un projet Google Cloud

  1. Si vous n'activez pas la facturation pour un projet, vous travaillez automatiquement dans le bac à sable BigQuery. Ce bac à sable vous permet d'apprendre à utiliser BigQuery avec un ensemble limité de fonctionnalités sans frais. Si vous ne prévoyez pas d'utiliser votre projet au-delà de ce document, nous vous recommandons d'utiliser le bac à sable BigQuery.

  2. Cliquez sur Activer Cloud Shell . Démonstration

Pour découvrir comment ouvrir l'éditeur Cloud Shell, cliquez sur Suivant.

Ouvrir l'éditeur Cloud Shell

  1. Dans Cloud Shell, créez un projet PHP et le fichier associé :

    mkdir bigquery-php-quickstart \
        && touch \
        bigquery-php-quickstart/app.php
    

    Cette commande crée un projet PHP nommé bigquery-php-quickstart et un fichier intitulé app.php.

  2. Ouvrez l'éditeur Cloud Shell :

    cloudshell workspace bigquery-php-quickstart
    

Pour apprendre à préparer les fichiers pour les requêtes, cliquez sur Suivant.

Préparer les fichiers pour les requêtes

  1. Pour ouvrir un terminal dans l'éditeur Cloud Shell, cliquez sur Ouvrir le terminal.

  2. Ouvrez le répertoire de votre projet :

    cd bigquery-php-quickstart
    
  3. Installez la bibliothèque cliente BigQuery pour PHP :

    composer require google/cloud-bigquery
    

    Le résultat renvoyé ressemble à ceci : Plusieurs lignes sont omises pour simplifier le résultat.

    Running composer update google/cloud-bigquery
    Loading composer repositories with package information
    Updating dependencies
    ...
    No security vulnerability advisories found
    Using version ^1.24 for google/cloud-bigquery
    

Pour apprendre à interroger un ensemble de données public dans BigQuery, cliquez sur Suivant.

Interroger un ensemble de données public dans BigQuery

  1. Cliquez sur Ouvrir l'éditeur.

  2. Dans le volet Explorateur, localisez votre projet BIGQUERY-PHP-QUICKSTART.

  3. Cliquez sur le fichier app.php pour l'ouvrir.

  4. Pour créer une requête sur l'ensemble de données bigquery-public-data.stackoverflow qui renvoie les 10 pages Stack Overflow les plus consultées et leur nombre de vues, copiez le code suivant dans le fichier app.php :

    <?php
    # ...
    
    require __DIR__ . '/vendor/autoload.php';
    
    use Google\Cloud\BigQuery\BigQueryClient;
    
    
    $bigQuery = new BigQueryClient();
    $query = <<<ENDSQL
    SELECT
      CONCAT(
        'https://stackoverflow.com/questions/',
        CAST(id as STRING)) as url,
      view_count
    FROM `bigquery-public-data.stackoverflow.posts_questions`
    WHERE tags like '%google-bigquery%'
    ORDER BY view_count DESC
    LIMIT 10;
    ENDSQL;
    $queryJobConfig = $bigQuery->query($query);
    $queryResults = $bigQuery->runQuery($queryJobConfig);
    
    if ($queryResults->isComplete()) {
        $i = 0;
        $rows = $queryResults->rows();
        foreach ($rows as $row) {
            printf('--- Row %s ---' . PHP_EOL, ++$i);
            printf('url: %s, %s views' . PHP_EOL, $row['url'], $row['view_count']);
        }
        printf('Found %s row(s)' . PHP_EOL, $i);
    } else {
        throw new Exception('The query failed to complete');
    }

  5. Cliquez sur Ouvrir le terminal.

  6. Dans le terminal, exécutez le script app.php. Si vous êtes invité à autoriser Cloud Shell et à accepter les conditions, cliquez sur Autoriser.

    php app.php
    

    Le résultat ressemble à ce qui suit :

    --- Row 1 ---
    url: https://stackoverflow.com/questions/35159967, 170023 views
    --- Row 2 ---
    url: https://stackoverflow.com/questions/22879669, 142581 views
    --- Row 3 ---
    url: https://stackoverflow.com/questions/10604135, 132406 views
    --- Row 4 ---
    url: https://stackoverflow.com/questions/44564887, 128781 views
    --- Row 5 ---
    url: https://stackoverflow.com/questions/27060396, 127008 views
    --- Row 6 ---
    url: https://stackoverflow.com/questions/12482637, 120766 views
    --- Row 7 ---
    url: https://stackoverflow.com/questions/20673986, 115720 views
    --- Row 8 ---
    url: https://stackoverflow.com/questions/39109817, 108368 views
    --- Row 9 ---
    url: https://stackoverflow.com/questions/11057219, 105175 views
    --- Row 10 ---
    url: https://stackoverflow.com/questions/43195143, 101878 views
    Found 10 row(s)
    

Vous venez d'interroger un ensemble de données public avec la bibliothèque cliente BigQuery pour PHP.

Pour éviter que des frais ne soient facturés sur votre compte et pour découvrir les étapes suivantes, cliquez sur Suivant.

Étapes suivantes

Conservez les ressources que vous avez créées et exploitez tout le potentiel de BigQuery, ou effectuez un nettoyage pour éviter que des frais ne vous soient facturés.

Exploiter tout le potentiel de BigQuery

Effectuer un nettoyage

Pour éviter que des frais ne soient facturés sur votre compte Google Cloud , supprimez votre projet Google Cloud ou les ressources que vous avez créées dans ce tutoriel.

Supprimer le projet

Si vous avez créé un projet pour apprendre à utiliser BigQuery et que vous n'en avez plus besoin, supprimez-le. Sachez que la suppression d'un projet entraîne la suppression de tout son contenu, y compris des ID de projets personnalisés.

Supprimer les ressources

Si vous avez utilisé un projet existant, supprimez le dossier bigquery-php-quickstart que vous avez créé :

  1. Dans Cloud Shell, remontez dans le répertoire parent de celui actuellement sélectionné :

    cd ..
    
  2. Supprimez les ressources que vous avez créées :

    rm -R bigquery-php-quickstart
    

    Le flag -R supprime tous les éléments d'un dossier.