Bird
Raised Fist0
Kafkadevops~5 mins

Cross-datacenter replication in Kafka - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is cross-datacenter replication in Kafka?
Cross-datacenter replication in Kafka means copying data from one Kafka cluster in one data center to another Kafka cluster in a different data center. This helps keep data safe and available even if one data center has problems.
Click to reveal answer
beginner
What tool does Kafka use for cross-datacenter replication?
Kafka uses a tool called MirrorMaker to copy data between clusters in different data centers. MirrorMaker reads data from the source cluster and writes it to the target cluster.
Click to reveal answer
beginner
Why is cross-datacenter replication important?
It protects data from loss if one data center fails, helps with disaster recovery, and allows users in different locations to access data quickly by having copies nearby.
Click to reveal answer
intermediate
What is a common challenge when setting up cross-datacenter replication?
One challenge is handling network delays and ensuring data stays consistent between clusters. Also, managing conflicts if data changes in both places can be tricky.
Click to reveal answer
intermediate
How does MirrorMaker ensure data is replicated correctly?
MirrorMaker reads messages from the source Kafka topics and writes them to the target topics in the other cluster, preserving the order and content to keep data accurate.
Click to reveal answer
What is the main purpose of cross-datacenter replication in Kafka?
ATo copy data between Kafka clusters in different data centers
BTo speed up local data processing
CTo delete old data automatically
DTo compress data for storage
Which Kafka tool is commonly used for cross-datacenter replication?
AKafka Streams
BKafka Connect
CMirrorMaker
DKafka Producer
What is a key challenge in cross-datacenter replication?
AWriting data faster than reading
BHandling network delays and data consistency
CCompressing data efficiently
DEncrypting data at rest
What does MirrorMaker preserve when replicating data?
AUser access permissions
BOnly the latest messages
CData compression format
DData order and content
Cross-datacenter replication helps with which of the following?
ADisaster recovery
BFaster local CPU processing
CReducing disk space usage
DImproving user interface design
Explain what cross-datacenter replication is and why it is useful in Kafka.
Think about how copying data between places helps keep it safe.
You got /3 concepts.
    Describe how MirrorMaker works for cross-datacenter replication in Kafka.
    Imagine a mail carrier copying letters from one post office to another.
    You got /3 concepts.

      Practice

      (1/5)
      1.

      What is the main purpose of cross-datacenter replication in Kafka?

      easy
      A. To copy Kafka topics between clusters for data safety and availability
      B. To compress Kafka messages for faster transmission
      C. To encrypt Kafka topics for security
      D. To delete old Kafka topics automatically

      Solution

      1. Step 1: Understand the concept of cross-datacenter replication

        Cross-datacenter replication means copying data from one Kafka cluster to another in a different location.
      2. Step 2: Identify the main goal of this replication

        The goal is to keep data safe and available even if one cluster fails.
      3. Final Answer:

        To copy Kafka topics between clusters for data safety and availability -> Option A
      4. Quick Check:

        Replication = Data safety and availability [OK]
      Hint: Replication means copying data across clusters for safety [OK]
      Common Mistakes:
      • Confusing replication with compression
      • Thinking replication encrypts data
      • Assuming replication deletes data
      2.

      Which of the following is the correct way to specify the source cluster's bootstrap servers in Kafka MirrorMaker configuration?

      consumer.bootstrap.servers = ?
      easy
      A. "source.kafka.cluster:9092"
      B. "target.kafka.cluster:9092"
      C. "localhost:2181"
      D. "mirror.kafka.cluster:2181"

      Solution

      1. Step 1: Identify the role of consumer.bootstrap.servers

        This property tells MirrorMaker where to read data from, so it must point to the source Kafka cluster.
      2. Step 2: Choose the correct server address for the source cluster

        The source cluster's Kafka broker address is usually in the form host:port, like "source.kafka.cluster:9092".
      3. Final Answer:

        "source.kafka.cluster:9092" -> Option A
      4. Quick Check:

        consumer.bootstrap.servers = source cluster address [OK]
      Hint: Consumer connects to source cluster bootstrap servers [OK]
      Common Mistakes:
      • Using target cluster address for consumer.bootstrap.servers
      • Using ZooKeeper address instead of Kafka broker
      • Confusing consumer and producer properties
      3.

      Given the following MirrorMaker configuration snippet, what will be the value of producer.bootstrap.servers?

      consumer.bootstrap.servers=source1.kafka:9092,source2.kafka:9092
      producer.bootstrap.servers=target.kafka:9092
      medium
      A. "source1.kafka:9092,source2.kafka:9092"
      B. "target.kafka:9092"
      C. "source1.kafka:9092"
      D. "localhost:9092"

      Solution

      1. Step 1: Read the configuration lines carefully

        The snippet shows two properties: consumer.bootstrap.servers and producer.bootstrap.servers with their values.
      2. Step 2: Identify the value assigned to producer.bootstrap.servers

        It is explicitly set to "target.kafka:9092" in the second line.
      3. Final Answer:

        "target.kafka:9092" -> Option B
      4. Quick Check:

        producer.bootstrap.servers = target cluster address [OK]
      Hint: Producer connects to target cluster bootstrap servers [OK]
      Common Mistakes:
      • Mixing consumer and producer server addresses
      • Assuming producer uses source cluster address
      • Ignoring explicit configuration values
      4.

      Identify the error in this MirrorMaker consumer configuration:

      consumer.bootstrap.servers=target.kafka:9092
      consumer.group.id=mirror-group
      medium
      A. consumer.bootstrap.servers should use port 2181
      B. consumer.group.id is missing
      C. consumer.bootstrap.servers should point to the source cluster, not target
      D. consumer.group.id should be unique per topic

      Solution

      1. Step 1: Understand the role of consumer.bootstrap.servers

        This property must point to the source Kafka cluster to read data for replication.
      2. Step 2: Check the given value

        It incorrectly points to "target.kafka:9092", which is the destination cluster, not the source.
      3. Final Answer:

        consumer.bootstrap.servers should point to the source cluster, not target -> Option C
      4. Quick Check:

        Consumer connects to source cluster [OK]
      Hint: Consumer must connect to source cluster, not target [OK]
      Common Mistakes:
      • Using target cluster address for consumer.bootstrap.servers
      • Confusing ZooKeeper port with Kafka broker port
      • Assuming group.id is missing when it is present
      5.

      You want to replicate only topics starting with logs- from the source cluster to the target cluster using MirrorMaker. Which configuration property should you set to filter these topics?

      hard
      A. consumer.topic.filter=logs-*
      B. producer.topic.filter=logs-*
      C. mirror.topic.prefix=logs-
      D. consumer.topic.whitelist=logs-*

      Solution

      1. Step 1: Identify the property to filter topics in MirrorMaker

        MirrorMaker uses consumer.topic.whitelist to specify which topics to consume from the source cluster.
      2. Step 2: Match the pattern for topics starting with 'logs-'

        The pattern "logs-*" matches all topics starting with "logs-".
      3. Final Answer:

        consumer.topic.whitelist=logs-* -> Option D
      4. Quick Check:

        Use consumer.topic.whitelist to filter topics [OK]
      Hint: Use consumer.topic.whitelist to select topics by pattern [OK]
      Common Mistakes:
      • Using producer.topic.filter which does not exist
      • Confusing mirror.topic.prefix with filtering
      • Using consumer.topic.filter instead of whitelist
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard