Curso Snowflake Database Structures and DML

  • DevOps | CI | CD | Kubernetes | Web3

Curso Snowflake Database Structures and DML

24 horas
Visão Geral

Este Curso Snowflake Database Structures and DML é ideal para analistas de dados, engenheiros de dados, desenvolvedores de ETL/ELT, DBAs e qualquer profissional que busca dominar as funcionalidades de estruturas de dados e manipulação de dados no Snowflake, o Data Cloud moderno. Do ponto de vista técnico, você aprenderá a criar e gerenciar bancos de dados, schemas, tabelas (incluindo variedades como tabelas temporárias, transientes e externas), views, e a aplicar as operações DML (Data Manipulation Language) essenciais para carregar, inserir, atualizar, deletar e mesclar dados. O curso focará nas particularidades e otimizações que o Snowflake oferece para lidar com grandes volumes de dados e diversos formatos (estruturados e semi-estruturados), garantindo que os participantes possam construir e manter pipelines de dados robustos e eficientes.

Curso Snowflake Database Structures and DML, o domínio das estruturas de dados e DML no Snowflake é uma habilidade crítica para empresas que utilizam esta plataforma para suas estratégias de dados e analytics. Ele permite que as organizações extraiam o máximo valor de seus dados, garantindo que as informações estejam organizadas, acessíveis e atualizadas para tomada de decisões. A proficiência nessas operações básicas, porém fundamentais, otimiza o desempenho de consultas, reduz custos de armazenamento e processamento e acelera o ciclo de vida dos dados, resultando em maior agilidade nos negócios e vantagem competitiva. Profissionais com essa expertise são indispensáveis para construir e manter uma fundação de dados sólida e escalável no ambiente cloud.

Objetivo

Ao final do Curso Snowflake: Database Structures and DML, você será capaz de:

  • Compreender a arquitetura de armazenamento do Snowflake e seus conceitos fundamentais.
  • Criar e gerenciar bancos de dados e schemas no Snowflake.
  • Projetar e criar diferentes tipos de tabelas (padrão, temporária, transiente, externa) e compreender suas aplicações.
  • Definir constraints (restrições) e compreender seu comportamento no Snowflake.
  • Criar e gerenciar views (visões) para simplificar consultas e controlar acesso.
  • Utilizar os comandos DML (INSERT, UPDATE, DELETE, MERGE) para manipular dados.
  • Realizar carga de dados eficientemente para tabelas Snowflake usando COPY INTO.
  • Trabalhar com dados semi-estruturados (JSON, XML, Avro, Parquet) e o tipo de dados VARIANT.
  • Entender e aplicar conceitos de Time Travel e Fail-safe para recuperação de dados.
  • Aplicar as melhores práticas para organização e manipulação de dados no Snowflake.
Publico Alvo
  • Analistas de Dados: Que precisam interagir e manipular dados diretamente no Snowflake.
  • Engenheiros de Dados: Envolvidos na criação de pipelines ETL/ELT e no gerenciamento de dados no Snowflake.
  • Desenvolvedores de BI/SQL: Que migrarão ou já trabalham com bases de dados no Snowflake.
  • DBAs (Administradores de Banco de Dados): Que buscam entender as particularidades do Snowflake em relação a bancos de dados tradicionais.
  • Qualquer profissional que precise compreender como os dados são armazenados e manipulados no Snowflake.
Pre-Requisitos
  • Conhecimento fundamental de SQL (SELECT, WHERE, GROUP BY, JOINs).
  • Noções básicas de conceitos de banco de dados (tabelas, colunas, chaves primárias/estrangeiras).
  • Familiaridade com conceitos de Cloud Computing é um diferencial, mas não obrigatório.
  • Acesso a uma conta Snowflake (pode ser uma conta trial gratuita) para a realização dos laboratórios.
Materiais
Inglês/Português/Lab Prático
Conteúdo Programatico

Módulo 1: Introdução ao Snowflake e Arquitetura de Armazenamento (4 horas)

  • 1.1. O Data Cloud Snowflake:
    • Visão geral da arquitetura multi-cluster, compartilhamento de dados e elasticidade.
    • Camadas da arquitetura: Cloud Services, Query Processing (Virtual Warehouses), Database Storage.
    • Conceitos de computação (Warehouses Virtuais) e armazenamento (micro-partições).
  • 1.2. Primeiros Passos com a Interface Snowflake (Snowsight):
    • Navegação na interface web do Snowsight.
    • Criação e gerenciamento de Worksheets (folhas de trabalho).
    • Contexto de sessão: USE DATABASE, USE SCHEMA, USE WAREHOUSE.
  • 1.3. Hierarquia de Objetos no Snowflake:
    • ACCOUNT -> DATABASE -> SCHEMA -> TABLE/VIEW/STAGE/etc.
    • Criação e gerenciamento de bancos de dados (CREATE DATABASE, ALTER DATABASE, DROP DATABASE).
    • Criação e gerenciamento de schemas (CREATE SCHEMA, ALTER SCHEMA, DROP SCHEMA).
    • Tipos de schemas: padrão e managed access.
  • Prática: Criar uma conta trial Snowflake. Explorar o Snowsight. Criar um novo banco de dados e múltiplos schemas, e configurar o contexto da sessão.

