В соответствии с лучшими практиками Databricks Spark groupByKey
следует избегать, поскольку обработка Spark groupByKey
работает таким образом, что информация будет сначала перетасоваться между рабочими, а затем будет выполнена обработка. Объяснение
Итак, мой вопрос в том, каковы альтернативы для groupByKey
таким образом, что он будет возвращать следующее распределенным и быстрым способом?
// want this
{"key1": "1", "key1": "2", "key1": "3", "key2": "55", "key2": "66"}
// to become this
{"key1": ["1","2","3"], "key2": ["55","66"]}
Мне кажется, что, возможно, aggregateByKey
или glom
могли сделать это сначала в разделе (map
), а затем объединить все списки вместе (reduce
).