> For the complete documentation index, see [llms.txt](https://docs.zeliot.in/condense/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zeliot.in/condense/condense-app-getting-started/kafka-topics.md).

# Kafka Topics

<figure><img src="https://1775139360-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvbacpakLuL4x2VBp2174%2Fuploads%2FiLmPwV7qIVli5oOEslIM%2Fimage.png?alt=media&amp;token=04ada2a5-cb7d-4b72-99d1-6b9f90e285b6" alt=""><figcaption></figcaption></figure>

### Overview

The **Kafka Topics** page in Condense provides a management interface to view, create, and configure topics within a Kafka cluster. From this page, administrators can define replication and partitioning, adjust retention policies, and apply advanced topic-level settings without requiring direct Kafka CLI commands.

Path: **Kafka Management → Kafka Topics**

### Topic List

On the left-hand panel, Condense displays all existing topics in the connected Kafka cluster.

* Topics are listed alphabetically.
* A search box allows filtering by topic name.

<figure><img src="https://1775139360-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvbacpakLuL4x2VBp2174%2Fuploads%2FefTxPRSxDGDfrgaGPrtA%2Fimage.png?alt=media&amp;token=04b273af-38d9-4004-bcff-79ea7497ad31" alt=""><figcaption></figcaption></figure>

* Selecting a topic loads its configuration details in the main panel.

<figure><img src="https://1775139360-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvbacpakLuL4x2VBp2174%2Fuploads%2FN3ycN5aUB9MGE1qqmMvl%2Fimage.png?alt=media&amp;token=3e880198-4b63-4876-9c94-d4afa6429f39" alt=""><figcaption></figcaption></figure>

### Topic Actions

For each topic, Condense provides the following actions in the top-right menu:

* **Messages** → Opens the message viewer for browsing records in the topic.
* **Edit** → Enables modification of topic configuration.

<figure><img src="https://1775139360-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvbacpakLuL4x2VBp2174%2Fuploads%2FpbFsbuWu0bkzalAGS3Az%2Fimage.png?alt=media&amp;token=995a7a1f-0561-4fc8-9322-b744c9b58777" alt=""><figcaption></figcaption></figure>

* **Delete** → Permanently deletes the selected topic from the cluster.

<figure><img src="https://1775139360-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvbacpakLuL4x2VBp2174%2Fuploads%2FFYYQz8ojVQnppB4kXhjI%2Fimage.png?alt=media&amp;token=a837010c-fe98-45af-be14-b999e12d49e7" alt=""><figcaption></figcaption></figure>

Additionally, the **Create Topic** button allows new topic creation with custom parameters.

<figure><img src="https://1775139360-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FvbacpakLuL4x2VBp2174%2Fuploads%2FGDRV6yNd015HZBWHCTw0%2Fimage.png?alt=media&amp;token=f7a8072e-8a20-49ec-830a-aa38b1461833" alt=""><figcaption></figcaption></figure>

### Basic Configuration

When creating or editing a topic, the following required fields must be defined:

| Field                       | Description                                                               | Example |
| --------------------------- | ------------------------------------------------------------------------- | ------- |
| **Replication Factor**      | Number of replicas for each partition. Ensures data availability.         | `3`     |
| **No of Partitions**        | Number of partitions in the topic. Determines parallelism and throughput. | `6`     |
| **Retention Period (days)** | Duration for which messages are retained in the topic before deletion.    | `7`     |

### Advanced Configurations

Advanced settings allow fine-grained control of topic behavior. These fields map directly to Kafka topic configuration parameters.

| Field                                 | Description                                                                     | Example               |
| ------------------------------------- | ------------------------------------------------------------------------------- | --------------------- |
| **Cleanup Policy**                    | Determines log cleanup strategy. Options: `Delete` (default), `Compact`.        | `Delete`              |
| **Delete Retention Period (days)**    | How long delete markers are retained during log compaction.                     | `1`                   |
| **Max Compaction Lag (ms)**           | Maximum time a record can remain uncompacted.                                   | `9223372036854775807` |
| **Max Message Size (bytes)**          | Maximum size of an individual message allowed.                                  | `5242940`             |
| **Message Timestamp After Max (ms)**  | Upper bound for timestamp range in messages.                                    | `9223372036854775807` |
| **Message Timestamp Before Max (ms)** | Lower bound for timestamp range in messages.                                    | `9223372036854775807` |
| **Message Timestamp Type**            | Defines how message timestamps are set. Options: `CreateTime`, `LogAppendTime`. | `CreateTime`          |
| **Min Compaction Lag (ms)**           | Minimum time a record must remain before compaction.                            | `0`                   |
| **Min In-Sync Replicas**              | Minimum number of replicas that must acknowledge a write for it to succeed.     | `1`                   |
| **Retention Size (bytes)**            | Maximum total size of log segments retained before deletion. `-1` = unlimited.  | `-1`                  |
| **Segment Size (bytes)**              | Size of each log segment file before rolling.                                   | `1073741824`          |
| **Segment Period (ms)**               | Time-based rolling interval for log segments.                                   | `604800000`           |

### Usage Notes

* All advanced fields correspond to Kafka’s topic-level configuration properties.
* Fields not explicitly set in Condense will use Kafka cluster defaults.
* Certain changes (e.g., partition count) are not reversible once applied.
* Care must be taken with retention and cleanup policies to avoid unintended data loss.

### Related Sections

* [Resource Utilization](/condense/condense-app-getting-started/resource-utilization.md)
* [ksqlDB](/condense/condense-app-getting-started/ksqldb.md)
