Codelab: navegação na interface e exploração de dados do BigQuery

1. Introdução

O BigQuery é um data warehouse sem servidor, altamente escalonável e econômico. Basta você transferir os dados para o BigQuery, e ele faz todo o trabalho para você se concentrar no que realmente importa: administrar sua empresa. Controle o acesso ao projeto e aos dados de acordo com a necessidade dos negócios, por exemplo, definindo quem tem permissão para visualizar ou consultar os dados.

Neste laboratório, você descobrirá as possibilidades analíticas do BigQuery. Você vai aprender a importar um conjunto de dados de um bucket do Google Cloud Storage e entender a interface do BigQuery trabalhando com um conjunto de dados de um banco de varejo. Além disso, você vai aprender a descobrir os principais recursos do BigQuery que facilitam muito as análises do seu dia a dia, como exportar resultados de consultas em uma planilha, visualizar e executar consultas do seu histórico de consultas, visualizar o desempenho das consultas e criar visualizações de tabelas para serem usadas por outras equipes e departamentos.

O que você vai aprender

Neste laboratório, você aprenderá a fazer o seguinte:

  • Como carregar novos dados no BigQuery
  • Conhecer a interface do BigQuery
  • Como executar consultas no BigQuery
  • Ver o desempenho da consulta
  • Como criar visualizações no BigQuery
  • Compartilhar conjuntos de dados de forma segura com outras pessoas

2. Introdução: noções básicas sobre a interface do BigQuery

Nesta seção, você vai aprender a navegar na interface do BigQuery, visualizar os conjuntos de dados disponíveis e executar uma consulta simples.

Como carregar a interface do BQ

  1. Digite "BigQuery" localizado na parte superior do console do Google Cloud Platform.
  2. Selecione BigQuery na lista de opções. Certifique-se de selecionar a opção que tem o logotipo do BigQuery, a lupa.

Como visualizar conjuntos de dados e executar consultas

ee95ce13969ee1ad.png

  1. No painel esquerdo da seção "Recursos", clique no seu projeto do BigQuery.
  2. Clique em bq_demo para ver as tabelas do conjunto de dados.
  3. Na caixa de pesquisa, digite "card". para ver uma lista de tabelas e conjuntos de dados que contêm "card" no nome.
  4. Selecione "card_transactions" tabela na lista de resultados da pesquisa

beb6ff6ca2930125.png

  1. Clique na guia "Detalhes" no painel card_transactions para visualizar os metadados da tabela.
  2. Clique na guia "Visualização" para conferir uma prévia da tabela.

[Ponto de discussão sobre a concorrência]: A integração com o Google Data Catalog significa que os metadados do BigQuery podem ser gerenciados com outras fontes de dados, como data lakes ou fontes de dados operacionais. Esse é um exemplo que mostra que o Google Cloud não é apenas um data warehouse relacional, é uma plataforma inteira de dados analíticos.

  1. Clique no ícone de lupa para consultar as "card_transactions" tabela. Um texto gerado automaticamente vai preencher o editor de consultas do BigQuery.
  2. Insira o código abaixo para mostrar comerciantes diferentes da tabela Card_Transactions
SELECT distinct (merchant) FROM bq_demo.card_transactions LIMIT 1000
  1. Clique no botão Executar para executar a consulta.

35113542e7ec6fa6.png

3. Como criar conjuntos de dados e compartilhar visualizações

O compartilhamento de dados e a governança são essenciais. Isso pode ser feito de maneira intuitiva na interface do BQ. Nesta seção, você aprenderá a criar um novo conjunto de dados, preenchê-lo com uma visualização e compartilhá-lo.

Como visualizar o histórico de consultas

  1. Clique em "Histórico de consultas" no painel esquerdo do console do GCP
  2. Clique em atualizar no painel Histórico de consultas
  3. Clique na seta/imagem de download na extremidade direita da consulta para visualizar os resultados da consulta.

6e3232ed96f647b8.png

Como criar um conjunto de dados

  1. Selecione [nome do projeto] no painel de recursos da IU do BigQuery.
  2. Selecione "Criar novo conjunto de dados" no painel de informações do projeto
  3. Para o ID do conjunto de dados:

bq_demo_shared

  1. Não altere os outros campos.
  2. Clique em "Criar conjunto de dados"

b433eba38f55124f.png dd774aca416e7fbc.png

Como criar visualizações

[Ponto de discussão sobre a concorrência]: o BigQuery é totalmente compatível com ANSI SQL e oferece suporte a funções analíticas ricas e junções simples e complexas de várias tabelas. Lançamos continuamente o suporte aprimorado para tipos de dados SQL comuns e funções usados em data warehouses tradicionais para facilitar o processo de migração.

  1. Selecione "Escrever nova consulta" na parte de cima do painel Editor de consultas.
  2. Insira o código a seguir no editor de consultas.
WITH revenue_by_month AS (
SELECT
    card.type AS card_type,
    FORMAT_DATE('%Y-%m', trans_date) as revenue_date,
    SUM(amount) as revenue
FROM bq_demo.card_transactions
JOIN bq_demo.card ON card_transactions.cc_number = card.card_number
WHERE trans_date  DATE_ADD(CURRENT_DATE, INTERVAL -1 YEAR)
GROUP BY card_type, revenue_date
)
SELECT
    card_type,
    revenue_date,
    revenue as monthly_rev,
    revenue -  LAG(revenue) OVER (ORDER BY card_type, revenue_date ASC) as rev_change
FROM revenue_by_month
ORDER BY card_type, revenue_date ASC;
  1. Clique em "Salvar visualização"
  2. Selecione seu projeto atual para o nome do projeto
  3. Selecione o conjunto de dados recém-criado:

bq_demo_shared

  1. Para Nome da tabela:

rev_change_by_card_type

  1. Clique em "Salvar".

4b111056b544c27d.png

Como compartilhar visualizações e conjuntos de dados

  1. Selecione a pasta "bq_demo_shared" no painel de recursos esquerdo da interface do BigQuery.
  2. Clique em "Compartilhar conjunto de dados" no painel de informações do conjunto de dados
  3. Insira um endereço de e-mail
  4. Selecione "Leitor de dados do BigQuery" no menu suspenso "Papel"
  5. Clique em "Adicionar"
  6. Clique em Concluído

1c04b6b5ebc191dc.png

Explorar dados no app Planilhas

[Ponto de discussão sobre a concorrência]: Outro benefício do BigQuery em relação aos concorrentes é o BI Engine. O BI Engine pode ser usado para fazer com que consultas de resumo de tipo de BI retornem em menos de um segundo por meio do mecanismo de armazenamento em cache na memória. No momento, esse recurso é compatível com o Google Data Studio, mas em breve estará disponível para acelerar todas as consultas no BigQuery.

Por exemplo:

O Snowflake conta com ferramentas de BI de terceiros para painéis e visualização de dados, enquanto o GCP oferece uma variedade de ferramentas de BI integradas, incluindo páginas conectadas, Data Studio e Looker.

  1. Selecione "rev_change_by_card_type". no painel de recursos esquerdo da interface do BigQuery.
  2. Clique na lupa para consultar a visualização 255be22b0eaf339.png
  3. Tipo:

SELECT *

DE bq_demo_shared.rev_change_by_card_type

  1. Clique em "Executar".
  2. Clique no botão "Exportar" Ícone do painel de resultados
  3. Selecione "Explorar dados com o Planilhas"

9617b522025fd337.png

  1. Clique em "Iniciar análise"
  2. Selecione "Tabela dinâmica"
  3. Selecione "Nova planilha"
  4. Clique em "Criar".
  5. Adicionar "revenue_date" na seção Linha do Editor de tabela dinâmica localizada à direita da janela do Planilhas
  6. Adicionar "card_type" Na seção "Coluna" do Editor da tabela dinâmica
  7. Adicionar "monthly_rev" Na seção "Coluna" do Editor da tabela dinâmica
  8. Clique em "Aplicar"

48e67c2e04965796.png

  1. Navegue até a parte superior robbin da interface do Planilhas e selecione Inserir gráfico

4. Configuração: integração de dados

Nesta seção, você vai aprender a criar uma nova tabela e executar uma instrução JOIN em um dos vários conjuntos de dados públicos disponíveis pelo Google Cloud.

[Ponto de discussão sobre a concorrência]:

O BigQuery oferece suporte a conjuntos de dados compartilhados há anos. Os clientes de qualquer projeto podem consultar conjuntos de dados públicos e conjuntos de dados em outros projetos que foram compartilhados com eles.

