Kafka for Application Developers

MSV-104 (2 Days)
Request Pricing for Kafka for Application Developers

Kafka Training Overview

This Kafka for Application Developers training course teaches attendees how to use Kafka to modernize applications where real-time information is continuously generated by applications (publishers/producers) and routed to other applications (subscribers/consumers). 

Location and Pricing

Most Accelebrate courses are taught as private, customized training for 3 or more attendees at our clients' sites worldwide. In addition, we offer live, private online classes for teams who may be in multiple locations or wish to save on travel costs. Please visit our client list for organizations for whom we have delivered onsite training. To receive a customized proposal and price quote for private on-site or online training, please contact us.

Kafka Training Objectives

All students will:

  • Understand the use of Kafka for high performance messaging
  • Identify the usages for Kafka in Microservices
  • Explain the benefits of Kafka patterns
  • Differentiate between messaging and message brokers
  • Describe Kafka messaging environments
  • Develop producers and consumers for Kafka
  • Recognize how Kafka enables Cloud-native applications
  • Summarize characteristics and architecture for Kafka
  • Demonstrate how to process messages with Kafka
  • Design distributed high throughput systems based on Kafka
  • Describe the built-in partitioning, replication and inherent fault-tolerance of Kafka

Kafka Training Outline

Expand All | Collapse All | Printer-Friendly

Introduction
Introduction to Kafka
  • Messaging Architectures – What is Messaging?
  • Messaging Architectures – Steps to Messaging
  • Messaging Architectures – Messaging Models
  • What is Kafka?
  • What is Kafka? (Contd.)
  • Kafka Overview
  • Kafka Overview (Contd.)
  • Need for Kafka
  • When to Use Kafka?
  • Kafka Architecture
  • Core concepts in Kafka
  • Kafka Topic
  • Kafka Partitions
  • Kafka Producer
  • Kafka Consumer
  • Kafka Broker
  • Kafka Cluster
  • Why Kafka Cluster?
  • Sample Multi-Broker Cluster
  • Overview of ZooKeeper
  • Kafka Cluster & ZooKeeper
  • Who Uses Kafka?
Using Apache Kafka
  • Installing Apache Kafka
  • Configuration Files
  • Starting Kafka
  • Using Kafka Command Line Client Tools
  • Setting up a Multi-Broker Cluster
  • Using Multi-Broker Cluster
  • Kafka Cluster Planning
  • Kafka Cluster Planning – Producer/Consumer Throughput
  • Kafka Cluster Planning – Number of Brokers (and ZooKeepers)
  • Kafka Cluster Planning – Sizing for Topics and Partitions
  • Kafka Cluster Planning – Sizing for Storage
  • Kafka Connect
  • Kafka Connect – Configuration Files
  • Using Kafka Connect to Import/Export Data
  • Creating a Spring Boot Producer
  • Adding Kafka dependency to pom.xml
  • Defining a Spring Boot Service to Send Message(s)
  • Defining a Spring Boot Controller
  • Testing the Spring Boot Producer
  • Creating a Nodejs Consumer
Building Data Pipelines
  • Building Data Pipelines
  • Considerations When Building Data Pipelines
  • Timeliness
  • Reliability
  • High and Varying Throughput
  • High and Varying Throughput (Contd.)
  • Data Formats
  • Data Formats (Contd.)
  • Transformations
  • Transformations (Contd.)
  • Security
  • Failure Handling
  • Coupling and Agility
  • Ad-hoc Pipelines
  • Loss of Metadata
  • Extreme Processing
  • Kafka Connect Versus Producer and Consumer
  • Kafka Connect Versus Producer and Consumer (Contd.)
Integrating Kafka with Other Systems
  • Introduction to Kafka Integration
  • Kafka Connect
  • Kafka Connect (Contd.)
  • Running Kafka Connect
  • Key Configurations for Connect workers:
  • Kafka Connect API
  • Kafka Connect Example – File Source
  • Kafka Connect Example – File Sink
  • Kafka Connector Example – MySQL to Elasticsearch
  • Kafka Connector Example – MySQL to Elasticsearch (Contd.)
  • Write the data to Elasticsearch
  • Building Custom Connectors
  • Kafka Connect – Connectors
  • Kafka Connect - Tasks
  • Kafka Connect - Workers
  • Kafka Connect – Workers (Contd.)
  • Kafka Connect - Converters and Connect’s data model
  • Kafka Connect - Offset management
  • Alternatives to Kafka Connect
  • Alternatives to Kafka Connect (Contd.)
  • Introduction to Storm
  • Other Components of Spark
  • Integrating Storm with Kafka
  • Integrating Storm with Kafka – Sample Code
  • Integrating Storm with Kafka
  • Introduction to Hadoop
  • Hadoop Components
  • Integrating Hadoop with Kafka
  • Hadoop Consumers
  • Hadoop Consumers (Contd.)
  • Hadoop Consumers (Contd.)
  • Hadoop Consumers – Produce Topic
  • Hadoop Consumers – Fetch Generated Topic
  • Kafka at Uber
  • Kafka at Uber (Contd.)
  • Kafka at LinkedIn
  • Kafka at LinkedIn – Core Kafka Services
  • Kafka at LinkedIn – Core Kafka Services (Contd.)
  • Kafka at LinkedIn – Libraries
  • Kafka at LinkedIn – Monitoring and Stream Processing