Módulo 2: Tabelas e Visões no Snowflake (4 horas)

  • 2.1. Criação e Propriedades de Tabelas Padrão:
    • Sintaxe CREATE TABLE: tipos de dados suportados no Snowflake (incluindo VARIANT, ARRAY, OBJECT).
    • Propriedades de tabela (COMMENT, DATA_RETENTION_TIME_IN_DAYS).
    • DEFAULT valores para colunas.
    • COLLATE para strings.
    • Compreendendo e aplicando constraints (PK, FK, UNIQUE, NOT NULL) e sua natureza não-enforced no Snowflake.
  • 2.2. Tipos Especiais de Tabelas:
    • Tabelas Temporárias (TEMPORARY TABLE): Uso e ciclo de vida.
    • Tabelas Transientes (TRANSIENT TABLE): Retenção de dados e custos.
    • Quando usar cada tipo de tabela.
  • 2.3. Tabelas Externas (EXTERNAL TABLE):
    • Conectando o Snowflake a dados em Object Storage (S3, Azure Blob, GCS).
    • Sintaxe CREATE EXTERNAL TABLE e opções de formato.
    • Refresh de tabelas externas.
  • 2.4. Views (Visões):
    • Criação de VIEWS para abstração de dados e segurança.
    • Secure Views: Protegendo a lógica da consulta e o acesso aos dados subjacentes.
    • Materialized Views: Conceito, benefícios (performance), limitações e gerenciamento.
  • Prática: Criar tabelas padrão com diferentes tipos de dados e constraints. Criar tabelas temporárias e transientes. Configurar uma tabela externa para um bucket de dados simulado. Criar views e secure views.

Módulo 3: Manipulação de Dados (DML) e Carregamento (4 horas)

  • 3.1. Operações DML Fundamentais:
    • INSERT INTO: Inserindo linhas de dados em tabelas.
    • UPDATE: Atualizando registros existentes.
    • DELETE: Excluindo registros de tabelas.
    • TRUNCATE TABLE: Limpeza rápida de tabelas.
  • 3.2. Comando MERGE:
    • Uso do MERGE para operações UPSERT (UPDATE ou INSERT).
    • Sincronizando dados de tabelas staging para tabelas de destino.
  • 3.3. Carregamento de Dados com COPY INTO:
    • O papel dos STAGES (estágios) internos e externos.
    • Sintaxe COPY INTO @<stage> e COPY INTO <table>.
    • Opções de formato de arquivo (CSV, JSON, Parquet, etc.).
    • Gerenciamento de erros no carregamento (ON_ERROR).
    • Carregamento incremental e idempotência.
  • 3.4. Trabalhando com Dados Semi-Estruturados:
    • O tipo de dados VARIANT.
    • Funções para parsing de JSON: PARSE_JSON, GET, GET_PATH, FLATTEN.
    • Consultando e manipulando dados dentro de colunas VARIANT.
  • Prática: Realizar operações INSERT, UPDATE, DELETE. Utilizar o MERGE para sincronizar dados. Carregar dados de arquivos para tabelas usando COPY INTO. Consultar e extrair dados de colunas VARIANT.

Módulo 4: Time Travel, Fail-safe e Boas Práticas (4 horas)

  • 4.1. Time Travel e Undrop:
    • Conceito de Time Travel no Snowflake: consultas a dados históricos.
    • Sintaxe AT e BEFORE para consultas pontuais no tempo.
    • Restaurando objetos (UNDROP DATABASE, UNDROP SCHEMA, UNDROP TABLE).
    • Configuração do DATA_RETENTION_TIME_IN_DAYS.
  • 4.2. Fail-safe:
    • Visão geral do Fail-safe do Snowflake para recuperação de desastres (além do Time Travel).
    • Como o Fail-safe garante a durabilidade dos dados.
  • 4.3. Clones Zero-Copy:
    • O que são clones zero-copy e seus benefícios (custo e velocidade).
    • Sintaxe CREATE ... CLONE.
    • Casos de uso para clones (desenvolvimento, teste, análise ad-hoc).
  • 4.4. Otimização e Boas Práticas em DML:
    • Considerações de performance para INSERT, UPDATE, DELETE em grandes volumes.
    • Uso eficiente de MERGE.
    • Organização de dados para otimização de consultas (clustering keys - conceitual).
    • Padrões de nomenclatura e documentação.
  • Prática: Utilizar o Time Travel para consultar dados em um ponto específico no tempo. Realizar um UNDROP de uma tabela. Criar um clone zero-copy de uma tabela para um ambiente de teste.
TENHO INTERESSE

Cursos Relacionados

Curso Terraform Deploying to Oracle Cloud Infrastructure

24 Horas

Ansible Overview of Ansible architecture

16h

Curso Node-RED para Integracao de Sistemas

32 horas Curso Pratico

Curso Node-RED com Dashboard e Monitoramento

32 horas Curso Pratico

Curso Node-RED para RPA Automacao Robotica

32 horas Curso Pratico

Curso Node-RED para DevOps e Automacao de Infraestrutura

32 horas Curso Pratico

Curso Node-RED com Cloud Azure, AWS, GCP

32 horas Curso Pratico