O BigQuery oferece suporte a data lakes no GCS com o uso de tabelas externas. Além do carregamento em massa, o BigQuery permite o streaming de dados para o banco de dados a taxas de mais de centenas de MB por segundo. O Snowflake não é compatível com dados de streaming.

Como importar dados para uma nova tabela

  1. No painel de recursos, selecione o conjunto de dados bq_demo.
  2. No painel de informações do conjunto de dados, selecione "Criar tabela".
  3. Selecionar Google Cloud Storage para origem
  4. Na caixa de texto do caminho do arquivo:

gs://retail-banking-looker/district

  1. Selecionar CSV para o formato de arquivo
  2. Digite "distrito" para Nome da tabela
  3. Marque a caixa de seleção de "Detectar esquema automaticamente"
  4. Clique em Criar tabela

Como consultar conjunto de dados público

  1. No editor de consultas, insira a seguinte consulta:
SELECT
    CAST(geo_id as STRING) AS zip_code,
    total_pop,
    median_age,
    households,
    income_per_capita,
    housing_units,
    vacant_housing_units_for_sale,
    ROUND(SAFE_DIVIDE(employed_pop, pop_16_over),4) AS rate_employment,
    ROUND(SAFE_DIVIDE(bachelors_degree_or_higher_25_64, pop_25_64),4) AS rate_bachelors_degree_or_higher_25_64
  FROM
    `bigquery-public-data.census_bureau_acs.zip_codes_2017_5yr`;
  1. Clique em "Executar".
  2. Ver os resultados

dff40709db70d75.png

  1. Agora, combinaremos esses dados públicos com outra consulta. Digite o seguinte código SQL no Editor de consultas:
WITH customer_counts AS (
    select regexp_extract(address, "[0-9][0-9][0-9][0-9][0-9]") as zip_code, 
    count(*) as num_clients
    FROM bq_demo.client
    GROUP BY zip_code
    )
SELECT 
    CAST(geo_id as STRING) AS zip_code,
    total_pop,
    median_age,
    households,
    income_per_capita,
    ROUND(SAFE_DIVIDE(employed_pop, pop_16_over),4) AS rate_employment,
    num_clients
FROM
    `bigquery-public-data.census_bureau_acs.zip_codes_2017_5yr`
JOIN customer_counts on zip_code = geo_id
ORDER BY num_clients DESC
  1. Clique em "Executar".
  2. Ver os resultados

b853ad571e7a3038.png

5. Gerenciamento de capacidade

Como trabalhar com slots e reservas

O BQ oferece vários modelos de preços para atender às suas necessidades. A maioria dos clientes de grande porte aproveita principalmente a taxa fixa para preços previsíveis com capacidade reservada. Para bursting além dessa capacidade de referência, o BQ oferece slots flexíveis que permitem que você aumente a capacidade adicional rapidamente e depois diminua automaticamente sem afetar a execução de consultas. O BQ também tem um modelo de verificação de bytes que permite que você pague apenas pelas consultas que executar.

[Ponto de discussão sobre a concorrência: alguns concorrentes trabalham exclusivamente em um modelo de capacidade fixa, em que os clientes precisam alocar um warehouse virtual para cada carga de trabalho da organização. Além do modelo de baixo custo por consulta que facilita os primeiros passos com o BigQuery, oferecemos suporte a um modelo de preços por capacidade com taxa fixa em que a capacidade inativa pode ser compartilhada entre um conjunto de cargas de trabalho.]

  1. Acesse a guia de reservas.

964f4ab78d35d067.png

  1. Clique em "Comprar slots"

c8cb5ee61bbea814.png

  1. Selecione "Flex" como duração.
  2. Selecione 500 slots.
  3. Confirme a compra.

d615f5908dffc1ee.png

  1. Clique em Exibir compromissos de slot.
  2. Clique em "Criar reserva"
  3. "Demonstração" do usuário como nome da reserva
  4. Selecionar Estados Unidos como local
  5. Digite 500 para slots (todos disponíveis)
  6. Clique em "Atribuições"
  7. Escolher o projeto atual para o projeto da organização
  8. Selecione "Demonstração" para o ID da reserva
  9. Clique em Criar".