спасибо! идея понятна. схлопывать все пары состояний +1/-1, чтобы оставить только последнюю запись... такой ручной мерджинг а-ля FINAL.
звучит, и правда, странно. но попробую сравнить, что получится : )
звучит достаточно затратно в плане потребляемой памяти на хранение всех колонок в хешмапе для групбая
или рискнуть и делать GROUP BY cityHash64(id,value,value) тогда меньше занимает, но колизии, да