blob: 09f768c418a9a2d92ae3c798bec21f6087f1adac [file] [log] [blame]
<!--#include virtual="includes/_header.htm" -->
<body class="page-get-started ">
<!-- TODO: figure out if the param approach works -->
<!--#include virtual="includes/_top.htm?current_nav=get-started" -->
<div class="page-header" id="secondary-nav">
<h1 class="page-header-title">Get Started</h1>
<p class="page-header-text">All you need to know to get up and running with Apache Kafka can be found here. Etc. Etc.</p>
<ul class="page-header-nav">
<li class="page-header-nav-item">
<a class="page-header-nav-item-anchor current" href="/get-started#introduction">Introduction</a>
</li>
<li class="page-header-nav-item">
<a class="page-header-nav-item-anchor" href="/get-started#quickstart">Quickstart</a>
</li>
<li class="page-header-nav-item">
<a class="page-header-nav-item-anchor" href="/get-started#usecases">Usecases</a>
</li>
</ul>
</div>
<hr class="content-separator" />
<div class="content content-get-started">
<h1 class="content-title">
Introduction
</h1>
<p class="content-subtitle">
Apache Kafka&reg; is a distributed streaming platform. What exactly does that mean?
</p>
<section class="conent-section">
<h2 class="content-section-title">
A streaming platform has three key capabilities:
</h2>
<ul class="content-feature-list">
<li class="content-feature-item">
<h3 class="content-feature-title">
Pub/Sub
</h3>
<p class="content-feature-text">
Publish and subscribe to streams of records, similar to a message queue or enterprise messaging system.
</p>
</li>
<li class="content-feature-item">
<h3 class="content-feature-title">
Stream Storage
</h3>
<p class="content-feature-text">
Store streams of records in a fault-tolerant durable way.
</p>
</li>
<li class="content-feature-item">
<h3 class="content-feature-title">
Real-Time
</h3>
<p class="content-feature-text">
Process streams of records as they occur.
</p>
</li>
</ul>
</section>
<section class="conent-section">
<h2 class="content-section-title">
Kafka is generally used for two broad classes of applications:
</h2>
<ul class="content-feature-list">
<li class="content-feature-item">
<h3 class="content-feature-title">
Real-Time Pipelines
</h3>
<p class="content-feature-text">
Building real-time streaming data pipelines that reliably get data between systems or applications.
</p>
</li>
<li class="content-feature-item">
<h3 class="content-feature-title">
Real-Time Apps
</h3>
<p class="content-feature-text">
Building real-time streaming applications that transform or react to the streams of data
</p>
</li>
</ul>
</section>
<section class="conent-section">
<h2 class="content-section-title">
First a few concepts:
</h2>
<ul class="content-list">
<li class="content-item">
Kafka is run as a cluster on one or more servers that can span multiple datacenters.
</li>
<li class="content-item">
The Kafka cluster stores streams of records in categories called topics.
</li>
<li class="content-item">
Each record consists of a key, a value, and a timestamp.
</li>
</ul>
</section>
<section class="conent-section">
<h2 class="content-section-title">
Kafka has five core APIs:
</h2>
<ul class="content-feature-list">
<li class="content-feature-item">
<h3 class="content-feature-title">
Producer API
</h3>
<p class="content-feature-text">
The Producer API allows an application to publish a stream of
records to one or more Kafka topics.
</p>
<a href="#" class="content-feature-learn-more">Learn more</a>
</li>
<li class="content-feature-item">
<h3 class="content-feature-title">
Consumer API
</h3>
<p class="content-feature-text">
The Consumer API allows an application to subscribe to one
or more topics and process the stream of records produced to them.
</p>
<a href="#" class="content-feature-learn-more">Learn more</a>
</li>
<li class="content-feature-item">
<h3 class="content-feature-title">
Streams API
</h3>
<p class="content-feature-text">
The Streams API allows an application to act as a stream
processor, consuming an input stream from one or more topics
and producing an output stream to one or more output topics,
effectively transforming the input streams to output streams.
</p>
<a href="#" class="content-feature-learn-more">Learn more</a>
</li>
<li class="content-feature-diagram">
<img class="content-feature-diagram-image" src="/images/cluster-diagram.svg" />
</li>
<li class="content-feature-item">
<h3 class="content-feature-title">
Connector API
</h3>
<p class="content-feature-text">
The Connector API allows building and running reusable
producers or consumers that connect Kafka topics to existing
applications or data systems. For example, a connector to a
relational database might capture every change to a table.
</p>
</li>
<li class="content-feature-item">
<h3 class="content-feature-title">
Admin API
</h3>
<p class="content-feature-text">
The Admin API allows managing and inspecting topics, brokers
and other Kafka objects.
</p>
</li>
</ul>
</section>
</ul>
<script>
// Show selected style on nav item
$(function() { $('.b-nav__intro').addClass('selected'); });
</script>
<!--#include virtual="includes/_footer.htm" -->