Pular para o conteúdo principal

O que é o Delta Lake?

Delta Lake é a camada de armazenamento otimizada que fornece a base para as tabelas em um lakehouse em Databricks. O Delta Lake é um software de código aberto que amplia os arquivos de dados Parquet com um log de transações baseado em arquivo para transações ACID e manipulação de metadados dimensionável. Delta Lake é totalmente compatível com o site Apache Spark APIs, e foi desenvolvido para uma forte integração com a transmissão estruturada, permitindo que o senhor utilize facilmente uma única cópia de dados para operações de lotes e transmissão e proporcionando processamento incremental em escala.

Delta Lake é o formato default para todas as operações em Databricks. A menos que especificado de outra forma, todas as tabelas em Databricks são tabelas Delta. A Databricks desenvolveu originalmente o protocolo Delta Lake e continua a contribuir ativamente com o projeto de código aberto. Muitas das otimizações e produtos da plataforma Databricks se baseiam nas garantias fornecidas por Apache Spark e Delta Lake. Para obter informações sobre otimizações em Databricks, consulte Recomendações de otimização em Databricks.

Para obter informações de referência sobre Delta Lake SQL comando, consulte Delta Lake statements.

O log de transações do Delta Lake tem um protocolo aberto bem definido que pode ser usado por qualquer sistema para ler o log. Consulte Protocolo de log de transações delta.

Como começar a usar o Delta Lake

Todas as tabelas em Databricks são tabelas Delta por default. Se o senhor estiver usando Apache Spark DataFrames ou SQL, o senhor obtém todos os benefícios do Delta Lake simplesmente salvando seus dados no lakehouse com as configurações do default.

Para obter exemplos de operações básicas do Delta Lake, como criação de tabelas, leitura, gravação e atualização de dados, consulte o tutorial: Delta Lake.

A Databricks tem muitas recomendações de práticas recomendadas para o Delta Lake.

Conversão e ingestão de dados para o Delta Lake

O Databricks oferece diversos produtos para acelerar e simplificar o carregamento de dados em seu lakehouse.

Para obter uma lista completa das opções de ingestão, consulte Ingestão de dados em um lakehouse da Databricks.

Atualização e modificação das tabelas do Delta Lake

As transações atômicas com Delta Lake fornecem muitas opções para atualizar dados e metadados. O Databricks recomenda que você evite a interação direta com os arquivos de dados e os arquivos de registro de transações nos diretórios de arquivos do Delta Lake para evitar a corrupção de suas tabelas.

Cargas de trabalho incrementais e de transmissão no Delta Lake

Delta Lake é otimizado para transmissão estruturada em Databricks. A DLT amplia os recursos nativos com implementação de infraestrutura simplificada, dimensionamento aprimorado e dependências de dados gerenciais.

Consultando versões anteriores de uma tabela

Cada gravação em uma tabela Delta cria uma nova versão da tabela. O senhor pode usar o log de transações para analisar as modificações na tabela e consultar versões anteriores da tabela. Consulte Work with Delta Lake table história.

Aprimoramentos no esquema do Delta Lake

O Delta Lake valida o esquema durante a gravação, assegurando que todos os dados gravados em uma tabela estejam em conformidade com os requisitos que você definiu.

Gerenciando arquivos e indexando dados com o Delta Lake

O Databricks define diversos parâmetros padrão para o Delta Lake que influenciam o tamanho dos arquivos de dados e a quantidade de versões de tabela mantidas no histórico O Delta Lake usa uma combinação de análise de metadados e layout de dados físicos para reduzir o número de arquivos verificados para atender a qualquer consulta.

Configuração e revisão das configurações do Delta Lake

O Databricks armazena todos os dados e metadados das tabelas do Delta Lake no armazenamento de objetos na nuvem. Muitas configurações podem ser definidas na tabela ou na sessão do Spark. Você pode revisar os detalhes da tabela Delta para descobrir quais opções estão configuradas.

pipeline de dados usando Delta Lake e DLT

A Databricks incentiva os usuários a utilizar uma arquitetura de medalhão para processar dados por meio de uma série de tabelas à medida que os dados são limpos e enriquecidos. A DLT simplifica as cargas de trabalho de ETL por meio da execução otimizada e da implementação e dimensionamento automatizados da infraestrutura.

Delta Lake compatibilidade de recursos

Nem todos os recursos do Delta Lake estão em todas as versões do Databricks Runtime. Para obter informações sobre o Delta Lake versionamento, consulte Como o Databricks gerencia a compatibilidade do Delta Lake recurso?

Documentação da API do Delta Lake

Para a maioria das operações de leitura e gravação em tabelas Delta, o senhor pode usar as APIs Spark SQL ou Apache Spark DataFrame.

Para instruções SQL específicas do Delta Lake, consulte Instruções do Delta Lake.

A Databricks garante a compatibilidade binária com as APIs do Delta Lake no Databricks Runtime. Para view o pacote da versão Delta Lake API em cada versão Databricks Runtime, consulte a seção Ambiente do sistema nos artigos relevantes nas Databricks Runtime notas sobre a versão. Para obter a documentação sobre as APIs do Delta Lake para Python, Scala e Java, consulte a documentação do OSS Delta Lake.