Öffentliches Dataset mit der Node.js-Clientbibliothek von BigQuery abfragen

Öffentliches Dataset mit der Node.js-Clientbibliothek von BigQuery abfragen

Sie erfahren, wie Sie:

  1. Cloud Shell in einem Google Cloud Projekt aktivieren
  2. Den Cloud Shell-Editor öffnen
  3. Dateien für Abfragen vorbereiten
  4. Ein öffentliches Dataset in BigQuery abfragen
  5. Bereinigen

Geschätzte Dauer:

Klicken Sie auf Start, um zu beginnen.

Cloud Shell in einem Google Cloud Projekt aktivieren

  1. Wenn Sie die Abrechnung für ein Projekt nicht aktivieren, arbeiten Sie automatisch in der BigQuery-Sandbox. Mit der BigQuery-Sandbox können Sie BigQuery mit einer begrenzten Anzahl von BigQuery-Features kostenlos nutzen. Wenn Sie nicht vorhaben, Ihr Projekt über dieses Dokument hinaus zu verwenden, empfehlen wir die Verwendung der BigQuery-Sandbox.

  2. Klicken Sie auf Cloud Shell aktivieren. Einblenden

Klicken Sie auf Weiter, um zu erfahren, wie Sie den Cloud Shell-Editor öffnen.

Cloud Shell-Editor öffnen

  1. Erstellen Sie in Cloud Shell ein neues Node.js-Projekt und eine neue Datei:

    mkdir bigquery-node-quickstart \
        && touch \
        bigquery-node-quickstart/app.js
    

    Dieser Befehl erstellt ein Node.js-Projekt mit dem Namen bigquery-node-quickstart und eine Datei mit dem Namen app.js.

  2. Öffnen Sie den Cloud Shell-Editor.

    cloudshell workspace bigquery-node-quickstart
    

Klicken Sie auf Weiter, um zu erfahren, wie Sie Dateien für Abfragen vorbereiten.

Dateien für Abfragen vorbereiten

  1. Klicken Sie zum Öffnen eines Terminals im Cloud Shell-Editor auf Terminal öffnen.

  2. Öffnen Sie das Projektverzeichnis:

    cd bigquery-node-quickstart
    
  3. Installieren Sie die BigQuery Node.js-Clientbibliothek:

    npm install @google-cloud/bigquery
    

    Die Ausgabe sieht in etwa so aus:

    added 63 packages in 2s
    

Klicken Sie auf Weiter, um zu erfahren, wie Sie ein öffentliches Dataset in BigQuery abfragen.

Öffentliches Dataset in BigQuery abfragen

  1. Klicken Sie auf Editor öffnen.

  2. Suchen Sie im Bereich Explorer das Projekt BIGQUERY-NODE-QUICKSTART.

  3. Klicken Sie auf die Datei app.js, um sie zu öffnen.

  4. Wenn Sie eine Abfrage für das Dataset bigquery-public-data.stackoverflow erstellen möchten, die die zehn am häufigsten aufgerufenen Stack Overflow-Seiten und deren Aufrufzahlen zurückgibt, kopieren Sie den folgenden Code in die Datei app.js:

    // Import the Google Cloud client library
    const {BigQuery} = require('@google-cloud/bigquery');
    
    async function queryStackOverflow() {
      // Queries a public Stack Overflow dataset.
    
      // Create a client
      const bigqueryClient = new BigQuery();
    
      // The SQL query to run
      const sqlQuery = `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`;
    
      const options = {
        query: sqlQuery,
        // Location must match that of the dataset(s) referenced in the query.
        location: 'US',
      };
    
      // Run the query
      const [rows] = await bigqueryClient.query(options);
    
      console.log('Query Results:');
      rows.forEach(row => {
        const url = row['url'];
        const viewCount = row['view_count'];
        console.log(`url: ${url}, ${viewCount} views`);
      });
    }
    queryStackOverflow();

  5. Klicken Sie auf Terminal öffnen.

  6. Führen Sie im Terminal das Skript app.js aus. Wenn Sie zur Autorisierung von Cloud Shell aufgefordert werden und den Bedingungen zustimmen, klicken Sie auf Autorisieren.

    node app.js
    

    Das Ergebnis sieht etwa so aus:

    Query Results:
    url: https://stackoverflow.com/questions/35159967, 170023 views
    url: https://stackoverflow.com/questions/22879669, 142581 views
    url: https://stackoverflow.com/questions/10604135, 132406 views
    url: https://stackoverflow.com/questions/44564887, 128781 views
    url: https://stackoverflow.com/questions/27060396, 127008 views
    url: https://stackoverflow.com/questions/12482637, 120766 views
    url: https://stackoverflow.com/questions/20673986, 115720 views
    url: https://stackoverflow.com/questions/39109817, 108368 views
    url: https://stackoverflow.com/questions/11057219, 105175 views
    url: https://stackoverflow.com/questions/43195143, 101878 views
    

Sie haben mit der BigQuery Node.js-Clientbibliothek erfolgreich ein öffentliches Dataset abgefragt.

Klicken Sie auf Weiter, um zu verhindern, dass Ihrem Konto Gebühren in Rechnung gestellt werden, und um Informationen zu den nächsten Schritten zu erhalten.

Nächste Schritte

Behalten Sie die von Ihnen erstellten Ressourcen und nutzen Sie sie für weitere Aufgaben mit BigQuery oder bereinigen Sie sie, um Gebühren zu vermeiden.

Mehr Möglichkeiten mit BigQuery

Bereinigen

Damit Ihrem Google Cloud Konto keine Gebühren in Rechnung gestellt werden, sollten Sie entweder Ihr Google Cloud Projekt oder die in dieser Schritt-für-Schritt-Anleitung erstellten Ressourcen löschen.

Projekt löschen

Wenn Sie ein neues Projekt erstellt haben, um mehr über BigQuery zu erfahren, und Sie das Projekt nicht mehr benötigen, löschen Sie es. Beachten Sie, dass beim Löschen eines Projekts alle Inhalte darin gelöscht werden und benutzerdefinierte Projekt-IDs verloren gehen.

Ressourcen löschen

Wenn Sie ein vorhandenes Projekt verwendet haben, löschen Sie den erstellten Ordner bigquery-node-quickstart:

  1. Wechseln Sie in Cloud Shell ein Verzeichnis nach oben:

    cd ..
    
  2. Löschen Sie die erstellten Ressourcen:

    rm -R bigquery-node-quickstart
    

    Mit dem Flag -R werden alle Assets in einem Ordner gelöscht.