Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este artigo fornece uma visão geral das opções para migrar pipelines de extração, transformação e carregamento (ETL) em execução em outros sistemas de dados para o Azure Databricks. Se você estiver migrando o código do Apache Spark, consulte Adaptar seu código existente do Apache Spark para o Azure Databricks.
Para obter informações gerais sobre como mudar de um data warehouse corporativo para um lakehouse, consulte Migrar seu data warehouse para o Databricks lakehouse. Para obter informações sobre como migrar do Parquet para o Delta Lake, consulte Migrar um data lake do Parquet para o Delta Lake.
Você pode executar pipelines do Hive no Azure Databricks?
A maioria das cargas de trabalho do Hive pode ser executada no Azure Databricks com refatoração mínima. A versão do Spark SQL suportada pelo Databricks Runtime permite muitas construções HiveQL. Consulte Compatibilidade do Apache Hive. O Azure Databricks inclui um metastore do Hive por padrão. A maioria das migrações do Hive precisa abordar algumas preocupações principais:
- O Hive SerDe precisa ser atualizado para usar codecs de arquivo nativos do Azure Databricks. (Altere DDL de
STORED ASparaUSINGpara usar o Azure Databricks SerDe.) - As UDFs do Hive devem ser instaladas em clusters como bibliotecas ou adaptadas para o Spark nativo. Como as UDFs do Hive já estão na JVM, elas podem fornecer desempenho suficiente para muitas cargas de trabalho. Consulte Considerações sobre desempenho.
- A estrutura de diretórios para tabelas deve ser alterada, pois o Azure Databricks usa partições de forma diferente do Hive. Consulte Quando particionar tabelas no Azure Databricks.
Se você optar por atualizar suas tabelas para o Delta Lake durante a migração inicial, várias instruções DDL e DML não serão suportadas. Estes são, entre outros:
ROWFORMATSERDEOUTPUTFORMATINPUTFORMATCOMPRESSIONSTORED ASANALYZE TABLE PARTITIONALTER TABLE [ADD|DROP] PARTITIONALTER TABLE RECOVER PARTITIONSALTER TABLE SET SERDEPROPERTIESCREATE TABLE LIKEINSERT OVERWRITE DIRECTORYLOAD DATA- Especificando partições de destino usando
PARTITION (part_spec)emTRUNCATE TABLE
Você pode executar pipelines de ETL SQL no Azure Databricks?
A migração de cargas de trabalho SQL de outros sistemas para o Azure Databricks geralmente requer muito pouca refatoração, dependendo da extensão em que os protocolos específicos do sistema foram usados no código-fonte. O Azure Databricks usa o Delta Lake como o formato de tabela padrão, portanto, as tabelas são criadas com garantias transacionais por padrão.
O Spark SQL é principalmente compatível com ANSI, mas algumas diferenças de comportamento podem existir. Consulte Como a plataforma de inteligência de dados Databricks é diferente de um data warehouse corporativo?.
Como os sistemas de dados tendem a configurar o acesso a dados externos de forma diferente, grande parte do trabalho de refatoração de pipelines ETL SQL pode estar configurando o acesso a essas fontes de dados e, em seguida, atualizando sua lógica para usar essas novas conexões. O Azure Databricks fornece opções para se conectar a muitas fontes de dados para ingestão.
Você pode executar pipelines de ETL do dbt no Azure Databricks?
O Azure Databricks fornece uma integração nativa com dbt, permitindo que você aproveite os scripts dbt existentes com muito pouca refatoração.
O Lakeflow Spark Declarative Pipelines fornece uma sintaxe SQL declarativa nativa do Databricks otimizada para criar, testar e implantar pipelines. Embora você possa aproveitar o dbt no Azure Databricks, uma leve refatoração de código para Lakeflow Spark Declarative Pipelines pode reduzir seu custo total para operar seus pipelines no Azure Databricks. Veja Lakeflow Spark Declarative Pipelines.
É possível migrar funções de nuvem sem servidor para o Azure Databricks?
A extensibilidade e versatilidade das funções de nuvem personalizadas sem servidor torna difícil fornecer uma recomendação comum, mas um dos casos de uso mais comuns para essas funções é esperar que arquivos ou dados apareçam em um local ou fila de mensagens e, em seguida, executar alguma ação como resultado. Embora o Azure Databricks não ofereça suporte a lógica complexa para acionar cargas de trabalho com base em condições de nuvem, você pode usar o Streaming Estruturado em conjunto com Trabalhos para processar dados incrementalmente.
Use o Auto Loader para ingestão otimizada de dados do armazenamento de objetos na nuvem. O streaming estruturado pode processar dados de fontes de streaming em tempo quase real.
Você pode executar sintaxe de outros sistemas de dados no Azure Databricks?
Os pipelines de ETL definidos em linguagens diferentes de SQL, Apache Spark ou Hive podem precisar ser fortemente refatorados antes de serem executados no Azure Databricks. O Azure Databricks tem experiência em ajudar os clientes a migrar da maioria dos sistemas de dados em uso atualmente e pode ter recursos disponíveis para impulsionar seus esforços de migração.