Grazie per il tuo tempo; Cerco sicuramente di valorizzare il tuo. Nella parte 1 - abbiamo discusso delle librerie Apache Spark, dei componenti Spark come Driver, DAG Scheduler, Task Scheduler e Worker. Ora, nella parte 2, discuteremo dei concetti di base di Spark come set di dati distribuiti resilienti, variabili condivise, SparkContext, trasformazioni, azione e vantaggi dell'utilizzo di Spark insieme a esempi e quando utilizzare Spark.
RDD:set di dati distribuiti resilienti
Sono raccolte di elementi serializzabili e tale raccolta può essere partizionata, nel qual caso viene archiviata in più nodi.
Può risiedere in memoria o su disco.
Spark utilizza RDD per ridurre l'I/O e mantenere in memoria i dati elaborati
RDD aiuta a tollerare i guasti dei nodi e non è necessario riavviare l'intero processo o l'elaborazione
In genere viene creato dal formato di input Hadoop o dalla trasformazione applicata su RDD esistenti.
Gli RDD memorizzano la sua linea di dati; se i dati vengono persi, Spark riproduce il lignaggio per ricostruire gli RDD persi.
Gli RDD sono immutabili.
Variabili condivise
Spark ha due tipi di variabili che consentono la condivisione di informazioni tra i nodi di esecuzione.
Due variabili sono le variabili broadcast e accumulatore.
Le variabili di trasmissione vengono tutte inviate ai nodi di esecuzione remoti, in modo simile agli oggetti di configurazione di MapReduce.
Gli accumulatori vengono tutti inviati anche a nodi di esecuzione remoti, con la limitazione che possiamo aggiungere solo alle variabili dell'accumulatore, in modo simile ai contatori MapReduce.
Contesto scintillante
È un oggetto che rappresenta la connessione a un cluster Spark.
Viene utilizzato per creare RDD, trasmettere dati e inizializzare accumulatori.
Trasformazioni
Sono funzioni che prendono un RDD e ne restituiscono un altro.
Le trasformazioni non modificheranno mai il loro input, restituiscono solo l'RDD modificato.
È sempre pigro, quindi non calcolano i risultati. Invece di chiamare una funzione di trasformazione crea solo un nuovo RDD.
L'intero insieme delle suddette trasformazioni viene eseguito quando viene chiamata un'azione.
Ci sono molte trasformazioni in Spark:map(), filter(), KeyBy(), Join(), groupByKey(), sort().
Azione
Le azioni sono metodi che accettano un RDD ed eseguono calcoli e restituiscono il risultato all'applicazione del driver.
L'azione attiva il calcolo delle trasformazioni e i risultati possono essere una raccolta, valori sullo schermo, valori salvati su file.
L'azione non restituirà mai un RDD.
Vantaggi
- Semplicità
- Versatilità
- I/O disco ridotto
- Stoccaggio
- Multilingua
- Indipendenza del gestore delle risorse
- Shell interattiva (REPL)
Spark, come altri strumenti per big data, è potente, capace e adatto ad affrontare una serie di sfide di analisi e big data.
Questo articolo è apparso originariamente qui. Ripubblicato con autorizzazione. Invia qui i tuoi reclami sul copyright.