Apache Kafka

Un intro in Apache Kafka, o platforma de streaming open source. Vom aborda functionalitatile arhitecturale ale Kafka care permit livrarea datelor la un nivel ridicat de performanta.
Cod: EAS-026
Durata: 24 ore

Descriere

Acest training te va ajuta sa intelegi arhitectura si modul in care functioneaza Apache Kafka, o platforma de streaming open source. Vom implementa Java-based si REST-based clients pentru Kafka cluster access, vom discuta despre configurarea unui cluster si client pentru a obtine un compromis intre latenta, randament, durabilitate si disponibilitate. De asemenea vom aborda si multi-cluster setting care este vitala pentru a atinge fault-tolerance si a promova scalabilitatea.

Kafka Connect permite rezolvarea sarcinilor comune precum mutarea datelor intre Kafka si alte sisteme externe (DBMS, file system, etc.). Folosirea Kafka Streams este recomandata pentru a construi solutii de streaming processing rapide si reziliente.

Subiecte curs

Prezentare
  • Ce este Kafka?
  • Kafka Use Cases si Anti Use Cases
  • Kafka vs Database
  • Kafka vs Message Queue
  • Kafka Storage Architecture: Brokers, Topics, Partitions, Segments, Replicas
  • Kafka Cluster Architecture: Zookeeper, Partition Assignment, Replica Leaders & Followers, In-Sync Replicas
  • Kafka Clients si APIs

Cluster Setup
  • Practica: Setarea Kafka Cluster folosind Docker
  • Instalarea Zookeeper Ensemble
  • Instalarea Kafka Brokers

Dezvoltarea aplicatiilor in Java
  • Kafka Producer API: Elemente de baza
  • Practica: Single Message Producer
  • Practica: Group Message Producer
  • Practica: Group Producer with Explicit Partitioning
  • Practica: No-key Message Producer
  • Kafka Consumer API: Basics, Consumer Groups
  • Practica: Single Consumer
  • Practica: Multiple Consumers in Same Group
  • Advanced Producing & Consuming: Batching, Retries, Idempotence, Transactions, Consumer Group Rebalance
  • Practica: Producer with no batching and retries
  • Practica: Idempotent Producer
  • Practica: Transactional Producer
  • Practica: Transactional Producer and Consumer
  • Practica: Transactional Consume-Copy-Produce

Access extern la Kafka Cluster
  • Securitate: SSL, SASL, Kerberos
  • Confluent REST Proxy: Producing & consuming JSON, Binary & Avro files
  • Practica: Access via REST Proxy
  • Confluent Schema Registry
  • Practica: Folosirea REST Proxy cu Schema Registry

Operations & Monitoring
  • Performance Goals & Modes of Execution
  • Zookeeper: Configuration, Standalone & Quorum Modes, CLI
  • Cluster Management & Monitoring
  • Practica: Monitorizarea Kafka folosind Prometheus

Multi Clusters
  • Multi Clusters in Kafka?
  • MirrorMakerAccess
  • Practica: Folosirea MirrorMaker pentru Synchronize Clusters
  • Confluence Replicator

Kafka Connect
  • Kafka Connect Arhitectura
  • Kafka Connect Sinks
  • Practica: FileStream Sink Connector
  • Practica: JDBC Sink Connector
  • Kafka Connect Sources
  • Practica: FileStream Source Connector
  • Practica: JDBC Source Connector

Kafka Streams Basics
  • Kafka Streams: Streams DSL, Processor API, StreamBuilder, Topology Creating & Implementing
  • Demo: Implementarea Streams Topology
  • Demo: Crearea unei aplicatii Streams folosind StreamBuilder
  • Kafka Streams Internals: Multihreading, Multiple Instances si Tasks
  • Schemata in Kafka: Serialization, JSON Schema, Avro Schema, Schema Registry, Schema Evolution
  • Demo: Folosirea JSON Schema
  • Stateful Processing: State Store, Fault Tolerance pentru State Stores
  • KTable: Update Streams, Caching, Emit Rate, Aggregation
  • Windowing in Streams: Timestamp Extractors, Tumbling, Hopping & Session Windows
  • Streaming Joins: Stream with Stream, KTable with KTable, Stream with KTable

Obiective

  • Intelegerea arhitecturii Kafka
  • Intelegerea modului in care implementam si configuram Kafka
  • Folosirea REST-based access in Kafka
  • Crearea Kafka Java API clients
  • Designul arhitecturilor multi-cluster
  • Folosirea instrumentelor Kafka Connect
  • Crearea de programe Kafka Streams

Public tinta

  • Programatori
  • Arhitecti software
  • Data Engineers

Cerinte curs

  • Experienta in Java de cel putin 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 1948 RON
Bucuresti 1948 RON
Cracovia 1948 RON
Wroclaw 1948 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:

Inscrie-te!

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