Big data in de praktijk met Spark

Iedereen is tegenwoordig aan de slag met AI, Data Science, en "big data". Ook u wil ongetwijfeld uw volumineuze databronnen (click streams, sociale media, relationele data, cloud-data, sensor-data, ...) ondervragen, en botst hierbij op de tekortkomingen van de traditionele data-analyse-tools. Dan hebt u misschien behoefte aan de rekenkracht van een cluster --en z'n parallelle verwerkingsmogelijkheden-- om uw distributed data stores te ondervragen.

Indien "fast prototyping" en verwerkingssnelheid prioritair zijn, dan komt u ongetwijfeld bij Spark terecht. Apache Spark is een open source-platform dat zich vooral toespitst op snelheid, gebruiksgemak, flexibiliteit, en analytics. Het is een interessant alternatief voor de MapReduce-aanpak van Hadoop met Hive (cf. onze cursus Big data in de praktijk met Hadoop). Spark heeft ondertussen Hadoop aangevuld, en eigenlijk vervangen, dankzij het hogere niveau van abstractie van Spark's APIs en z'n snellere in-memory processing.

spark-logo.png

In het bijzonder laat Spark toe om op een eenvoudige manier databronnen te raadplegen op HDFS, in een NoSQL-database (b.v. Cassandra of HBase), in een relationele database, in de cloud (b.v. AWS S3) of in lokale bestanden. Onafhankelijk daarvan kan een Spark-job eenvoudig draaien op hetzij de lokale machine (als ontwikkelomgeving), of op een Hadoop-cluster (met Yarn), of een Mesos-omgeving, of Kubernetes, of in de cloud. En dit alles via een eenvoudig Spark script of via een complexer (Java- of Python-)programma of via een web-based notebook (b.v. Zeppelin of Databricks).

Deze cursus bouwt verder op de context van de overzichtscursus Big data architectuur en infrastructuur. We gaan zelf aan de slag op Linux met Spark en met z'n bibliotheken. U leert hoe u robuuste data-processing implementeert (in Python, Scala of R) met een SQL-achtige interface.

Na afloop van deze cursus hebt u voldoende basis-expertise opgebouwd om zelfstandig een ontwikkelomgeving voor Spark of Databricks op te zetten en hiermee uw data zinvol te ondervragen. U zult in staat zijn, eenvoudige Spark-scripts en -programma's te schrijven (met de Python-gebaseerde PySpark, of met de Scala-gebaseerde SparkShell), op basis van DataFrames en RDDs, en optioneel ook gebruik maken van de bibliotheken MLlib, GraphX, en de streaming library.

Kalender

Momenteel zijn er voor deze cursus geen publieke sessies gepland. Graag organiseren we een bedrijfssessie voor u of een extra publieke sessie (bij voldoende belangstelling). Geïnteresseerd? Laat het ons weten.

Doelgroep

Eenieder die praktisch aan de slag wil met Spark: ontwikkelaars, data-architecten, en iedereen die met data science technologie moet kunnen werken.

Voorkennis

Vertrouwdheid met de concepten van data clusters en distributed processing is noodzakelijk; zie hiervoor onze cursus Big data architectuur en infrastructuur. Verder is minimale kennis van SQL en van Unix/Linux een pluspunt. In elk geval is minimale ervaring met een programmeertaal (b.v. Java, Python, Scala, Perl, JavaScript, PHP, C++, C#, ...) noodzakelijk.

Inhoud

  • Motivatie voor Spark & basisconcepten
  • Het Apache Spark-project en z'n componenten
  • Spark en Databricks
  • Leer de Spark-architectuur en z'n programmeermodel kennen
  • De principes van Data Analytics
  • Databronnen
  • Raadplegen van data die zich bevindt in Hadoop HDFS, Cassandra, AWS S3, of een relationele database
  • Interfaces
  • Werken met de verschillende programmeer-interfaces (i.h.b. Spark-shell en PySpark)
  • Programma's schrijven en debuggen die simpele data-analyseproblemen behandelen
  • Data Frames en RDDs
  • Een korte inleiding tot het gebruik van de Spark-libraries
  • SparkSQL
  • Machine learning (MLlib)
  • Streaming (dus het verwerken van "volatile" data)
  • Parallelle berekeningen in boomstructuren en grafen (GraphX)

Verloop van de cursus

Klassikale training, waarbij de nadruk ligt op praktische voorbeelden en uitgebreide praktijkoefeningen.

Duur

2 dagen.

Docent

Peter Vanroose.

Ook interessant

Cursisten van deze training hebben ook volgende cursussen gevolgd:


SESSIE-INFO EN INSCHRIJVEN