DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Low-Code Development: Leverage low and no code to streamline your workflow so that you can focus on higher priorities.

DZone Security Research: Tell us your top security strategies in 2024, influence our research, and enter for a chance to win $!

Launch your software development career: Dive head first into the SDLC and learn how to build high-quality software and teams.

Open Source Migration Practices and Patterns: Explore key traits of migrating open-source software and its impact on software development.

Related

  • ETL and How it Changed Over Time
  • Kafka: Powerhouse Messaging
  • Superior Stream Processing: Apache Flink's Impact on Data Lakehouse Architecture
  • A Deep Dive Into the Differences Between Kafka and Pulsar

Trending

  • 7 Linux Commands and Tips to Improve Productivity
  • Setting up CI/CD Pipelines: A Step-By-Step Guide
  • How to Configure Custom Metrics in AWS Elastic Beanstalk Using Memory Metrics Example
  • Developer Git Commit Hygiene
  1. DZone
  2. Data Engineering
  3. Big Data
  4. When Not To Use Apache Kafka (Lightboard Video)

When Not To Use Apache Kafka (Lightboard Video)

When not to use Apache Kafka, do's and don't's; no matter if you use open source, Confluent, Amazon MSK, Event Hubs, Redpanda, Warpstream, et al.

By 
Kai Wähner user avatar
Kai Wähner
DZone Core CORE ·
Jun. 25, 24 · Presentation
Like (1)
Save
Tweet
Share
1.9K Views

Join the DZone community and get the full member experience.

Join For Free

Apache Kafka is the de facto standard for data streaming to process data in motion. With its significant adoption growth across all industries, I get a very valid question every week: When should we not use Apache Kafka? What limitations does the event streaming platform have? When does Kafka simply not provide the needed capabilities? How do we qualify Kafka if it is not the right tool for the job? This blog post contains a lightboard video that gives you a twenty-minute explanation of the do's and don't's.

when not to use kafkaDisclaimer: This blog post shares a lightboard video to watch an explanation about when NOT to use Apache Kafka.

What Is Apache Kafka, and What Is It Not?

Kafka is often misunderstood. For instance, I still hear way too often that Kafka is a message queue. Part of the reason is that some vendors only pitch it for a specific problem (such as data ingestion into a data lake or data warehouse) to sell their products. So, in short:

Kafka Is…

  • A scalable real-time messaging platform to process millions of messages per second.
  • A data streaming platform for massive volumes of big data analytics and small volumes of transactional data processing.
  • A distributed storage provides true decoupling for backpressure handling, support of various communication protocols, and replayability of events with guaranteed ordering.
  • A data integration framework (Kafka Connect) for streaming ETL.
  • A data processing framework (Kafka Streams) for continuous stateless or stateful stream processing.

This combination of characteristics in a single platform makes Kafka unique (and successful).

Kafka Is Not…

  • A proxy for millions of clients (like mobile apps) – but Kafka-native proxies (like REST or MQTT) exist for some use cases.
  • An API Management platform – but these tools are usually complementary and used for the creation, life cycle management, or monetization of Kafka APIs.
  • A database for complex queries and batch analytics workloads – but good enough for transactional queries and relatively simple aggregations (especially with ksqlDB).
  • An IoT platform with features such as device management  – but direct Kafka-native integration with (some) IoT protocols such as MQTT or OPC-UA is possible and the appropriate approach for (some) use cases.
  • A technology for hard real-time applications such as safety-critical or deterministic systems – but that’s true for any other IT framework, too. Embedded systems are a different software!

For these reasons, Kafka is complementary, not competitive, to these other technologies. Choose the right tools for the job and combine them!

Lightboard Video: When Not To Use Apache Kafka

The following video explores the key concepts of Apache Kafka. Afterward, the do's and don't's of Kafka show how to complement data streaming with other technologies for analytics, APIs, IoT, and other scenarios.


Data Streaming Vendors and Cloud Services

The research company Forrester defines data streaming platforms as a new software category in a new Forrester Wave. Apache Kafka is the de facto standard used by over 100,000 organizations.

Plenty of vendors offer Kafka platforms and cloud services. Many complementary open-source stream processing frameworks like Apache Flink and related cloud offerings emerged. Competitive technologies like Pulsar, Redpanda, or WarpStream try to get market share by leveraging the Kafka protocol. 

Data Streaming Landscape 2024 around Kafka Flink and Cloud

Apache Kafka Is a Data Streaming Platform: Combine It With Other Platforms When Needed!

Over 150,000 organizations use Apache Kafka in the meantime. The Kafka protocol is the de facto standard for many open-source frameworks, commercial products, and serverless cloud SaaS offerings.

However, Kafka is not an allrounder for every use case. Many projects combine Kafka with other technologies, such as databases, data lakes, data warehouses, IoT platforms, and so on. Additionally, Apache Flink is becoming the de facto standard for stream processing (but Kafka Streams is not going away and is the better choice for specific use cases).

Where do you (not) use Apache Kafka? What other technologies do you combine Kafka with? Let’s connect on LinkedIn and discuss it! Stay informed about new blog posts by subscribing to my newsletter.

Big data Data processing Stream processing kafka

Published at DZone with permission of Kai Wähner, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • ETL and How it Changed Over Time
  • Kafka: Powerhouse Messaging
  • Superior Stream Processing: Apache Flink's Impact on Data Lakehouse Architecture
  • A Deep Dive Into the Differences Between Kafka and Pulsar

Partner Resources


Comments

ABOUT US

  • About DZone
  • Send feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends: