Frequently Asked Questions
Getting started with Redpanda
The FAQs in this section are related to the Redpanda platform.
What are the recommended clients to use with Redpanda?
Redpanda is Kafka API compatible so any client that works with Kafka should work out of the box with Redpanda. However here is a list of clients which we have tested with:
Language | Client | Link |
---|---|---|
Java |
Apache Kafka Java Client |
|
C/C++ |
librdkafka |
|
Go |
franz-go |
|
Python |
kafka-python |
|
JS |
KafkaJS |
|
PHP |
php-simple-kafka-client |
Is Redpanda Fully Kafka API compatible?
Redpanda works to ensure all Kafka-based application are compatible with the Redpanda platform. The transactions API is in technical preview.
but can be enabled by setting both enable_idempotence
and enable_transactions
to true
in the Redpanda config.
If you run into any issues while working with a Kafka tool, please let us know! File an issue
Does Redpanda use Zookeeper?
No, Redpanda is a modern streaming platform that has been built using C++ and Raft for consensus. Since we use Raft we have no need for an external consensus system like Zookeeper.
Can I run Redpanda directly on Windows or MacOS?
Unfortunately, you can only run Redpanda directly on Linux. However, you can use Docker to run Redpanda on any system supported by Docker. Please see our Quick Start Docker Guide for more information.
Consumers and topics
How do consumer groups and topics interact?
-
A consumer group allows many topics to be consumed.
-
A consumer within a group can subscribe to multiple topics.
-
For each topic that a group subscribes to, the records are sent to one consumer within the group at least once.
-
Consumer groups are separate. Each group receives each record from each subscribed topic at least once.
How are topics and partitions related?
Topics are split into partitions.
-
Every partition is handled by exactly one leader node in the cluster, so if you want to fully use your cluster you need at least the same amount of partitions as you have nodes.
-
The records within a partition are ordered.
-
There is no ordering between records in different partitions in the same topic.
The partition is the unit of scale.
-
Only one consumer in a group can receive records from a given partition at a specific time. This might change as the group is rebalanced.
-
If a consumer cannot keep up, reduce the work per consumer by adding additional consumers. You may also need to increase the number of partitions: because partitions are assigned exclusively to a single consumer, you should have at least three times the number of partitions as consumers to allow for a balanced assignment.