# Transferindo dados para um lakehouse

Você pode transferir dados para um lakehouse de dados do Snowflake. Isso envolve a transferência dos dados da fonte de dados para o armazenamento de arquivos em nuvem que é gerenciado pela plataforma de dados.

A aterrisagem de dados em um lakehouse não envolve o uso dispendioso de um warehouse durante o desembarque dos dados, em comparação com o desembarque regular em um data warehouse. Isso permite que você pouse em alta frequência e consuma em menor frequência conforme a necessidade. Você também pode compartilhar dados com outras plataformas com mais facilidade. Você pode sincronizar tabelas do Iceberg com o Snowflake Open Catalog para habilitar a interoperabilidade com outras ferramentas, como o Apache Spark.

Os dados de pouso em um lakehouse só estão disponíveis em projetos com Snowflake como plataforma de dados.

## Preparações

* Se você quiser sincronizar tabelas Iceberg com o Snowflake Open Catalog, precisará configurar uma integração de catálogo na sua instância do Snowflake. O nome dessa integração é necessário ao criar a tarefa. Para obter mais informações, consulte [CRIAR INTEGRAÇÃO DE CATÁLOGOS (Snowflake Open Catalog)](https://docs.snowflake.com/en/sql-reference/sql/create-catalog-integration-open-catalog).

* Embora você possa configurar suas configurações de conexão de origem e destino no assistente de configuração de tarefas, para simplificar o procedimento de configuração, é recomendável fazer isso antes de criar a tarefa.

## Criando uma tarefa de aterrisagem do lake

1. Crie um projeto e selecione Pipeline de dados em Caso de uso.

2. Selecione Snowflake em Plataforma de dados e configure uma conexão com o data warehouse.

   Para obter mais informações sobre as configurações do destino do Snowflake, consulte [Snowflake](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/snowflake-target.htm).

3. Selecione Armazenamento em nuvem em Destino de aterrisagem.

4. Configure uma área de preparação em Conexão de armazenamento em nuvem.

   Você pode usar os seguintes tipos de conexões:

   * [Amazon S3](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/aws-s3-target.htm)

   * [Azure Data Lake Storage](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/adls-target.htm)

   * [Google Cloud Storage](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/TargetConnections/google-storage-target.htm)

5. Defina o nome da Integração de armazenamento do Snowflake. Para obter mais informações, consulte a documentação do Snowflake para a área de armazenamento selecionada.

6. Selecione o tipo de tabela a ser criado por padrão para as tarefas de Armazenamento, Transformação e Datamart. Essa configuração pode ser alterada posteriormente nas configurações do projeto. Você também pode definir o tipo de tabela para cada tarefa individual no projeto.

   * Tabelas do Snowflake

   * Tabelas Iceberg gerenciadas pelo Snowflake

     Neste caso, você deve definir o nome padrão do volume externo em Volume externo do Snowflake.

     Nota informativaAs tabelas do Iceberg herdarão a política de serialização de armazenamento definida no nível de esquema, banco de dados ou conta. Isso pode afetar a interoperabilidade com outros produtos que leem tabelas diretamente pelo Snowflake.

7. Clique em Criar para criar o projeto.

Quando você integra dados ou cria uma tarefa de aterrisagem no projeto, é criada uma tarefa de Aterrisagem no lake em vez de uma tarefa de Aterrisagem. As tarefas de Aterrisagem no lake operam e se comportam principalmente como tarefas de Aterrisagem, exceto pelo fato de que elas transferem dados para o armazenamento em nuvem. Para obter mais informações, consulte [Aterrissagem de dados de fontes de dados](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Landing/Landing-data-data-sources.htm).

Todos os arquivos são transferidos no formato CSV. A tarefa de armazenamento que consome a tarefa de aterrissagem garantirá que as tabelas externas sejam atualizadas após a atualização dos dados de aterrissagem.

## Excluindo uma tarefa

Você pode excluir a tarefa de dados se ela não estiver em execução e não houver dependências para tarefas downstream no mesmo projeto.

* Na exibição Projeto de pipeline do projeto, clique em the Mais icon em uma tarefa e selecione Excluir.

Artefatos (arquivos) criados pela tarefa não serão excluídos.

## Exibindo informações da tarefa

Clique em the Informações icon na barra de menu para visualizar informações da tarefa, como:

* Proprietário

* Espaço

* Plataforma de dados

* ID do projeto

* ID de tempo de execução da tarefa de dados

## Configurações

Para obter mais informações sobre as configurações de tarefas, consulte [Configurações de aterrisagem em um data lake](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Landing/Lake-Landing-settings.htm).

## Limitações

* Não é possível alterar o caminho de uma tabela depois que ela foi criada. Isso inclui renomear a tabela.

* Se as tabelas de aterrissagem forem usadas como tabelas externas, as visualizações ao vivo do armazenamento serão desabilitadas.

* Ao sincronizar tabelas com o Snowflake Open Catalog, as tabelas de esquema interno são sincronizadas, e não as visualizações geradas no esquema de tarefa de dados. Essa limitação poderá ser removida no futuro. Para obter mais informações sobre tabelas de esquema interno, consulte [Tabelas](https://help.qlik.com/pt-BR/cloud-services/Subsystems/Hub/Content/Sense_Hub/DataIntegration/Storage/dataset-tables.htm#Tables).

* As colunas de origem do tipo CLOB e BLOB serão definidas como anuláveis por padrão, mesmo que estejam marcadas como não anuláveis na origem. Você pode alterá-lo para ser não nulo, mas precisará adicionar uma expressão para adicionar um valor não nulo caso ele chegue como nulo da fonte. Isso pode ocorrer em registros excluídos.