Скользящие агрегаты
В SQL/MR имеется механизм для вычисления в SQL/MR-функции скользящих SQL-агрегатов над данными. Это позволяет функции обеспечивать для своих пользователей полный набор знакомых SQL-агрегатов с минимальными усилиями. Функция может запросить новый скользящий агрегат по имени и типу (например, avg(numeric)), изменять этот агрегат с использованием новых значений, запрашивать текущее значение агрегата и сбрасывать значение агрегата. Динамически можно запрашивать агрегаты над данными любого типа, что полезно для полиморфных функций, которые невозможно разрабатывать в расчете на конкретные типы данных. Кроме того, эти агрегаты соответствуют семантике SQL, которая для некоторых типов данных является достаточно изощренной.