freeCodeCamp/guide/portuguese/data-science-tools/spark/index.md

3.0 KiB
Raw Blame History

title localeTitle
Spark Faísca

Faísca

O Spark é um sistema de computação de cluster rápido e geral para Big Data. Ele fornece APIs de alto nível em Scala, Java, Python e R e um mecanismo otimizado que suporta gráficos gerais de computação para análise de dados. Ele também suporta um conjunto avançado de ferramentas de nível superior, incluindo o Spark SQL para SQL e DataFrames, MLlib para aprendizado de máquina, GraphX para processamento de gráficos e Spark Streaming para processamento de fluxo.

Principais recursos

O Spark 2.0 possui muitos novos recursos:

  • Fonte de dados CSV nativo, com base no módulo spark-csv do Databricks
  • Gerenciamento de memória fora do heap para armazenamento em cache e execução em tempo de execução
  • Suporte ao balde de estilo colmeia
  • Estatísticas resumidas aproximadas usando esboços, incluindo quantil aproximado, filtro Bloom e esboço de contagem min.

Como é usado para Data Science

O Spark tornou-se uma ferramenta padrão na caixa de ferramentas de muitos cientistas de dados. Com sua flexibilidade nas opções de API, qualquer programador pode trabalhar com o Spark no idioma de sua preferência. Conforme observado por Cloudera , o Spark ganhou popularidade por vários motivos:

  • Sendo baseado em Scala, o Spark se incorpora em qualquer sistema operacional baseado em JVM, mas também pode ser usado interativamente em um REPL de uma maneira que pareça familiar aos usuários de R e Python.
  • Para programadores Java, o Scala ainda apresenta uma curva de aprendizado. Mas pelo menos, qualquer biblioteca Java pode ser usada dentro do Scala. A abstração RDD (Resilient Distributed DataSet) do Spark se assemelha à PCollection do Crunch, que provou ser uma abstração útil no Hadoop que já será familiar aos desenvolvedores do Crunch. (Crunch pode até ser usado em cima do Spark.)
  • O Spark imita a API e o estilo funcional das coleções do Scala, o que é um benefício para os desenvolvedores de Java e Scala, mas também um pouco familiar para os desenvolvedores que vêm do Python. O Scala também é uma opção atraente para a computação estatística.
  • A própria Spark e o Scala, por baixo, não são específicos da aprendizagem automática. Eles fornecem APIs que suportam tarefas relacionadas, como acesso a dados, ETL e integração. Assim como no Python, todo o pipeline de ciência de dados pode ser implementado dentro desse paradigma, não apenas o ajuste e a análise do modelo.
  • Código que é implementado no ambiente REPL pode ser usado principalmente como está em um contexto operacional.
  • As operações de dados são distribuídas de maneira transparente no cluster, mesmo quando você digita.

Mais Informações