Carregamento e consulta de dados de amostra usando SQL

Introdução

Este tutorial usa uma marca fictícia de food truck chamada Tasty Bytes para mostrar como carregar e consultar dados no Snowflake usando SQL. Você usa uma planilha pré-carregada na Snowsight para concluir essas tarefas.

A ilustração a seguir fornece uma visão geral do Tasty Bytes.

Contém uma visão geral do Tasty Bytes, uma rede global de food trucks com 15 marcas de opções de food truck localizadas em vários países e cidades. A imagem descreve a missão, visão, localização, estado atual e objetivos futuros da empresa.

Nota

A Snowflake fatura uma quantidade mínima para o armazenamento em disco utilizado para os dados das amostras neste tutorial. Este tutorial fornece passos para descartar um banco de dados e minimizar o custo de armazenamento.

O Snowflake requer um warehouse virtual para carregar os dados e executar consultas. Um warehouse virtual em execução consome créditos do Snowflake. Neste tutorial, você usará uma conta de avaliação de 30 dias, que fornece créditos gratuitos, portanto você não terá custos.

O que você aprenderá

Neste tutorial você aprenderá a:

  • Use uma função para obter acesso à funcionalidade a partir de privilégios concedidos.

  • Use um warehouse para acessar recursos.

  • Crie um banco de dados e um esquema.

  • Crie uma tabela.

  • Carregue dados na tabela.

  • Consulte os dados na tabela.

Pré-requisitos

Este tutorial considera o seguinte:

Nota

Este tutorial está disponível apenas para usuários com conta de avaliação. A planilha de exemplo não está disponível para outros tipos de contas.

Etapa 1. Faça login usando Snowsight

Para acessar a Snowsight pela internet pública, faça o seguinte:

  1. Em um navegador da Web compatível, abra https://app.snowflake.com.

  2. Forneça seu identificador de conta ou URL de conta. Se você tiver feito login anteriormente na Snowsight, poderá ver um nome de conta que pode ser selecionado.

  3. Faça login usando as credenciais de sua conta Snowflake.

Etapa 2. Abertura da planilha SQL para carregar e consultar dados

Você pode usar planilhas para escrever e executar comandos SQL no banco de dados Snowflake. Sua conta de avaliação tem acesso a uma planilha pré-carregada para este tutorial. A planilha contém os comandos SQL que você executará para criar um banco de dados, carregar dados nele e consultá-los. Para obter mais informações sobre planilhas, consulte Introdução a planilhas.

Para abrir a planilha do tutorial pré-carregada:

  1. Selecione Projects » Worksheets para abrir a lista de planilhas.

  2. Abra [Tutorial] Using SQL to load and query sample data.

    Sua planilha é semelhante à imagem a seguir.

A planilha de carregamento e consulta SQL, que contém os comandos SQL para este tutorial, juntamente com comentários descritivos.

Etapa 3. Defina a função e o warehouse a serem usados

A função que você usa determina os privilégios que você tem. Neste tutorial, use a função de sistema ACCOUNTADMIN para poder visualizar e gerenciar objetos em sua conta. Para obter mais informações, consulte Uso da função ACCOUNTADMIN.

Um warehouse fornece os recursos necessários para criar e gerenciar objetos e executar comandos SQL. Esses recursos incluem CPU, memória e armazenamento temporário. Sua conta de avaliação possui um warehouse virtual (compute_wh) que você pode usar neste tutorial. Para obter mais informações, consulte Warehouses virtuais.

Para definir a função e o warehouse a serem usados, faça o seguinte:

  1. Na planilha aberta, coloque o cursor na linha USE ROLE.

    USE ROLE accountadmin;
    
    Copy
  2. No canto superior direito da planilha, selecione Run.

    Nota

    Neste tutorial, execute instruções SQL, uma de cada vez. Não selecione Run All.

  3. Coloque o cursor na linha USE WAREHOUSE e selecione Run.

    USE WAREHOUSE compute_wh;
    
    Copy

Etapa 4. Criação de um banco de dados, esquema e tabela

Um banco de dados armazena dados em tabelas que você pode gerenciar e consultar. Um esquema é um agrupamento lógico de objetos de banco de dados, como tabelas e exibições. Por exemplo, um esquema pode conter os objetos de banco de dados necessários para um aplicativo específico. Para obter mais informações, consulte Bancos de dados, tabelas e exibições - Visão geral.

Neste tutorial, você cria um banco de dados denominado tasty_bytes_sample_data, um esquema denominado raw_pos e uma tabela denominada menu.

Para criar o banco de dados, o esquema e a tabela, faça o seguinte:

  1. Na planilha aberta, coloque o cursor na linha CREATE OR REPLACE DATABASE e selecione Run.

    CREATE OR REPLACE DATABASE tasty_bytes_sample_data;
    
    Copy
  2. Coloque o cursor na linha CREATE OR REPLACE SCHEMA e selecione Run.

    CREATE OR REPLACE SCHEMA tasty_bytes_sample_data.raw_pos;
    
    Copy
  3. Coloque o cursor nas linhas CREATE OR REPLACE TABLE e selecione Run.

    CREATE OR REPLACE TABLE tasty_bytes_sample_data.raw_pos.menu
    (
        menu_id NUMBER(19,0),
        menu_type_id NUMBER(38,0),
        menu_type VARCHAR(16777216),
        truck_brand_name VARCHAR(16777216),
        menu_item_id NUMBER(38,0),
        menu_item_name VARCHAR(16777216),
        item_category VARCHAR(16777216),
        item_subcategory VARCHAR(16777216),
        cost_of_goods_usd NUMBER(38,4),
        sale_price_usd NUMBER(38,4),
        menu_item_health_metrics_obj VARIANT
    );
    
    Copy
  4. Para confirmar que a tabela foi criada com sucesso, coloque o cursor na linha SELECT e selecione Run.

    SELECT * FROM tasty_bytes_sample_data.raw_pos.menu;
    
    Copy

    Sua saída mostra as colunas da tabela que você criou. Neste ponto do tutorial, a tabela não possui nenhuma linha.

Etapa 5. Criação de um estágio e carregamento dos dados

Um estágio é um local que contém arquivos de dados para carregar em um banco de dados Snowflake. Este tutorial cria um estágio que carrega dados de um bucket S3 do Amazon. Este tutorial usa um bucket existente com um arquivo CSV que contém os dados. Você carrega os dados deste arquivo CSV na tabela criada anteriormente. Para obter mais informações, consulte Carregamento em massa a partir do Amazon S3.

Para criar um estágio, faça o seguinte:

  1. Na planilha aberta, coloque o cursor nas linhas CREATE OR REPLACE STAGE e selecione Run.

    CREATE OR REPLACE STAGE tasty_bytes_sample_data.public.blob_stage
    url = 's3://sfquickstarts/tastybytes/'
    file_format = (type = csv);
    
    Copy
  2. Para confirmar que o estágio foi criado com sucesso, coloque o cursor na linha LIST e selecione Run.

    LIST @tasty_bytes_sample_data.public.blob_stage/raw_pos/menu/;
    
    Copy

    Seu resultado é semelhante à imagem a seguir.

    Saída da tabela com as seguintes colunas: nome, tamanho, md5, última_modificação. Uma linha mostra os detalhes do estágio.
  3. Para carregar os dados na tabela, coloque o cursor nas linhas COPY INTO e selecione Run.

    COPY INTO tasty_bytes_sample_data.raw_pos.menu
    FROM @tasty_bytes_sample_data.public.blob_stage/raw_pos/menu/;
    
    Copy

Etapa 6. Consulta de dados

Agora que os dados foram carregados, você pode executar consultas na tabela menu.

Para executar uma consulta na planilha aberta, selecione a linha ou linhas do comando SELECT e selecione Run.

Por exemplo, para retornar o número de linhas da tabela, execute a seguinte consulta:

SELECT COUNT(*) AS row_count FROM tasty_bytes_sample_data.raw_pos.menu;
Copy

Seu resultado é semelhante à imagem a seguir.

Saída da tabela com a seguinte coluna: ROW_COUNT. Uma linha com o seguinte valor: 100.

Execute esta consulta para retornar as dez primeiras linhas da tabela:

SELECT TOP 10 * FROM tasty_bytes_sample_data.raw_pos.menu;
Copy

Seu resultado é semelhante à imagem a seguir.

Saída da tabela com as seguintes colunas: MENU_ID, MENU_TYPE_ID, MENU_TYPE, TRUCK_BRAND_NAME, MENU_ITEM_ID, MENU_ITEM_NAME. A primeira linha possui os seguintes valores: 10001, 1, Sorvete, Ponto de congelamento, 10, Limonada.

Para obter mais informações sobre como executar uma consulta que retorna o número especificado de linhas, consulte TOP <n>.

Você pode executar outras consultas na planilha para explorar os dados na tabela menu.

Etapa 7. Limpeza, resumo e recursos adicionais

Parabéns! Você concluiu com êxito este tutorial para contas de avaliação.

Reserve alguns minutos para ver um pequeno resumo e os pontos principais abordados neste tutorial. Considere fazer uma limpeza descartando todos os objetos criados neste tutorial. Saiba mais revisando outros tópicos na documentação do Snowflake.

Limpeza dos objetos do tutorial (opcional)

Se os objetos criados neste tutorial não forem mais necessários, você poderá removê-los do sistema com os comandos DROP <objeto>. Para remover o banco de dados que você criou, execute o seguinte comando:

DROP DATABASE IF EXISTS tasty_bytes_sample_data;
Copy

Resumo e pontos principais

Em resumo, você usou uma planilha pré-carregada na Snowsight para concluir as seguintes etapas:

  1. Defina a função e o contexto do warehouse.

  2. Criar um banco de dados, esquema e tabela.

  3. Crie um estágio e carregue os dados do estágio no banco de dados.

  4. Consultar os dados.

Aqui estão alguns pontos importantes a serem lembrados sobre o carregamento e a consulta de dados:

  • Você precisa das permissões necessárias para criar e gerenciar objetos na sua conta. Neste tutorial, você usa a função de sistema ACCOUNTADMIN para esses privilégios.

    Esta função normalmente não é usada para criar objetos. Em vez disso, recomendamos a criação de uma hierarquia de funções alinhadas com as funções de negócios em sua organização. Para obter mais informações, consulte Uso da função ACCOUNTADMIN.

  • Você precisa de um warehouse para os recursos necessários para criar e gerenciar objetos e executar comandos SQL. Este tutorial usa o warehouse compute_wh incluído em sua conta de avaliação.

  • Você criou um banco de dados para armazenar os dados e um esquema para agrupar logicamente os objetos do banco de dados.

  • Você criou um estágio para carregar dados de um arquivo CSV.

  • Depois que os dados foram carregados em seu banco de dados, você os consultou usando instruções SELECT.

Qual é o próximo passo?

Continue aprendendo sobre o Snowflake com os seguintes recursos: