Я думал, что при параллелизме 16 должно быть строгое распределение по всем подзадачамJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Я думал, что при параллелизме 16 должно быть строгое распределение по всем подзадачам

Сообщение Anonymous »

У меня есть приложение Flink, в котором я использую TumblingEventTimeWindows и функцию обработки

Код: Выделить всё

DataStream processedEvents = rawEvents
.keyBy(eventMap -> {
return calculateKey(eventMap.get("id").toString());
})
.window(TumblingEventTimeWindows.of(Duration.ofSeconds(30)))
.allowedLateness(Duration.ofSeconds(3))
.process(new CustomProcessWindowFunction())
.setParallelism(16);
calculateKey — всегда возвращает число от 0 до 16. Я думал, что при параллелизме 16 должно быть строгое распределение по всем подзадачам, но вместо этого получаю 5 простаивающих задач и несколько перегруженных
calculateKey — всегда возвращает число от 0 до 16. Я думал, что при параллелизме 16 должно быть строгое распределение по всем подзадачам, но вместо этого получаю 5 простаивающих задач и несколько перегруженных
calculateKey p>
Пробовал добавлять разбиение, менять хэш — ни один из подходов не дал результатов.
Есть ли способ сделать так, чтобы каждая подзадача обрабатывала не более одного ключа?Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/790 ... -across-al
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»