Criar uma tabela DeltaLake
Por padrão, a tabela Delta Lake já deve existir no armazenamento S3, GCP ou Azure, e os comandos abaixo se conectam a ela sem definições de colunas DDL. Comallow_delta_lake_create_table = 1, um CREATE TABLE com colunas explícitas em um local que não tenha _delta_log cria uma nova tabela Delta Lake gravando o commit inicial por meio de delta-kernel-rs (a criação de uma tabela particionada ainda não é compatível) e, dentro de um banco de dados Unity DataLakeCatalog, a tabela também é registrada no catálogo.
- S3
- GCP
- Azure
SintaxeParâmetros do motorUsando coleções nomeadas:
url— URL do bucket com o caminho para a tabela Delta Lake existente.aws_access_key_id,aws_secret_access_key- Credenciais de longo prazo para o usuário da conta AWS. Você pode usá-las para autenticar suas solicitações. O parâmetro é opcional. Se as credenciais não forem especificadas, elas serão obtidas do arquivo de configuração.extra_credentials- Opcional. Usado para informar umrole_arnpara acesso baseado em função no ClickHouse Cloud. Consulte Secure S3 para ver as etapas de configuração.
Grave dados usando uma tabela DeltaLake
Depois de criar uma tabela usando o motor de tabela DeltaLake, você pode inserir dados nela com:SET allow_delta_lake_writes = 1; (disponível a partir da versão 26.7; em versões anteriores, use SET allow_experimental_delta_lake_writes = 1;).
A gravação usando o motor de tabela é compatível apenas por meio do delta kernel.
As gravações funcionam com S3 e GCS, e com o Azure a partir da versão 26.9.
A autenticação por Workload Identity do Azure (
extra_credentials(client_id = ..., tenant_id = ...)) não é compatível com o delta kernel.Cache de dados
O motor de tabela e a função de tabelaDeltaLake são compatíveis com cache de dados, assim como os armazenamentos S3, AzureBlobStorage e HDFS. Consulte “motor de tabela S3” para mais detalhes.