[Документация Yandex Cloud](../../index.md) > [Yandex Managed Service for Apache Kafka®](../index.md) > [Концепции](index.md) > Топики и разделы

# Топики и разделы

## Топики {#topics}

Топик — это способ группировки потоков сообщений по категориям. [Производители](producers-consumers.md) публикуют сообщения определенной категории в топик, а [потребители](producers-consumers.md) подписываются на этот топик и читают из него сообщения. Для каждого топика Apache Kafka® ведет лог сообщений, который может быть разбит на несколько разделов.

Например, если производителем данных выступает интернет-магазин, вы можете создать отдельные топики для логирования действий пользователя, для хранения данных о его корзине, для записей о транзакциях и т. д.

Managed Service for Apache Kafka® управляет хранением сообщений в топике и обеспечивает:

- Репликацию разделов — при условии, что кластер состоит хотя бы из двух [брокеров](brokers.md) и для топиков задан фактор репликации больше единицы.
- Сжатие сообщений.
- Очистку лога [в соответствии с политикой](../operations/cluster-topics.md#create-topic) при устаревании сообщений в разделах или достижении заданного размера лога.

Подробнее о топиках смотрите в [документации Apache Kafka®](https://kafka.apache.org/42/getting-started/introduction/#main-concepts-and-terminology).

### Служебные топики {#service-topics}

В процессе своей работы Managed Service for Apache Kafka® может создавать и использовать служебные топики. Записывать пользовательские данные в такие топики нельзя.

Служебный топик `__schema_registry` используется для обеспечения работы [Managed Schema Registry](managed-schema-registry.md).

Служебные топики `__connect-configs`, `__connect-offsets`, `__connect-status` используются для обеспечения работы [Managed Kafka Connect](connectors.md).

## Разделы {#partitions}

Раздел — это последовательность сообщений топика, которые упорядочены в порядке их поступления. Порядковый номер сообщения называют смещением. Потребители читают сообщения от начала к концу раздела, то есть первыми будут прочитаны те сообщения, которые поступили раньше. Чтобы начать читать с определенного сообщения, потребители должны передать брокеру его смещение.

Использование разделов позволяет:

- Распределять нагрузку по хранению сообщений и обработке запросов между несколькими [брокерами Apache Kafka®](brokers.md).
- Обеспечивать отказоустойчивость: раздел может реплицироваться на указанное число брокеров.

Подробнее о разделах смотрите в [документации Apache Kafka®](https://kafka.apache.org/42/getting-started/introduction/#main-concepts-and-terminology).

## Управление топиками и разделами {#management}

Кластер Managed Service for Apache Kafka® позволяет управлять топиками и разделами двумя способами:

* С помощью стандартных интерфейсов Yandex Cloud (консоль управления, CLI, Terraform, [API](../../glossary/rest-api.md)). Способ подходит, если вы хотите создавать, удалять и настраивать топики и разделы, используя возможности сервиса Managed Service for Apache Kafka®.

* С помощью [Admin API Apache Kafka®](https://kafka.apache.org/42/apis/#admin-api). Способ подходит, если у вас уже есть собственное решение для управления топиками и разделами. При использовании Admin API действуют ограничения:

    * Для управления топиками используются:
       * пользователь-администратор с ролью `ACCESS_ROLE_ADMIN`, которая действует для всех топиков кластера. Если такого пользователя в кластере нет, [создайте](../operations/cluster-accounts.md) его;
       * пользователь с ролью `ACCESS_ROLE_TOPIC_ADMIN`, которая задается на произвольные топики.
    
       [Подробнее](account-roles.md) о правах, которые предоставляет каждая роль.
    
    * Права доступа пользователей для [производителей и потребителей](producers-consumers.md) настраиваются с помощью стандартных интерфейсов Yandex Cloud, а не Admin API Apache Kafka®.

Оба способа можно использовать как по отдельности, так и совместно.