Я использую Hadoop + Cassandra.Я использую setInputSplitSize (1000), чтобы не перегружать мапперы (и получать из кучи памяти), по умолчанию это 64K.Все вместе у меня есть только 2M строк для обработки.На самом деле каждый сплит должен быть ~ 1000 строк.
Проблема в том, что некоторые преобразователи все еще получают строки по 64 КБ, и я не знаю, почему.Обычно есть 2-3 картографа, которые имеют в статусе 4000% 64000% вместо 100%.Когда я проверял журнал, я нашел обработанные строки 40K-64K.Это не сбой или не выделение памяти, но эти 2-3 задачи начинаются в середине обработки и продолжаются в течение 2-3 часов после того, как все остальные процессы были.Что я могу сделать, чтобы разделить сплошной размер?
Заранее спасибо!