Consultar un conjunto de datos público con la biblioteca de cliente de Node.js de BigQuery

Consultar un conjunto de datos público con la biblioteca de cliente de Node.js de BigQuery

Aprende a:

  1. Activar Cloud Shell en un Google Cloud proyecto.
  2. Abrir el editor de Cloud Shell.
  3. Preparar archivos para consultas.
  4. Consultar un conjunto de datos público en BigQuery.
  5. Limpiar.

Tiempo estimado para completar el tutorial:

Haz clic en Empezar para continuar.

Activar Cloud Shell en un Google Cloud proyecto

  1. Si no habilitas la facturación en un proyecto, trabajarás automáticamente en el entorno aislado de BigQuery. El entorno aislado de BigQuery te permite aprender a usar BigQuery con un conjunto limitado de funciones de BigQuery sin coste económico. Si no tienes previsto usar el proyecto más allá de este documento, te recomendamos que uses el entorno aislado de BigQuery.

  2. Haz clic en Activar Cloud Shell. Mostrarme

Para saber cómo abrir el editor de Cloud Shell, haz clic en Siguiente.

Abrir el editor de Cloud Shell

  1. En Cloud Shell, crea un proyecto y un archivo de Node.js:

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

    Este comando crea un proyecto de Node.js llamado bigquery-node-quickstart y un archivo llamado app.js.

  2. Abre el editor de Cloud Shell:

    cloudshell workspace bigquery-node-quickstart
    

Para saber cómo preparar archivos para consultas, haz clic en Siguiente.

Preparar archivos para consultas

  1. Para abrir un terminal en el editor de Cloud Shell, haz clic en Abrir terminal.

  2. Abre el directorio del proyecto:

    cd bigquery-node-quickstart
    
  3. Instala la biblioteca de cliente de BigQuery para Node.js:

    npm install @google-cloud/bigquery
    

    El resultado debería ser similar al siguiente:

    added 63 packages in 2s
    

Para saber cómo consultar un conjunto de datos público en BigQuery, haz clic en Siguiente.

Consultar un conjunto de datos público en BigQuery

  1. Haz clic en Abrir editor.

  2. En el panel Explorador, busca el proyecto BIGQUERY-NODE-QUICKSTART.

  3. Haz clic en el archivo app.js para abrirlo.

  4. Para crear una consulta en el conjunto de datos bigquery-public-data.stackoverflow que devuelva las 10 páginas de Stack Overflow más vistas y su número de visitas, copia el siguiente código en el archivo 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. Haz clic en Abrir terminal.

  6. En el terminal, ejecuta el script app.js. Si se te pide que autorices Cloud Shell y aceptes los términos, haz clic en Autorizar.

    node app.js
    

    El resultado debería ser similar al siguiente:

    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
    

Has consultado correctamente un conjunto de datos público con la biblioteca de cliente de Node.js de BigQuery.

Para evitar que se apliquen cargos en tu cuenta y obtener información sobre los pasos siguientes, haz clic en Siguiente.

Pasos siguientes

Conserva los recursos que has creado y haz más cosas con BigQuery, o bien limpia para evitar que se apliquen cargos de facturación.

Hacer más cosas con BigQuery

Limpieza

Para evitar que se apliquen cargos en tu Google Cloud cuenta, elimina tu Google Cloud proyecto o los recursos que has creado en este tutorial.

Eliminar el proyecto

Si has creado un proyecto para aprender a usar BigQuery y ya no lo necesitas, elimínalo. Ten en cuenta que, al eliminar un proyecto, se elimina todo lo que contiene y se pierden los IDs de proyecto personalizados.

Eliminar los recursos

Si has usado un proyecto, elimina la carpeta bigquery-node-quickstart que has creado:

  1. En Cloud Shell, sube un directorio:

    cd ..
    
  2. Elimina los recursos que has creado:

    rm -R bigquery-node-quickstart
    

    La marca -R elimina todos los recursos de una carpeta.