Выбор редуктора в улье - PullRequest
       24

Выбор редуктора в улье

1 голос
/ 23 января 2020

У меня есть следующий набор записей для обработки, подобный

 1000, 1001, 1002 to 1999,
 2000, 2001, 2002 to 2999,
 3000, 3001, 3002 to 3999

И я хочу обработать следующий набор записей с использованием HIVE таким образом, чтобы редуктор-1 обрабатывал данные с 1000 по 1999 и редуктор-2 обработает данные с 2000 по 2999, а редуктор-3 обработает данные с 3000 до 3999.Помогите мне решить вышеуказанную проблему.

1 Ответ

1 голос
/ 24 января 2020

Использование DISTRIBUTE BY, выходные данные картографических группировок в соответствии с предложением «Распределить по» для передачи редукторам для обработки:

select ...
  from ...
distribute by case when col between 1000 and 1999 then 1
                   when col between 2000 and 2999 then 2
                   when col between 3000 and 3999 then 3
               end

Или просто

distribute by floor(col/1000)

...