Partilhar via


Apache Spark no Azure Databricks

O Apache Spark está no coração da Plataforma de Inteligência de Dados do Azure Databricks e é a tecnologia que alimenta clusters de computação e armazéns SQL. O Azure Databricks é uma plataforma otimizada para o Apache Spark que fornece uma plataforma eficiente e simples para executar cargas de trabalho do Apache Spark.

Qual é a relação do Apache Spark com o Azure Databricks?

A empresa Databricks foi fundada pelos criadores originais do Apache Spark. Como um projeto de software de código aberto, o Apache Spark tem colaboradores de muitas empresas líderes, incluindo Databricks.

A Databricks continua a desenvolver e lançar recursos para o Apache Spark. O Databricks Runtime, que alimenta o Azure Databricks, inclui otimizações adicionais e recursos proprietários que se baseiam e estendem o Apache Spark, incluindo Photon, uma camada de execução otimizada que pode ser usada em conjunto com o Spark. O Databricks Photon foi projetado para trabalhar e melhorar o desempenho das cargas de trabalho do Apache Spark. O Photon melhora o desempenho do Spark vetorizando consultas e outras operações, permitindo uma execução mais rápida de operações de API SQL e DataFrame.

Como o Databricks é otimizado para o Apache Spark?

No Apache Spark, todas as operações são definidas como transformações ou ações.

  • Transformações: adicione alguma lógica de processamento ao plano. Os exemplos incluem leitura de dados, junções, agregações e conversão de tipos.
  • Ações: acionar a lógica de processamento para avaliar e produzir um resultado. Os exemplos incluem gravações, exibição ou visualização de resultados, cache manual ou obtenção da contagem de linhas.

O Apache Spark usa um modelo de execução preguiçoso , o que significa que nenhuma das lógicas definidas por uma coleção de operações é avaliada até que uma ação seja acionada. Para evitar uma avaliação desnecessária da lógica, use apenas ações para salvar os resultados em uma tabela de destino.

Como as ações representam um gargalo de processamento para otimizar a lógica, o Azure Databricks adicionou várias otimizações além daquelas já presentes no Apache Spark para garantir a execução ideal da lógica. Essas otimizações consideram todas as transformações desencadeadas por uma determinada ação de uma só vez e encontram o plano ideal com base no layout físico dos dados. O armazenamento manual em cache de dados ou o retorno de resultados de visualização em pipelines de produção pode interromper essas otimizações e levar a aumentos no custo e na latência.

Como funciona o Apache Spark no Azure Databricks?

Quando você implanta um cluster de computação ou um SQL warehouse no Azure Databricks, o Apache Spark é configurado e implantado em máquinas virtuais. Você não precisa configurar ou inicializar um contexto do Spark ou uma sessão do Spark, pois eles são gerenciados para você pelo Azure Databricks.

Posso usar o Azure Databricks sem usar o Apache Spark?

Yes. O Azure Databricks dá suporte a uma variedade de cargas de trabalho e inclui bibliotecas de código aberto no Databricks Runtime. O Databricks SQL usa Photon sob o capô, mas os usuários finais podem usar a sintaxe do Spark SQL para criar e consultar objetos de banco de dados com Photon.

O Databricks Runtime for Machine Learning é otimizado para cargas de trabalho de ML e muitos cientistas de dados usam bibliotecas primárias de código aberto como TensorFlow e SciKit Learn enquanto trabalham no Azure Databricks. Você pode usar trabalhos para agendar cargas de trabalho arbitrárias em relação a recursos de computação implantados e gerenciados pelo Azure Databricks.

Por que usar o Apache Spark no Azure Databricks?

A plataforma Databricks fornece um ambiente seguro e colaborativo para desenvolver e implantar soluções empresariais que se adaptam ao seu negócio. Os funcionários da Databricks incluem muitos dos mantenedores e usuários do Apache Spark mais experientes do mundo. A empresa desenvolve e lança continuamente novas otimizações para garantir que os usuários possam acessar o ambiente mais rápido para executar o Apache Spark.

Como posso saber mais sobre como usar o Apache Spark no Azure Databricks?

Para começar a usar o Apache Spark no Azure Databricks, mergulhe direto! O tutorial do Apache Spark DataFrames orienta o carregamento e a transformação de dados em Python, R ou Scala. Consulte Tutorial: Carregar e transformar dados usando o Apache Spark DataFrames. Para obter outros guias e links para informações adicionais, consulte Apache Spark no Azure Databricks.

Para obter informações adicionais sobre o suporte às linguagens Python, R e Scala no Spark, consulte PySpark no Azure Databricks, sparklyr e Azure Databricks para desenvolvedores do Scala, bem como em Referência para APIs do Apache Spark.