Cargar y consultar datos con la herramienta bq
Aprende a crear un conjunto de datos, cargar datos de muestra y consultar tablas con la herramienta de línea de comandos bq.
Para seguir las instrucciones paso a paso de esta tarea directamente en la Google Cloud consola, haga clic en Ayúdame:
Antes de empezar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Compruebe que la API de BigQuery esté habilitada.
Si has creado un proyecto, la API de BigQuery se habilita automáticamente.
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
Descarga los datos de la Administración de la Seguridad Social de EE. UU. abriendo la siguiente URL en una nueva pestaña del navegador:
https://www.ssa.gov/OACT/babynames/names.zip
Extrae el archivo.
Para obtener más información sobre el esquema del conjunto de datos, consulta el archivo
NationalReadMe.pdf
que has extraído.Para ver el aspecto de los datos, abre el archivo
yob2024.txt
. Este archivo contiene valores separados por comas para el nombre, el sexo asignado al nacer y el número de niños con ese nombre. El archivo no contiene ninguna fila de cabecera.Mueve el archivo al directorio de trabajo.
Si estás trabajando en Cloud Shell, haz clic en
yob2024.txt
y, a continuación, haz clic en Subir.Si estás trabajando en un shell local, copia o mueve el archivo
yob2024.txt
al directorio en el que estés ejecutando la herramienta bq.
Si has iniciado Cloud Shell desde la documentación, introduce el siguiente comando para definir el ID de tu proyecto. De esta forma, no tendrás que especificar el ID del proyecto en cada comando de la CLI.
gcloud config set project PROJECT_ID
Sustituye PROJECT_ID por el ID del proyecto.
Introduce el siguiente comando para crear un conjunto de datos llamado
babynames
:bq mk --dataset babynames
El resultado debería ser similar al siguiente:
Dataset 'babynames' successfully created.
Confirma que el conjunto de datos
babynames
aparece en tu proyecto:bq ls --datasets=true
El resultado debería ser similar al siguiente:
datasetId ------------- babynames
En el conjunto de datos
babynames
, cargue el archivo de origenyob2024.txt
en una tabla nueva llamadanames2024
:bq load babynames.names2024 yob2024.txt name:string,assigned_sex_at_birth:string,count:integer
El resultado debería ser similar al siguiente:
Upload complete. Waiting on bqjob_r3c045d7cbe5ca6d2_0000018292f0815f_1 ... (1s) Current status: DONE
Confirma que la tabla
names2024
aparece ahora en el conjunto de datosbabynames
:bq ls --format=pretty babynames
La salida es similar a la siguiente. Se han omitido algunas columnas para simplificar el resultado.
+-----------+-------+ | tableId | Type | +-----------+-------+ | names2024 | TABLE | +-----------+-------+
Confirma que el esquema de la tabla
names2024
que has creado esname: string
,assigned_sex_at_birth: string
ycount: integer
:bq show babynames.names2024
La salida es similar a la siguiente. Se han omitido algunas columnas para simplificar el resultado.
Last modified Schema Total Rows Total Bytes ----------------- ------------------------------- ------------ ------------ 14 Mar 17:16:45 |- name: string 31904 607494 |- assigned_sex_at_birth: string |- count: integer
Determina los nombres de niña más populares de los datos:
bq query \ 'SELECT name, count FROM babynames.names2024 WHERE assigned_sex_at_birth = "F" ORDER BY count DESC LIMIT 5'
El resultado debería ser similar al siguiente:
+-----------+-------+ | name | count | +-----------+-------+ | Olivia | 14718 | | Emma | 13485 | | Amelia | 12740 | | Charlotte | 12552 | | Mia | 12113 | +-----------+-------+
Determina los nombres de niño menos populares de los datos:
bq query \ 'SELECT name, count FROM babynames.names2024 WHERE assigned_sex_at_birth = "M" ORDER BY count ASC LIMIT 5'
El resultado debería ser similar al siguiente:
+---------+-------+ | name | count | +---------+-------+ | Aaran | 5 | | Aadiv | 5 | | Aadarsh | 5 | | Aarash | 5 | | Aadrik | 5 | +---------+-------+
El recuento mínimo es 5 porque los datos de origen omiten los nombres con menos de 5 apariciones.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Elimina el conjunto de datos
babynames
:bq rm --recursive=true babynames
La marca
--recursive
elimina todas las tablas del conjunto de datos, incluida la tablanames2024
.El resultado debería ser similar al siguiente:
rm: remove dataset 'myproject:babynames'? (y/N)
Para confirmar el comando de eliminación, introduce
y
.- Más información sobre cómo usar la herramienta bq
- Consulta información sobre el entorno aislado de BigQuery.
- Consulta más información sobre cómo cargar datos en BigQuery.
- Consulta más información sobre cómo consultar datos en BigQuery.
Si no habilitas la facturación en el Google Cloud proyecto que uses en este tutorial, podrás cargar y consultar los datos en el entorno aislado de BigQuery. El entorno aislado de BigQuery te permite familiarizarte con BigQuery con un conjunto limitado de funciones de BigQuery sin coste económico.
Descargar el archivo que contiene los datos de origen
El archivo que vas a descargar contiene aproximadamente 7 MB de datos sobre nombres de bebés populares. La proporciona la Administración de la Seguridad Social de EE. UU.
Para obtener más información sobre los datos, consulta el artículo Información general sobre nombres populares de la Administración de la Seguridad Social.
Crear conjunto de datos
Cargar datos en una tabla
Consultar datos de tablas
Limpieza
Para evitar que se apliquen cargos en tu Google Cloud cuenta por los recursos utilizados en esta página, elimina el Google Cloud proyecto con los recursos.
Eliminar el proyecto
Si has usado el entorno aislado de BigQuery para consultar el conjunto de datos público, la facturación no estará habilitada en tu proyecto y no tendrás que eliminarlo.La forma más fácil de evitar que te cobren es eliminar el proyecto que has creado para el tutorial.
Para ello, sigue las instrucciones que aparecen a continuación:
Eliminar los recursos
Si has usado un proyecto que ya existía, elimina los recursos que hayas creado: