arrow-progressRouting Records

Control where records are sent when replicating.

circle-exclamation

K2K can seamlessly redirect records from a topic in one Kafka Cluster to an identically named topic in a target Kafka Cluster. Additionally, K2K provides advanced routing options for customized configurations. This guide explores the various options available for routing records where desired.

This tutorial assumes the following files exist (See Setting up for more details):

name: "my-first-replication"
features:
  autoCreateControlTopics: enabled
  autoCreateTopics: enabled
source:
  kafka:
    common:
      "bootstrap.servers": "kafka-source:9092"
    consumer:
      "group.id": "k2k.my-first-k2k"
target:
  kafka:
    common:
      "bootstrap.servers": "kafka-target:9092"
replication:
  - source:
      topic: ".*"
  - sink:
      topic: source
      partition: source

To ensure a clean start, execute this command to reset any prior configurations from earlier tutorials.

Use the same topic name

K2K sends records to a topic that shares the same name as the source topic.

chevron-rightk2k-pipeline.ymlhashtag
chevron-rightSee it in actionhashtag

Adding prefix/suffix

K2K allows you to map a source cluster topic to a target topic by adding prefixes and/or suffixes to the original topic name. You can configure these options individually or together:

  • Prefix: Attach a string to the start of the topic name.

  • Suffix: Append a string to the end of the topic name.

chevron-rightk2k-pipeline.ymlhashtag

Replicate multiple topics to one topic

To consolidate data from multiple source cluster topics to a single target cluster topic, use the following configuration:

chevron-rightk2k-pipeline.ymlhashtag

Topics Mapping

K2K routes records by matching topic names with a list of regular expressions. It processes these rules sequentially, routing the record when a match is found with the source topic.

circle-info

Target cluster topics are created, if they don't exist, only when they match a rule present in the source cluster. If there is no matching topic, none will be created.

chevron-rightk2k-pipeline.ymlhashtag

Last updated

Was this helpful?