La herramienta de línea de comandos bq es una herramienta de línea de comandos basada en Python para BigQuery.
Nos sirve para ejecutar consultas SQL de BigQuery. Veamos algunos ejemplos de cómo usarlo:
Listar version:
1 | $ bq version
|
Obtener ayuda:
1 | $ bq help
|
Listar datasets, jobs, etc.
1 2 3 | $ bq ls $ bq ls --location=US $ bq ls --dataset=mydataset |
Mostrar información sobre los dataset, jobs, etc.:
1 2 3 | $ bq show mydataset $ bq show mydataset.mytable $ bq show --job=job_id |
Eliminar datasets, tablas, etc.:
1 2 3 | $ bq rm mydataset $ bq rm mydataset.mytable $ bq rm --job=job_id |
Consultar datos de una tabla:
1 | $ bq query --nouse_legacy_sql "SELECT name, age FROM mi_dataset.mi_tabla WHERE age > 30 LIMIT 10" |
Crear un nuevo dataset:
1 | $ bq mk --dataset mi_proyecto:mi_nuevo_dataset
|
Carga un archivo CSV local a una tabla en BigQuery:
1 | $ bq load --source_format=CSV --autodetect mi_dataset.mi_tabla ./datos.csv |
Exportar datos a Google Cloud Storage
1 | $ bq extract --destination_format=CSV mi_dataset.mi_tabla gs://mi_bucket/salida.csv |
Ejecutar un script desde un archivo:
1 | $ bq query --nouse_legacy_sql < query.sql
|
Verificar el estado de un job:
1 | $ bq show -j job_id
|
Para poder usarlo, debes estar autenticado:
1 | $ gcloud auth login
|
Además de haber configurado tu proyecto:
1 | $ gcloud config set project mi_proyecto |
Aquí un script shell para realizar una consulta:
myshell.sh
1 2 3 4 5 6 7 8 9 10 11 12 | #!/bin/bash gcloud config set project myProject bq query --use_legacy_sql=false --destination_table=myDataset.myTable \ 'SELECT word, SUM(word_count) AS count FROM `bigquery-public-data`.samples.shakespeare WHERE word LIKE "%raisin%" GROUP BY word' |
Dar permisos:
1 | $ sudo chmod 777 myshell.sh
|
Ejecución:
1 | $ sh -x myshell.sh
|
La herramienta de línea de comandos bq de Google BigQuery es muy útil para interactuar con BigQuery desde la terminal.
En próximas entregas ampliaremos los ejemplos de su uso.
Enlaces:
https://medium.com/data-nuggets/11-basic-bigquery-bq-commands-for-data-interaction-59e0d7cee84chttps://stackoverflow.com/questions/76906880/how-to-run-saved-queries-using-bq-command-line-tool
https://cloud.google.com/bigquery/docs/bq-command-line-tool
No hay comentarios:
Publicar un comentario