Встречается на 2% собеседований по Java

Что такое Transaction Log в Kafka

Transaction Log в Kafka — это механизм для обеспечения атомарности и изоляции операций. Он хранит все изменения в топиках в виде последовательности записей (records), гарантируя их порядок и надежность.

Ключевые особенности:

  • Упорядоченность: записи в партиции строго упорядочены по offset.
  • Долговечность: данные сохраняются на диск и реплицируются для отказоустойчивости.
  • Транзакции: поддерживает атомарные операции (например, запись в несколько топиков).

Пример транзакции:

java
try (Producer<String, String> producer = new KafkaProducer<>(props)) {
    producer.initTransactions();  
    producer.beginTransaction();  
    producer.send(new ProducerRecord<>("topic1", "key1", "value1"));  
    producer.send(new ProducerRecord<>("topic2", "key2", "value2"));  
    producer.commitTransaction();  
} catch (Exception e) {  
    producer.abortTransaction();  
}

Если произойдет ошибка, Kafka откатит все изменения в рамках транзакции.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы