Esegui una query su un set di dati pubblico con la libreria client Node.js di BigQuery

Esegui una query su un set di dati pubblico con la libreria client Node.js di BigQuery

Scopri come:

  1. Attivare Cloud Shell in un progetto Google Cloud .
  2. Aprire l'editor di Cloud Shell.
  3. Preparare i file per le query.
  4. Eseguire una query su un set di dati pubblico in BigQuery.
  5. Eseguire la pulizia.

Tempo stimato per il completamento:

Fai clic su Avvia per iniziare.

Attiva Cloud Shell in un progetto Google Cloud

  1. Se non abiliti la fatturazione per un progetto, utilizzi automaticamente la sandbox di BigQuery. La sandbox di BigQuery ti consente di scoprire BigQuery con un set limitato di funzionalità BigQuery senza costi aggiuntivi. Se non prevedi di utilizzare il progetto in altri contesti, ti consigliamo di utilizzare la sandbox di BigQuery.

  2. Fai clic su Attiva Cloud Shell. Procedura

Per scoprire come aprire l'editor di Cloud Shell, fai clic su Avanti.

Apri l'editor di Cloud Shell

  1. In Cloud Shell, crea un nuovo progetto e un nuovo file Node.js:

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

    Questo comando crea un progetto Node.js denominato bigquery-node-quickstart e un file denominato app.js.

  2. Apri l'editor di Cloud Shell:

    cloudshell workspace bigquery-node-quickstart
    

Per scoprire come preparare i file per le query, fai clic su Avanti.

Prepara i file per le query

  1. Per aprire un terminale nell'editor di Cloud Shell, fai clic su Apri terminale.

  2. Apri la directory del progetto:

    cd bigquery-node-quickstart
    
  3. Installa la libreria client di BigQuery per Node.js:

    npm install @google-cloud/bigquery
    

    L'output è simile al seguente:

    added 63 packages in 2s
    

Per scoprire come eseguire query su un set di dati pubblico in BigQuery, fai clic su Avanti.

Esegui una query su un set di dati pubblico in BigQuery

  1. Fai clic su Apri editor.

  2. Nel riquadro Explorer, individua il progetto BIGQUERY-NODE-QUICKSTART.

  3. Fai clic sul file app.js per aprirlo.

  4. Per creare una query sul set di dati bigquery-public-data.stackoverflow che restituisce le prime 10 pagine di Stack Overflow più visualizzate e il rispettivo numero di visualizzazioni, copia il seguente codice nel file 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. Fai clic su Apri terminale.

  6. Nel terminale, esegui lo script app.js. Se ti viene chiesto di autorizzare Cloud Shell e di accettare i termini, fai clic su Autorizza.

    node app.js
    

    Il risultato è simile al seguente:

    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
    

Hai eseguito una query su un set di dati pubblico con la libreria client Node.js di BigQuery.

Per evitare che al tuo account vengano addebitati costi e per ottenere informazioni sui passaggi successivi, fai clic su Avanti.

Passaggi successivi

Conserva le risorse che hai creato e ottieni il massimo da BigQuery oppure esegui la pulizia per evitare addebiti.

Ottieni il massimo da BigQuery

Esegui la pulizia

Per evitare che al tuo account Google Cloud vengano addebitati costi, elimina il progetto Google Cloud o le risorse che hai creato in questa procedura dettagliata.

Elimina il progetto

Se hai creato un nuovo progetto per prendere dimestichezza con BigQuery, ma non ne hai più bisogno, eliminalo. Tieni presente che l'eliminazione di un progetto comporta l'eliminazione di tutti i dati del progetto e gli ID progetto personalizzati andranno persi.

Elimina le risorse

Se hai utilizzato un progetto esistente, elimina la cartella bigquery-node-quickstart che hai creato:

  1. In Cloud Shell, sali di un livello nella directory:

    cd ..
    
  2. Elimina le risorse che hai creato:

    rm -R bigquery-node-quickstart
    

    Il flag -R elimina tutti gli asset in una cartella.