Вы можете настроить Spark для создания контрольной точки для HDFS и сохранять смещения Kafka в Zookeeper (или Hbase, или настраивать в другом месте для быстрого, отказоустойчивого поиска)
Хотя, если вы обрабатываете некоторые записи и записываете результаты до того, как сможете зафиксировать смещения, вы в конечном итоге обработаете эти записи при перезапуске. Утверждается, что Spark может делать с Kafka ровно один раз, но это только при правильном управлении смещением, насколько мне известно, например, установите для enable.auto.commit значение false в приоритетах Kafka, а затем выполняйте коммит только после вас ' мы обработали и записали данные в место назначения
Если вы просто перемещаете данные между темами Kafka, Kafka Streams - это встроенная библиотека Kafka, которая не требует YARN или планировщика кластера