// Audience remarketing

Apache Kafka για Μηχανικούς

Έναρξη Μαθημάτων: 10/05/2021
Διάρκεια: 3 μήνες |
120 ώρες
Κόστος: 400 ευρώ
ECVET: 6
A program for software engineers who develop applications that use Kafka’s APIs and production engineers (also called SREs, devops, or sysadmins) who install, configure, tune, and monitor Kafka in production. Furthermore this training can be useful for data architects and data engineers in mind, those responsible for designing and building an organization’s entire data infrastructure.

Πληροφορίες Προγράμματος

Αντικείμενο και Σκοπός

This training provides the needed information in order to use Apache Kafka in production and build robust and performant applications on top of it. We highlight the popular use cases: message bus for event-driven microservices, stream-processing applications, and large-scale data pipelines. We also focus on making the training general and comprehensive enough so it will be useful to anyone using Kafka, no matter the use case or architecture. Topics such as how to install and configure Kafka and how to use the Kafka APIs are covered. Finally, Kafka’s design principles are presented and discussed.

The main audience is software engineers who develop applications that use Kafka’s APIs and production engineers (also called SREs, devops, or sysadmins) who install, configure, tune, and monitor Kafka in production. Furthermore this training can be useful for data architects and data engineers in mind, those responsible for designing and building an organization’s entire data infrastructure. 

Λέξεις - Κλειδιά
Apache Kafka
Μαθησιακοί Στόχοι
Με την ολοκλήρωση του προγράμματος, ο/η επιμορφούμενος/η θα είναι σε θέση να:

  1. Χρήση Apache Kafka στην παραγωγή και στην υποστήριξη αποδοτικών εφαρμογών
  2. Εγκαθιστά και παραμετροποιεί Apache Kafka
  3. Αναπτύσσει επαγγελματικό λογισμικό
  4. Σχεδιάζει και υλοποιεί ανεξάρτητα της περίπτωσης ή της αρχιτεκτονικής
Μεθοδολογία Υλοποίησης

Διαδικασία Υλοποίησης της Επιμόρφωσης
Από απόσταση Ηλεκτρονική Μάθηση (e-Learning).

Μέθοδοι Υλοποίησης της Επιμόρφωσης
Το εκπαιδευτικό υλικό θα αποτελείται από βιντεοσκοπημένες ενότητες και παραδείγματα προγραμματισμού. Θα χρησιμοποιηθεί η μέθοδος της ασύγχρονης τηλεκπαίδευσης. Το υλικό θα διατίθεται σταδιακά. Κάθε εβδομάδα και μία ενότητα.

Μέθοδοι Αξιολόγησης & Κριτήρια Απόδοσης Πιστοποιητικού Επιμόρφωσης
Η μέθοδος αξιολόγησης θα αποτελείται από εργασίες με την μορφή προγραμματισμού σε εβδομαδιαία βάση. Από το αποτέλεσμα των εργασιών θα προκύψει και ο τελικός βαθμός των εκπαιδευομένων.

Το πρόγραμμα δεν θα τηρεί απουσιολόγιο.

Δίδακτρα

Κόστος προγράμματος: €400

Εκπτωτικές κατηγορίες:

- 20% έκπτωση σε άνεργους
- 20% έκπτωση σε πολύτεκνους
- 20% έκπτωση σε φοιτητές του Πανεπιστημίου Αιγαίου
- 20% έκπτωση σε ομάδες εγγραφών 5 ατόμων δημόσιων υπάλληλων ή  εργαζόμενων στον ιδιωτικό τομέα με προϋπηρεσία τουλάχιστον δύο ετών από τον ίδιο φορέα ή ιδιωτική επιχείρηση
- 15% έκπτωση σε κατόχους ευρωπαϊκής κάρτας νέων
- 10% έκπτωση σε προκαταβολή του συνολικού ποσού

Διδακτικές Ενότητες

1. Introduction to Kafka

Έναρξη – Λήξη: 10/05/2021 – 16/05/2021
Σύνολο φόρτου εργασίας: 10  ώρες
Ακαδημαϊκά Υπεύθυνος: Χαράλαμπος Σκιάνης

