В настоящее время мы загружаем сообщения Kafka в HDFS, используя Spark Streaming. Пока что мы создали целую работу Spark для каждой темы.
Поскольку сообщения создаются по некоторым темам довольно редко (в среднем по 1 в день), мы думаем об организации загрузки в пуле * 1004. *.
Идея состоит в том, чтобы избежать создания целого контейнера (и связанных ресурсов) для этой "нечастой" темы. Фактически Spark Streaming принимает список тем на входе, поэтому мы думаем об использовании этой функции, чтобы иметь одиночное задание , потребляющее все из них.
Ребята, ребята, вы считаете, что это хорошая стратегия? Мы также подумали о пакетном проглатывании, но нам нравится сохранять поведение в реальном времени, поэтому мы исключили эту опцию. Есть ли у вас какие-либо советы или предложения?
Хорошо ли обрабатывает Spark Streaming несколько тем в качестве источника в случае сбоев с точки зрения согласованности смещений и т. Д.?
Спасибо!