Kafka and Schema Management
  • Evolving Schema
  • Protobuf (Protocol Buffers) Overview
  • Avro Overview
  • Managing Data Evolution Using Schemas
  • Confluent Platform
  • Confluent Schema Registry
  • Schema Change and Backward Compatibility
  • Collaborating over Schema Change
  • Handling Unreadable Messages
  • Deleting Data
  • Segregating Public and Private Topics
Kafka Streams and KSQL
  • What Kafka can be used for?
  • What Kafka can be used for? (Contd.)
  • What Exactly is Kafka?
  • The APIs for Stream Processing
  • Kafka: A Streaming Platform
  • What is KSQL?
  • What is KSQL? (Contd.)
  • Starting KSQL
  • Using the KSQL CLI
  • KSQL Data Types
  • Review the Structure of an Existing STREAM
  • Query the STREAM
  • KSQL Functions
  • Writing to a Topic
  • KSQL Table vs. Stream
  • KSQL JOIN
  • Windows in KSQL Queries
  • Miscellaneous KSQL Commands
KSQL UDF and Deployment
  • KSQL Custom Functions
  • KSQL UDF/UDAF
  • Implement a Custom Function
  • Creating UDF and UDAF
  • Creating UDF and UDAF (Contd.)
  • UDFs and Null Handling
  • UDFs and Null Handling (Contd.)
  • Sample UDF Class
  • Build Engine
  • UDAF
  • UDAF Sample Class
  • Supported Types
  • Deploying Custom Functions
  • Using Custom Functions
Conclusion
Request Pricing for Kafka for Application Developers
Lecture percentage

50%

Lecture/Demo

Lab percentage

50%

Lab

Course Number:

MSV-104

Duration:

2 Days

Prerequisites:

No prior experience is presumed.

Training Materials:

All Kafka training students receive comprehensive courseware.

Software Requirements:

  • At least 8GB RAM (12GB or more preferred) with virtualization extensions enabled in the BIOS
  • VMware Workstation Pro or Workstation Player (Windows) or VMware Fusion (Mac)
  • At least 80GB free hard drive space
  • Virtual machine image that Accelebrate provides
  • Internet access

Contact Us:

Accelebrate’s training classes are available for private groups of 3 or more people at your site or online anywhere worldwide.

Don't settle for a "one size fits all" public class! Have Accelebrate deliver exactly the training you want, privately at your site or online, for less than the cost of a public class.

For pricing and to learn more, please contact us.

Contact Us Train For Us

Toll-free in US/Canada:
877 849 1850
International:
+1 678 648 3113

Toll-free in US/Canada:
866 566 1228
International:
+1 404 420 2491

925B Peachtree Street, NE
PMB 378
Atlanta, GA 30309-3918
USA

Subscribe to our Newsletter:

Never miss the latest news and information from Accelebrate:

Microsoft Gold Partner

Please see our complete list of
Microsoft Official Courses

Recent Training Locations

Alabama

Birmingham

Huntsville

Montgomery

Alaska

Anchorage

Arizona

Phoenix

Tucson

Arkansas

Fayetteville

Little Rock

California

Los Angeles

Oakland

Orange County

Sacramento

San Diego

San Francisco

San Jose

Colorado

Boulder

Colorado Springs

Denver

Connecticut

Hartford

DC

Washington

Florida

Fort Lauderdale

Jacksonville

Miami

Orlando

Tampa

Georgia

Atlanta

Augusta

Savannah

Hawaii

Honolulu

Idaho

Boise

Illinois

Chicago

Indiana

Indianapolis

Iowa

Ceder Rapids

Des Moines

Kansas

Wichita

Kentucky

Lexington

Louisville

Louisiana

New Orleans

Maine

Portland

Maryland

Annapolis

Baltimore

Frederick

Hagerstown

Massachusetts

Boston

Cambridge

Springfield

Michigan

Ann Arbor

Detroit

Grand Rapids

Minnesota

Minneapolis

Saint Paul

Mississippi

Jackson

Missouri

Kansas City

St. Louis

Nebraska

Lincoln

Omaha

Nevada

Las Vegas

Reno

New Jersey

Princeton

New Mexico

Albuquerque

New York

Albany

Buffalo

New York City

White Plains

North Carolina

Charlotte

Durham

Raleigh

Ohio

Akron

Canton

Cincinnati

Cleveland

Columbus

Dayton

Oklahoma

Oklahoma City

Tulsa

Oregon

Portland

Pennsylvania

Philadelphia

Pittsburgh

Rhode Island

Providence

South Carolina

Charleston

Columbia

Greenville

Tennessee

Knoxville

Memphis

Nashville

Texas

Austin

Dallas

El Paso

Houston

San Antonio

Utah

Salt Lake City

Virginia

Alexandria

Arlington

Norfolk

Richmond

Washington

Seattle

Tacoma

West Virginia

Charleston

Wisconsin

Madison

Milwaukee

Alberta

Calgary

Edmonton

British Columbia

Vancouver

Manitoba

Winnipeg

Nova Scotia

Halifax

Ontario

Ottawa

Toronto

Quebec

Montreal

Puerto Rico

San Juan

© 2013-2020 Accelebrate, Inc. All Rights Reserved. All trademarks are owned by their respective owners.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.