Azure Data Factory vs Databricks:

Uso:

O Azure Data Factory é uma ferramenta de serviço de integração de dados para executar processos de ETL e orquestrar movimentação de dados em escala, ele mapeia fluxos de dados usando Apache Spark Clusters.

Enquanto o Databricks usa uma arquitetura semelhante, porém ele fornece uma plataforma unificada e colaborativa para engenheiros de dados e cientistas de dados realizarem ETL e criarem modelos de aprendizagem de máquina com painéis de visualização. Embora ambos sejam capazes de realizar transformação de dados escalável, agregação de dados e tarefas de movimentação de dados, existem algumas diferenças fundamentais subjacentes entre ADF e Databricks, conforme mencionado abaixo:

Databricks usa Python, Spark, R, Java ou SQL para realizar atividades de Engenharia de Dados e Ciência de Dados usando notebooks. No entanto, o ADF fornece um recurso de arrastar e soltar para criar e manter pipelines de dados visualmente. Consiste em Interface Gráfica de Usuário (GUI) ferramentas que permitem a entrega de aplicativos a uma taxa mais alta.

Flexibilidade na codificação

Embora o ADF facilite o processo de pipeline ETL usando ferramentas GUI, os desenvolvedores têm menos flexibilidade, pois não podem modificar o código de back-end. Por outro lado, Databricks implementa uma abordagem programática que fornece a flexibilidade dos códigos de ajuste fino para otimizar o desempenho.

Processamento de Dados

As empresas geralmente fazem processamento em lote ou fluxo ao trabalhar com um grande volume de dados. Enquanto o lote lida com dados em massa, o streaming lida com a transmissão ao vivo (em tempo real) ou arquivar dados (menos de doze horas) com base nas aplicações. ADF e Databricks suportam opções de lote e streaming, mas o ADF não suporta transmissão ao vivo que pode ser tratado por stream analytics tambem. Por outro lado, O Databricks oferece suporte a opções de streaming ao vivo e de arquivo por meio da API Spark.

Os dataflows de mapeamento são transformações de dados visualmente projetadas no ADF. Permitem que os engenheiros de dados desenvolvam lógica de transformação de dados sem escrever código (low code). O resultado dos dataflows são executados como atividades nos pipelines do Azure Data Factory que usam clusters Apache Spark dimensionados. As atividades de fluxo de dados podem ser operacionalizadas usando recursos existentes de agendamento, controle, fluxo e monitoramento do ADF.

Os dataflows de mapeamento fornecem uma experiência totalmente visual sem necessidade de codificação. Os fluxos de dados são executados em clusters de execução gerenciados pelo ADF para processamento de dados em escala horizontal. O ADF lida com toda a tradução de código, otimização de caminho e execução de seus trabalhos de fluxo de dados.

O Databricks é baseado no Apache Spark e fornece computação em memória com suporte de linguagem para Scala, R, Python e SQL. A transformação/engenharia de dados pode ser feita em notebooks com instruções em diferentes linguagens. Isso torna essa tecnologia flexível para incluir análises avançadas e aprendizado de máquina como parte do processo de transformação de dados. Você também pode executar cada etapa do processo em um notebook, portanto, a depuração passo a passo é fácil. Você também poderá ver esse processo durante a execução do trabalho, por isso é fácil ver se o seu trabalho foi interrompido.

Os clusters de databricks do Azure podem ser configurados de várias maneiras, tanto em relação ao número quanto ao tipo de nós de computação. Gerenciar para definir o cluster correto é o estado da arte, mas você pode chegar bem perto, pois pode configurar seu cluster para dimensionar automaticamente dentro do limite definido, de acordo com a carga de trabalho. Ele também pode ser configurado para encerrar automaticamente quando estiver inativo por um determinado tempo. Quando usado com o ADF, o cluster será inicializado quando as atividades forem iniciadas. parâmetros podem ser enviados para dentro e para fora do ADF. O Databricks do Azure está intimamente conectado a outros serviços do Azure, Active Directory, Key Vault e opções de armazenamento de dados, como blob, armazenamento de data lake e SQL.

Conclusão

As empresas antecipam continuamente as crescentes demandas de Big Data Analytics para aproveitar novas oportunidades. Com o aumento dos aplicativos de nuvem, as organizações geralmente estão em um dilema ao escolher Azure Data Factory e Databricks. Se uma empresa deseja experimentar um pipeline ETL sem código para Integração de dados, fácil manutenção e maior produtividade ADF é melhor. Por outro lado, Databricks fornece uma plataforma Unified Analytics para integrar vários ecossistemas para relatórios de BI, Data Science e Machine Learning, embora ainda tenha bastante complexidade com a integração com outras ferramentas como o Azure Purview por exemplo. Conciliando os dois, o uso do Azure Data Factory é mais adequado para a movimentação e orquestração, enquanto a preparação e colaboração será mais bem atendida com o Databricks.

 

Fonte: Microsoft.