Database
 sql >> Base de Dados >  >> RDS >> Database

Seja inflamado pelo Apache Spark – Parte 2


Obrigado pelo seu tempo; Eu definitivamente tento valorizar o seu. Na parte 1 - discutimos sobre bibliotecas Apache Spark, componentes Spark como Driver, DAG Scheduler, Task Scheduler e Worker. Agora, na Parte 2, discutiremos os conceitos básicos do Spark, como conjuntos de dados distribuídos resilientes, variáveis ​​compartilhadas, SparkContext, transformações, ação e vantagens de usar o Spark junto com exemplos e quando usar o Spark.

RDD – Conjuntos de dados distribuídos resilientes


Eles são coleções de elementos serializáveis ​​e tal coleção pode ser particionada, caso em que é armazenada em vários nós.

Pode residir na memória ou no disco.

O Spark usa RDD para reduzir E/S e manter os dados processados ​​na memória

O RDD ajuda a tolerar falhas de nó e não precisa reiniciar todo o processo ou computação

Normalmente, ele é criado a partir do formato de entrada do Hadoop ou da transformação aplicada em RDDs existentes.

RDDs armazenam sua linhagem de dados; se os dados forem perdidos, o Spark reproduza a linhagem para reconstruir os RDDs perdidos.

RDDs são imutáveis.

Variáveis ​​compartilhadas


O Spark possui dois tipos de variáveis ​​que permitem compartilhar informações entre os nós de execução.

Duas variáveis ​​são variáveis ​​de transmissão e de acumulador.

As variáveis ​​de transmissão são todas enviadas para os nós de execução remota, semelhantes aos objetos de configuração do MapReduce.

Os acumuladores também são enviados para nós de execução remota, com a limitação de que podemos adicionar apenas as variáveis ​​do acumulador, semelhante aos contadores MapReduce.

Contexto do Spark


É um objeto que representa a conexão com um cluster Spark.

Ele é usado para criar RDDs, transmitir dados e inicializar acumuladores.

Transformações


São funções que pegam um RDD e retornam outro.

As transformações nunca modificarão sua entrada, apenas retornarão o RDD modificado.

É sempre preguiçoso, então eles não computam seus resultados. Em vez de chamar uma função de transformação, apenas cria um novo RDD.

Todo o conjunto de transformações acima mencionadas é executado quando uma ação é chamada.

Existem muitas transformações no Spark – map(), filter(), KeyBy(), Join(), groupByKey(), sort().

 Ação


Ações são métodos que recebem um RDD e executam cálculos e retornam o resultado para o aplicativo do driver.

A ação aciona o cálculo das transformações, e os resultados podem ser uma coleção, valores na tela, valores salvos em arquivo.

A ação nunca retornará um RDD.

Benefícios

  • Simplicidade
  • Versatilidade
  • E/S de disco reduzida
  • Armazenamento
  • Multilíngua
  • Independência do gerente de recursos
  • Shell interativo (REPL)

O Spark, como outras ferramentas de big data, é poderoso, capaz e adequado para enfrentar uma série de desafios de análise e big data.

Este artigo apareceu originalmente aqui. Republicado com permissão. Envie suas reclamações de direitos autorais aqui.