Я думаю, что установка linger.ms
в ненулевое значение поможет. Так как он контролирует количество времени ожидания дополнительных сообщений перед отправкой текущего пакета. Код может выглядеть следующим образом
df.write.format("kafka").option("linger.ms", "100").save()
Но это действительно зависит от многих вещей. Если ваш Kafka достаточно «большой» и настроен правильно, я бы не стал сильно беспокоиться о скорости. В конце концов, kafka разработан, чтобы справиться с этой ситуацией (всплеск трафика).