forked from apache/kafka-site
-
Notifications
You must be signed in to change notification settings - Fork 0
/
get-started.html
168 lines (165 loc) · 6.21 KB
/
get-started.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
<!--#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® 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" -->