Сколько партиций в Kafka мне нужно?
Партиции — это одна из важнейших частей Kafka. С их помощью обеспечиваются порядок, структура и масштабирование топиков. Но выбор числа партиций может внезапно стать непростой задачей. В статье разбираются основы партиций и «rules of thumb» при работе с ними.
⭐️ Интересные идеи
➡️ Большее количество партиций — это не только увеличенная пропускная способность, но ещё и более длительные даунтаймы, больше открытых файлов на брокерах и более высокое потребление RAM.
➡️ У Kafka нет жёстких лимитов на количество партиций, но есть некоторые общие правила: 4000 партиций на брокер, 200 000 партиций на кластер, 50 брокеров на кластер.
➡️ Не используйте простые числа при определении числа партиций. Они плохо делятся на другие числа, что может приводить к сложностям при изменении количества партиций и «перегретым» партициям.
➡️ Рекомендуется использовать одинаковое количество партиций во всех топиках одного кластера. Это упрощает подключение групп консюмеров.
➡️ Опирайтесь на измерения производительности. Если вы знаете, какая вам нужна пропускная способность и какую пропускную способность обеспечивает каждая партиция / каждый консюмер, то сможете рассчитать необходимое количество партиций.
➡️ Не увлекайтесь: для тысячи сообщений в день вряд ли нужны сотни партиций.
➡️ 12 партиций — хороший гайдлайн. Если данных мало, можно сделать и меньше (2/4/6).
Приятного чтения!
➖➖➖➖➖➖➖➖➖➖➖
// Понравился пост? Ставь 💛
// И обязательно подпишись на канал, чтобы не пропустить новые статьи
Post #57
353