PySpark na Databricks

Este artigo descreve os fundamentos do PySpark, um Python API para Spark, em Databricks.

Databricks é construído sobre o Apache Sparkum mecanismo unified analytics para big data e machine learning. O PySpark ajuda o senhor a interagir com o Apache Spark usando a linguagem de programação Python, que é uma linguagem flexível e fácil de aprender, implementar e manter. Ele também oferece muitas opções de visualização de dados no Databricks. O PySpark combina o poder do Python e do Apache Spark.

APIs e biblioteca

Como em todos os APIs para Spark, o PySpark vem equipado com muitos APIs e biblioteca que habilitam e suportam funcionalidades avançadas, incluindo:

  • Processamento de dados estruturados com consultas relacionais com Spark SQL e DataFrames. O Spark SQL permite que o senhor misture consultas SQL com programas Spark. Com o Spark DataFrames, o senhor pode ler, gravar, transformar e analisar o uso de dados Python e SQL com eficiência, o que significa que está sempre aproveitando todo o potencial do Spark. Consulte PySpark Getting começar.

  • Processamento escalonável de transmissão com transmissão estruturada. O senhor pode expressar seu cálculo de transmissão da mesma forma que expressaria um cálculo de lotes em dados estáticos e o mecanismo Spark SQL o executa de forma incremental e contínua à medida que os dados de transmissão continuam a chegar. Consulte Visão geral da transmissão estruturada.

  • Estruturas de dados do Pandas e ferramentas de análise de dados que funcionam no Apache Spark com a API do Pandas no Spark. Pandas API em Spark permite que o senhor amplie a carga de trabalho de Pandas para qualquer tamanho, executando-a distribuída em vários nós, com uma única base de código que funciona com Pandas (testes, conjunto de dados menor) e com Spark (produção, conjunto de dados distribuído). Consulte API do Pandas em Visão geral do Spark.

  • Algoritmos de aprendizado de máquina com aprendizado de máquina (MLlib). MLlib é uma biblioteca dimensionável de aprendizado de máquina criada em Spark que fornece um conjunto uniforme de APIs que ajuda os usuários a criar e ajustar o pipeline prático de machine learning. Consulte a visão geral da biblioteca do aprendizado de máquina.

  • computação gráfica e gráfico-paralela com GraphX. GraphX introduz um novo multigrafo direcionado com propriedades associadas a cada vértice e borda e expõe operadores de computação gráfica, algoritmos e construtores para simplificar a tarefa analítica gráfica. Consulte Visão geral do GraphX.

DataFrames, transformações e avaliação preguiçosa

Apache Spark DataFrames são conjuntos de dados organizados em colunas nomeadas. São estruturas de dados de rótulo bidimensional com colunas de diferentes tipos. DataFrames fornecem um rico conjunto de funções que permitem que o senhor resolva problemas comuns de análise de dados de forma eficiente e facilitam a transformação de dados com métodos integrados para classificar, filtrar e agregar dados.

Duas categorias de operações de processamento de dados são fundamentais para o Apache Spark: transformações e ações. Uma ação operações retorna um valor, como count, first e collect. Uma operação de transformação, como filter ou groupBy, retorna um DataFrame, mas não é executada até que uma ação a acione. Isso é conhecido como avaliação preguiçosa. A avaliação preguiçosa também permite que o senhor encadeie várias operações porque o Spark trata a execução delas de forma diferida, em vez de executá-las imediatamente quando são definidas.

Spark tutorial

Além do guia Apache Spark tutorial que orienta o senhor no carregamento e na transformação do uso de dados DataFrames, a documentação doApache Spark também tem inícios rápidos e guias para o aprendizado do Spark, incluindo os artigos a seguir:

Referência do PySpark

A Databricks mantém sua própria versão das APIs do PySpark e a referência correspondente, que pode ser encontrada nestas seções: