Explorar resultados de consulta em notebooks

É possível analisar os resultados da consulta usando células SQL ou células de código nos notebooks do BigQuery Colab Enterprise.

Neste tutorial, você consulta dados de um conjunto de dados público do BigQuery e explora os resultados de consulta em um notebook.

Objetivos

  • Criar e executar uma consulta no BigQuery
  • Analisar os resultados da consulta em um notebook usando células de SQL e de código.

Custos

Neste tutorial, usamos um conjunto de dados disponível pelo Cloud de Confiance by S3NS programa de conjuntos de dados públicos. O Google paga pelo armazenamento desses conjuntos de dados e oferece acesso público a eles. Você receberá cobranças pelas consultas realizadas nos dados. Para mais informações, consulte Preços do BigQuery.

Antes de começar

  1. No console do Cloud de Confiance , na página do seletor de projetos, selecione ou crie um projeto do Cloud de Confiance .

    Funções necessárias para selecionar ou criar um projeto

    • Selecionar um projeto: não é necessário um papel específico do IAM para selecionar um projeto. Você pode escolher qualquer projeto em que tenha recebido um papel.
    • Criar um projeto: para criar um projeto, é necessário ter o papel de Criador de projetos (roles/resourcemanager.projectCreator), que contém a permissão resourcemanager.projects.create. Saiba como conceder papéis.

    Acessar o seletor de projetos

  2. Verifique se o faturamento está ativado para o projeto do Cloud de Confiance .

  3. Ative a API BigQuery.

    Funções necessárias para ativar APIs

    Para ativar as APIs, é necessário ter o papel do IAM de administrador de uso do serviço (roles/serviceusage.serviceUsageAdmin), que contém a permissão serviceusage.services.enable. Saiba como conceder papéis.

    Ativar a API

    O BigQuery é ativado automaticamente para novos projetos.

Definir a região padrão para recursos de código

Todos os novos recursos de código no seu projeto Cloud de Confiance usam uma região padrão. Depois que o recurso é criado, não é possível mudar a região dele.

Para definir a região padrão dos novos recursos de código, faça o seguinte:

  1. Acessar a página do BigQuery.

    Acessar o BigQuery

  2. No painel à esquerda, clique em Arquivos para abrir o navegador de arquivos:

    Clique em **Arquivos** para abrir o navegador de arquivos.

  3. Ao lado do nome do projeto, clique em Ver ações do painel de arquivos > Mudar região de código.

  4. Selecione a região de código que você quer usar como padrão.

  5. Clique em Salvar.

Para conferir uma lista de regiões compatíveis, consulte Locais do BigQuery Studio.

Permissões necessárias

Para criar e executar notebooks, você precisa dos seguintes papéis do Identity and Access Management (IAM):

Abrir resultados de consulta em um notebook

É possível executar uma consulta SQL e depois usar um notebook para explorar os dados. Essa abordagem é útil quando você quer modificar os dados no BigQuery antes de trabalhar com eles ou quando precisa apenas de um subconjunto dos campos na tabela.

  1. No console do Cloud de Confiance , acesse a página BigQuery.

    Acessar o BigQuery

  2. No painel à esquerda, clique em Explorer.

  3. Acesse o projeto bigquery-public-data, clique em Alternar nó para expandir e clique em Conjuntos de dados. Uma nova guia é aberta no painel de detalhes com uma lista de todos os conjuntos de dados do projeto.

  4. Na caixa Filtro, escolha ID do conjunto de dados e insira ml_datasets.

    O campo "Filtro" na página "Conjuntos de dados"

  5. Na página Conjuntos de dados, clique em ml_datasets > pinguins.

  6. Clique em Consulta.

  7. Adicione um asterisco (*) para seleção de campo à consulta gerada, de modo que ela fique parecida com o exemplo a seguir:

    SELECT * FROM `bigquery-public-data.ml_datasets.penguins` LIMIT 1000;
  8. Clique em Executar.

  9. Na seção Resultados da consulta, clique em Abrir em e em Notebook.

Preparar o notebook para uso

Prepare o notebook para uso conectando-se a um ambiente de execução e definindo os valores padrão do aplicativo.

  1. No cabeçalho do notebook, clique em Conectar para se conectar ao ambiente de execução padrão.

  2. No bloco de código Setup, clique em Executar célula.

explore os dados

  1. Clique em Opções de inserção de célula de código > Adicionar célula SQL.

    A opção "Adicionar célula SQL" no menu "Inserir célula de código"

  2. Insira a seguinte consulta na célula SQL:

    SELECT * FROM `bigquery-public-data.ml_datasets.penguins` LIMIT 1000;
    
  3. Clique em Executar célula.

    Os resultados da consulta são mostrados em um DataFrame do BigQuery.

  4. Como alternativa, para carregar os resultados da consulta em um DataFrame do BigQuery usando o job de consulta executado anteriormente no editor de consultas, siga estas etapas:

    1. Acesse a seção Conjunto de resultados carregado do job do BigQuery como um DataFrame.

    2. No bloco de código, clique em Executar célula.

      Os resultados da consulta são mostrados em um DataFrame do BigQuery.

  5. Para receber métricas descritivas dos dados, siga estas etapas:

    1. Acesse a seção Mostrar estatísticas descritivas usando describe().

    2. No bloco de código, clique em Executar célula.

      Os resultados são mostrados em um DataFrame do BigQuery.

  6. Opcional: use outras funções ou pacotes do Python para explorar e analisar os dados.

O exemplo de código a seguir mostra o uso de bigframes.pandas para analisar dados e o bigframes.ml para criar um modelo de regressão linear de pinguins em um DataFrame do BigQuery:

import bigframes.pandas as bpd

# Load data from BigQuery
query_or_table = "bigquery-public-data.ml_datasets.penguins"
bq_df = bpd.read_gbq(query_or_table)

# Inspect one of the columns (or series) of the DataFrame:
bq_df["body_mass_g"]

# Compute the mean of this series:
average_body_mass = bq_df["body_mass_g"].mean()
print(f"average_body_mass: {average_body_mass}")

# Find the heaviest species using the groupby operation to calculate the
# mean body_mass_g:
(
    bq_df["body_mass_g"]
    .groupby(by=bq_df["species"])
    .mean()
    .sort_values(ascending=False)
    .head(10)
)

# Create the Linear Regression model
from bigframes.ml.linear_model import LinearRegression

# Filter down to the data we want to analyze
adelie_data = bq_df[bq_df.species == "Adelie Penguin (Pygoscelis adeliae)"]

# Drop the columns we don't care about
adelie_data = adelie_data.drop(columns=["species"])

# Drop rows with nulls to get our training data
training_data = adelie_data.dropna()

# Pick feature columns and label column
X = training_data[
    [
        "island",
        "culmen_length_mm",
        "culmen_depth_mm",
        "flipper_length_mm",
        "sex",
    ]
]
y = training_data[["body_mass_g"]]

model = LinearRegression(fit_intercept=False)
model.fit(X, y)
model.score(X, y)

Limpeza

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados no tutorial, exclua o projeto que os contém ou mantenha o projeto e exclua os recursos individuais.

A maneira mais fácil de evitar o faturamento é excluir o projeto Cloud de Confiance que você criou para este tutorial.

  1. No console Cloud de Confiance , acesse a página Gerenciar recursos.

    Acessar "Gerenciar recursos"

  2. Na lista de projetos, selecione o projeto que você quer excluir e clique em Excluir .
  3. Na caixa de diálogo, digite o ID do projeto e clique em Encerrar para excluí-lo.

A seguir