In this session, we provide the important information for trainees to understand the concept of publish/subscribe messaging and why it is important. Publish/subscribe messaging is a pattern that is characterized by the sender (publisher) of a piece of data (message) not specifically directing it to a receiver. Instead, the sender (publisher) classifies the message somehow, and the receiver (subscriber) subscribes to receive certain classes of messages. Pub/sub systems often have a broker, a central point where messages are published, to facilitate this.

 

  • Εβδομαδιαία συνεδρία: Introduction to Kafka
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης
2. Installing Kafka

Έναρξη – Λήξη: 17/05/2021 – 23/05/2021
Σύνολο φόρτου εργασίας: 10 ώρες
Ακαδημαϊκός Υπεύθυνος: Χαράλαμπος Σκιάνης

This session describes how to get started with the Apache Kafka broker, including how to set up Apache Zookeeper, which is used by Kafka for storing metadata for the brokers. It will also cover the basic configuration options for a Kafka deployment, as well as criteria for selecting the correct hardware to run the brokers on. Finally, it will cover how to install multiple Kafka brokers as part of a single cluster and some specific concerns when using Kafka in a production environment.

 

  • Εβδομαδιαία συνεδρία: Installing Kafka
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης
3. Kafka Producers

Έναρξη – Λήξη: 24/05/2021 – 30/05/2021
Σύνολο φόρτου εργασίας: 10 ώρες
Ακαδημαϊκός Υπεύθυνος: Χαράλαμπος Σκιάνης

This session provides information on how to use the Kafka producer, starting with an overview of its design and components. It will show how to create KafkaProducer and ProducerRecord objects, how to send records to Kafka, and how to handle the errors that Kafka may return. We’ll then review the most important configuration options used to control the producer behavior. Finally, a deeper look at how to use different partitioning methods and serializers, and how to write your own serializers and partitioners.

 

  • Εβδομαδιαία συνεδρία: Kafka Producers
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης
4. Kafka Consumers

Έναρξη – Λήξη: 31/05/2021 – 06/06/2021
Σύνολο φόρτου εργασίας: 10 ώρες
Ακαδημαϊκός Υπεύθυνος: Χαράλαμπος Σκιάνης

This session shows how applications that need to read data from Kafka use a KafkaConsumer to subscribe to Kafka topics and receive messages from these topics. Since, reading data from Kafka is a bit different than reading data from other messaging systems, and there are few unique concepts and ideas involved. We’ll start by explaining some of the important concepts, and then we’ll go through some examples that show the different ways consumer APIs can be used to implement applications with varying requirements.

 

  • Εβδομαδιαία συνεδρία: Kafka Consumers
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης
5. Kafka Internals

Έναρξη – Λήξη: 07/06/2021 – 13/06/2021
Σύνολο φόρτου εργασίας: 10 ώρες
Ακαδημαϊκός Υπεύθυνος: Χαράλαμπος Σκιάνης

In this session, we focus on three topics that are especially relevant to Kafka practitioners: (1) How Kafka replication works; (2) How Kafka handles requests from producers and consumers; (3) How Kafka handles storage such as file format and indexes. By understanding these topics in-depth will be especially useful when tuning Kafka and understanding the mechanisms that the tuning knobs control goes a long way toward using them with precise intent rather than fiddling with them randomly.

 

  • Εβδομαδιαία συνεδρία: Kafka Internals
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης
6. Reliable Data Delivery

Έναρξη – Λήξη: 14/06/2021 – 20/06/2021
Σύνολο φόρτου εργασίας: 10 ώρες
Ακαδημαϊκός Υπεύθυνος: Χαράλαμπος Σκιάνης

In this session, we will start by talking about different kinds of reliability and what they mean in the context of Apache Kafka. Then we will talk about Kafka’s replication mechanism and how it contributes to the reliability of the system. Furthermore, we will discuss Kafka’s brokers and topics and how they should be configured for different use cases. Then we will discuss the clients, producer, and consumer, and how they should be used in different reliability scenarios. Last, we will discuss the topic of validating the system reliability, because it is not enough to believe a system is reliable.

 

  • Εβδομαδιαία συνεδρία: Reliable Data Delivery
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης
7. Building Data Pipelines

Έναρξη – Λήξη: 21/06/2021 – 27/06/2021
Σύνολο φόρτου εργασίας: 10 ώρες
Ακαδημαϊκός Υπεύθυνος: Χαράλαμπος Σκιάνης

In this session, we’ll discuss some of the common issues that you need to take into account when building data pipelines. Those challenges are not specific to Kafka, but rather general data integration problems. Nonetheless, we will show why Kafka is a good fit for data integration use cases and how it addresses many of those challenges. We will discuss how the Kafka Connect APIs are different from the normal producer and consumer clients, and when each client type should be used. Then we’ll jump into some details of Kafka Connect. While a full discussion of Kafka Connect is outside the scope of this session, we will show examples of basic usage to get you started and give you pointers on where to learn more. Finally, we’ll discuss other data integration systems and how they integrate with Kafka.

 

  • Εβδομαδιαία συνεδρία: Building Data Pipelines
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης
8. Cross Clustering Mirroring

Έναρξη – Λήξη: 28/06/2021 – 04/07/2021
Σύνολο φόρτου εργασίας: 10 ώρες
Ακαδημαϊκός Υπεύθυνος: Χαράλαμπος Σκιάνης

In this session,  we will present cross-cluster mirroring concepts of all or part of the data, including some use cases and architectures that are used to implement these use cases and provide the pros and cons of each architecture pattern. Furthermore, we will  discuss MirrorMaker, and how to use it, including operational tips, including deployment and performance tuning. Finally, we will also present some other alternatives

 

  • Εβδομαδιαία συνεδρία: Cross Clustering Mirroring
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης
9. Administering Kafka

Έναρξη – Λήξη: 05/07/2021 – 11/07/2021
Σύνολο φόρτου εργασίας: 10 ώρες
Ακαδημαϊκός Υπεύθυνος: Χαράλαμπος Σκιάνης

In this session, we will present how to use several command-line interface (CLI) utilities that are useful for making administrative changes to the Kafka clusters. The tools are implemented in Java classes, and a set of scripts are provided to call those classes properly. These tools provide basic functions, but you may find they are lacking for more complex operations.

 

  • Εβδομαδιαία συνεδρία: Administering Kafka
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης
10. Monitoring Kafka

Έναρξη – Λήξη: 12/07/2021 – 18/07/2021
Σύνολο φόρτου εργασίας: 10 ώρες
Ακαδημαϊκός Υπεύθυνος: Χαράλαμπος Σκιάνης

This session will present the most critical metrics to monitor Apache Kafka all the time, and how to respond to them. We’ll also describe some of the more important metrics to have on hand when debugging problems. This is not an exhaustive list of the metrics that are available, however, because the list changes frequently, and many will only be informative to a hardcode Kafka developer.

 

  • Εβδομαδιαία συνεδρία: Monitoring Kafka
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης
11. Stream Processing

Έναρξη – Λήξη: 19/07/2021 – 25/07/2021
Σύνολο φόρτου εργασίας: 10 ώρες
Ακαδημαϊκός Υπεύθυνος: Χαράλαμπος Σκιάνης

This session is intended to be a brief introduction to stream processing and will cover basic Kafka Streams features. We will explain what we mean by stream processing (since this term is frequently misunderstood), then discuss some of the basic concepts of stream processing and the design patterns that are common to all stream-processing systems and provide information how to use Kafka steam library, including some examples and use cases.

 

  • Εβδομαδιαία συνεδρία: Stream Processing
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης
12. Designing Event Driven Systems

Έναρξη – Λήξη: 26/07/2021 – 01/08/2021
Σύνολο φόρτου εργασίας: 10 ώρες
Ακαδημαϊκός Υπεύθυνος: Χαράλαμπος Σκιάνης

This session will discuss  how to design event driven systems, and deep dive in concepts such as architectures, event sourcing and use cases. A software project will be provided to showcase how to apply the discussed patterns and techniques.

 

  • Εβδομαδιαία συνεδρία: Designing Event Driven Systems
    Διδάσκοντες: Θωμάς Πλιάκας, Χαράλαμπος Σκιάνης

Χαράλαμπος Σκιάνης

Επιστημονικά & Ακαδημαϊκά Υπεύθυνος - Διδάσκων
Καθηγητής - Πανεπιστήμιο Αιγαίου

 

Θωμάς Πλιάκας

Διδάσκων
Principal Software Architect

 

Pin It on Pinterest