Spark Avansati pentru Developeri

Spark Avansati pentru Developeri

Acest curs îi va ajuta pe cursanți să înțeleagă corect structura internă și funcționarea Apache Spark – Spark Core (RDD), Spark SQL, Spark Streaming și Spark Structured Streaming.
Cod: EAS-024
Durata: 28 ore

Descriere

Acest curs îi va ajuta pe cursanți să înțeleagă corect structura internă și funcționarea Apache Spark – Spark Core (RDD), Spark SQL, Spark Streaming și Spark Structured Streaming. Vom discuta despre mecanismele de rulare a componentelor clusterului Spark sub controlul diverșilor manageri de cluster, managementul alocării resurselor și mecanismele de operare a planificatorului. Se va concentra pe avantajele formatului Tungsten de vizualizare internă și al optimizatorului Catalyst.

Subiecte curs

1. Examinați caracteristicile Scala utilizate în cadrul Spark
2. Teorie:
1. var and val, val (x, x), lazy val, transient lazy val
2. Type și Type, (Nil, None, Null => null, Nothing, Unit => (), Any, AnyRef, AnyVal, String, interpolation
3. class, object (case), abstract class, trait
4. Funcția Scala, metode, lambda
5. Generic, ClassTag, covariant, contravariant, invariant position, F[_], *
6. Potrivirea modelului È™i construcÈ›ii if then else
7. Colectare mutabilă și imuabilă, Iterator, operație de colectare
8. Monads (Option, Either, Try, Future, ....), Try().recovery)
9. map, flatMap, foreach, pentru înÈ›elegere
10. Implicits, private[sql], package
11. Scala sbt, ansamblu
12. Encoder, Product
13. Scala libs pentru Spark: scopt, chimney, jsoniter

Modulul 1 – RDD

1. Teoria RDD api:
1. RDD care creează API: din matrice, din fișier. de la DS
2. Operațiuni de bază RDD: map, flatMap, filter, reduceByKey, sort
3. Librării de analiză temporală

2. Teoria RDD detalii:
1. Iterator + mapPartitions()
2. Calea de creare a RDD: compute() și getPartitions()
3. Partitii
4. Partitioner: Hash și Range
5. Dependențe: wide și narrow
6. Joins: inner, cogroup, join fără a amesteca
7. Plan de interogare

Modulul 2 - DataFrame & DataSet, Spark DSL și Spark SQL

1. Teoria DataFrame, DataSet API:
1. Crearea DataFrame: memorie din fișier (HDFS, S3, FS) (Avro, Orc, Parquet)
2. Spark DSL: Alăturați-vă operațiunilor de difuzare, grupate
3. Spark SQL: Funcții ferestre, partiții unice
4. Rezolvarea problemelor Scala UDF
5. Catalog Spark

2. Recreează codul folosind planuri
1. Catalyst Optimiser: Planuri logice și fizice
2. Codegen
3. Persist vs Cache vs Checkpoint
4. Crearea căii DataFrame
5. Raw vs InternalRaw

Modulul 3 - Optimizarea Spark
1. Comparați viteza, dimensiunea RDD, DataFrame, DataSet
2. Comparați numărarea crimelor: SortMerge Join, BroadCast, BlumFilter
3. Rezolvați problemele cu o îmbinare înclinată
4. Construiți UDF pentru Python și Scala
5. Probleme UDF

Modulul 4 - Externe și conectori
1. Cum să citiți/scrieți date din stocarea fișierelor (HDFS, S3, FTP, FS)
2. Ce format de date să alegeți (Json, CSV, Avro, Orc, Parquet, Delta, ... )
3. Cum să paralelizezi citirea/scrierea cu JDBC
4. Cum se creează un cadru de date din MPP (Cassandra, vertica, gp)
5. Cum să lucrezi cu Kafka
6. Cum să vă scrieți propriile conectori
7. Scrieți UDF pentru unirea cu cassandra

Modulul 5 – Testare
1. Scrieți un test pentru data marts scris în modul (Exercițiu: găsiți ora populară pentru comenzi, găsiți cele mai populare cartiere pentru comenzi, găsiți distribuția la distanță pentru comenzile grupate pe districte)
2. Teorie:
1. Testarea unitară
2. Revizuirea codului
3. QA
4. CI/CD
5. Probleme
6. Libs care rezolvă aceste probleme

Modulul 6 - Spark Cluster
1. Construiți configurația cu alocare
2. Comparați mai mulți workeri
3. Alocarea dinamică a resurselor
4. Gestionarea manuală a executorilor de executare

Modulul 7 - Spark streaming
1. [Rezolvați problema cu scrierea Cassandra](src/main/scala/mod4connectors/DataSetsWithCassandra.scala)
2. Construiește Spark Structure Citind Kafka
3. Construiți o structură Spark folosind stare
4. Construiește Spark Structure Scriind Cassandra

Obiective

  • ÃŽnÈ›elegeÈ›i structura internă a lui Spark
  • ÃŽnÈ›elegeÈ›i implementarea, configurarea È™i execuÈ›ia componentelor Spark pe diferite clustere (Standalone, YARN, Mesos)
  • OptimizaÈ›i sarcinile Spark bazate pe RDD
  • OptimizaÈ›i sarcinile Spark SQL
  • OptimizaÈ›i sarcinile Microbatch È™i Structured Streaming

Public tinta

  • Developeri
  • Arhitecti Software

Cerinte curs

Experiență de dezvoltare în Java sau Scala pentru Apache Spark de peste 3 luni.

Alege oras Online Pret
Inregistreaza-te pentru urmatorul curs.
+
Inregistrarea la urmatorul curs va asigura prioritatea pe lista de inscriere. Veti fi contactat pentru confirmarea inscrierii in momentul in care urmatorul curs este programat.
Online 3088 RON
Bucuresti 3088 RON
Cracovia 3088 RON
Wroclaw 3088 RON

Facturile pentru curs sunt emise in moneda locala. Toate preturile de mai sus pot fi supuse modificarilor in functie de locul unde se desfasoara trainingul si modul de livrare. Preturile pot fi supuse modificarilor si in perioada in care se programeaza. La preturile afisate se adauga TVA.

Alte cursuri care te-ar putea interesa:
+0+

Inscrie-te!

Prenume*
Nume*
Companie
Adresa email*
Alege oras
Telefon
Observatii
Mai ai intrebari?
Contacteaza-ne.
Thank you.
Your request has been received.