Carregar e consultar dados com a ferramenta bq
Aprenda a criar um conjunto de dados, carregar dados de amostra e consultar tabelas com a ferramenta de linha de comando bq.
Para seguir as instruções passo a passo desta tarefa diretamente no console do Google Cloud, clique em Orientação:
Antes de começar
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
Verifique se a API BigQuery está ativada.
Se você criou um novo projeto, a API BigQuery será ativada automaticamente.
-
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.
Se você não ativar o faturamento do projeto do Google Cloud usado neste tutorial, será necessário trabalhar com dados no sandbox do BigQuery. O sandbox do BigQuery ensina você a usar o BigQuery com um conjunto limitado de recursos sem custos financeiros.
Fazer o download do arquivo de dados públicos de origem
- Fazer o download do arquivo ZIP com nomes de bebês.
- Extraia o arquivo ZIP. Ele contém um arquivo chamado
NationalReadMe.pdf
que descreve o esquema do conjunto de dados. Saiba mais sobre o conjunto de dados com nomes de bebês. - Abra o arquivo
yob2010.txt
. Trata-se de um arquivo de valores separados por vírgulas (CSV) com três colunas: nome, gênero atribuído ao nascer e número de crianças com esse nome. O arquivo não tem linha de cabeçalho. - Mova o arquivo para o diretório de trabalho.
- Se você estiver trabalhando no Cloud Shell, clique em
yob2010.txt
e clique em Fazer upload. - Se você estiver trabalhando em um shell local, copie ou mova o arquivo
yob2010.txt
para o diretório em que está executando a ferramenta bq.
- Se você estiver trabalhando no Cloud Shell, clique em
crie um conjunto de dados
Crie um conjunto de dados chamado
babynames
:bq mk babynames
O resultado será assim:
Dataset 'myproject:babynames' successfully created.
O nome do conjunto de dados pode ter até 1.024 caracteres e ser composto de A-Z, a-z, 0-9 e sublinhado. O nome não pode começar com um número ou sublinhado e não pode ter espaços.
Verifique se o conjunto de dados
babynames
agora aparece no seu projeto:bq ls
O resultado será assim:
datasetId ------------- babynames
Carregar dados em uma tabela
No conjunto de dados
babynames
, carregue o arquivo de origemyob2010.txt
em uma nova tabela chamadanames2010
:bq load babynames.names2010 yob2010.txt name:string,assigned_sex_at_birth:string,count:integer
O resultado será assim:
Upload complete. Waiting on bqjob_r3c045d7cbe5ca6d2_0000018292f0815f_1 ... (1s) Current status: DONE
Por padrão, quando você carrega dados no BigQuery, espera-se que eles estejam no formato UTF-8. Se você tiver dados na codificação ISO-8859-1 (ou Latin-1) e tiver problemas com eles, instrua o BigQuery a tratar seus dados como Latin-1 usando
bq load -E=ISO-8859-1
. Para ver mais informações, consulte Codificação.Confirme se a tabela
names2010
agora aparece no conjunto de dadosbabynames
:bq ls babynames
A resposta será semelhante a esta: Algumas colunas são omitidas para simplificar a saída.
tableId Type ----------- --------- names2010 TABLE
Confirme se o esquema da nova tabela
names2010
éname: string
,assigned_sex_at_birth: string
ecount: integer
:bq show babynames.names2010
A resposta será semelhante a esta: Algumas colunas são omitidas para simplificar a saída.
Last modified Schema Total Rows Total Bytes ----------------- ------------------------------- ------------ ------------ 14 Mar 17:16:45 |- name: string 34089 654791 |- assigned_sex_at_birth: string |- count: integer
Consultar os dados da tabela
Determine os nomes mais comuns de meninas nos dados:
bq query --use_legacy_sql=false \ 'SELECT name, count FROM `babynames.names2010` WHERE assigned_sex_at_birth = "F" ORDER BY count DESC LIMIT 5;'
O resultado será assim:
+----------+-------+ | name | count | +----------+-------+ | Isabella | 22925 | | Sophia | 20648 | | Emma | 17354 | | Olivia | 17030 | | Ava | 15436 | +----------+-------+
Determine os nomes de meninos menos comuns nos dados:
bq query --use_legacy_sql=false \ 'SELECT name, count FROM `babynames.names2010` WHERE assigned_sex_at_birth = "M" ORDER BY count ASC LIMIT 5;'
O resultado será assim:
+----------+-------+ | name | count | +----------+-------+ | Aamarion | 5 | | Aarian | 5 | | Aaqib | 5 | | Aaidan | 5 | | Aadhavan | 5 | +----------+-------+
A contagem mínima é 5, porque os nomes com menos de 5 ocorrências não são exibidos nos dados de origem.
Limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, exclua o projeto do Google Cloud com esses recursos.
Excluir o projeto
Se você usou o sandbox do BigQuery para consultar o conjunto de dados público, o faturamento não está ativado para seu projeto.O jeito mais fácil de evitar o faturamentos é excluindo o projeto criado para este tutorial.
Para excluir o projeto, faça o seguinte:
- 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.
Excluir os recursos
Se você usou um projeto atual, exclua os recursos criados:
Excluir o conjunto de dados
babynames
:bq rm --recursive=true babynames
A sinalização
--recursive
exclui todas as tabelas do conjunto de dados, incluindo a tabelanames2010
.O resultado será assim:
rm: remove dataset 'myproject:babynames'? (y/N)
Para confirmar o comando de exclusão, insira
y
.
A seguir
- Saiba mais sobre como usar a ferramenta bq.
- Saiba mais sobre o sandbox do BigQuery.
- Saiba como carregar dados no BigQuery.
- Saiba como consultar dados no BigQuery.
- Receba atualizações sobre o BigQuery.
- Saiba mais sobre o preço do BigQuery.
- Saiba mais sobre cotas e limites do BigQuery.