Я хочу, чтобы потоковая передача hadoop сортировалась по первым двум столбцам (столбец 1, затем столбец 2) и разделяла первый столбец - PullRequest
0 голосов
/ 18 октября 2019

Я хочу отсортировать мои данные на основе первых двух столбцов, разделить один первый столбец, mapreduce streaming. Я использую следующий скрипт:

  -D stream.num.map.output.key.fields=2 \
  -D num.key.fields.for.partition=1 \
  -D mapreduce.partition.keycomparition.options="-k1,1 -k2" \
  -D mapreduce.partition.keypartitioner.options="-k1" \

Данные:

  column1      column2

  tt1631867    nm0003160
  tt1631867    nm0125336
  tt1631867    nm3890871
  tt1631867    520674
  tt1631867    nm3872326
  .....

Результаты:

Partition1:
tt1631867   520674
tt1631867   nm3872326

Partition2: 
tt1631867   nm0003160
tt1631867   nm0125336
tt1631867   nm3890871

Ожидаемый результат:

Partition1: 
tt1631867   520674
tt1631867   nm0003160
tt1631867   nm0125336
tt1631867   nm3872326        
tt1631867   nm3890871
...

Partition2:
...
...