O Que É Delta Lake?
Deslize para mostrar o menu
Delta Lake é uma camada de armazenamento open-source que traz confiabilidade para data lakes. Oferece transações ACID, gerenciamento escalável de metadados e unifica o processamento de dados em streaming e em lote. No Databricks, Delta é o formato padrão para todas as tabelas.
Se arquivos tradicionais são o problema, Delta Lake é a solução. Quando você salva seus dados de diamonds como uma tabela Delta em workspace.workshop.diamonds, ela deixa de ser apenas um arquivo em disco — torna-se uma tabela "inteligente".
Delta Lake funciona combinando os arquivos de dados padrão (Parquet) com um Transaction Log oculto.
1. Transações ACID
Este é o núcleo da confiabilidade do Delta. ACID significa Atomicity, Consistency, Isolation, and Durability.
Em termos simples: Suas operações de dados são "tudo ou nada". Se você estiver atualizando 50.000 linhas na tabela diamonds e o cluster falhar na linha 49.999, o Delta desfaz toda a alteração. Você nunca ficará com uma tabela parcialmente gravada ou corrompida.
2. O Log de Transações (O "Cérebro")
Cada vez que você adiciona, exclui ou modifica dados na sua tabela diamonds, o Delta registra essa ação em um livro central chamado Delta Log.
Quando uma consulta é executada, o Databricks não verifica todos os arquivos na pasta — ele consulta primeiro o Log para identificar quais arquivos são válidos e relevantes. Isso torna a busca em milhões de linhas extremamente rápida.
3. Aplicação e Evolução de Esquema
Delta Lake atua como um guardião — rigoroso e flexível quando necessário.
- Aplicação: se houver tentativa de inserir um registro de diamante onde "Price" é uma string em vez de um número, o Delta rejeita a gravação e gera um erro. Isso mantém os dados limpos;
- Evolução: se houver necessidade legítima de adicionar uma nova coluna (como "Store_Location"), o Delta permite evoluir o esquema com segurança, sem reescrever todo o conjunto histórico de dados.
4. Controle de Versão e Viagem no Tempo
Como toda alteração é registrada no Log de Transações, o Delta Lake mantém o histórico de como a tabela estava em cada momento.
Isso é chamado de Viagem no Tempo. Se dados forem excluídos acidentalmente de workspace.workshop.diamonds, basta instruir o Databricks a "visualizar a tabela como estava há 10 minutos" e restaurar os dados ausentes.
5. Padrões Abertos
Embora o Databricks tenha criado o Delta Lake, ele é um formato open-source. Isso significa que seus dados não ficam "presos" a um fornecedor específico — você obtém o desempenho de um banco de dados de alto nível com a flexibilidade do armazenamento em nuvem open-source.
1. O que o "Transaction Log" faz no Delta Lake?
2. O que acontece se uma operação de "Write" em uma tabela Delta falhar no meio do processo?
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo