Мне нужно присоединиться к двум большим RDD и потенциально дважды. Любая помощь приветствуется для разработки этих объединений.Как создать это искровое соединение
Вот проблема,
Первый РДД является
productIdA, productIdB, similarity
и размер около 100G.Второй RDD -
customerId, productId, boughtPrice
и размер около 35G.Результат RDD Я хочу
productIdA, productIdB, similarity, customerIds bought both product A and B
.Потому что я не могу транслировать либо из РДА, так как они довольно большие, мой дизайн агрегировать второй RDD по
product id
затем присоединиться к первому RDDtwice
но я получаю огромный разлив в случайном порядке и все виды ошибок (ООМ или из космоса из-за перетасовки). Отложите ошибки в сторону, я хотел бы знать, есть ли лучший способ добиться того же результата. Спасибо
Как рассчитывается «подобие»? – zero323
Что именно вы хотите получить? Какие критерии поиска у вас есть? План объединения зависит от того, что вы ищете и сколько результатов вы хотите получить. Иногда более продуктивно иметь временную таблицу и так далее. Дайте нам много подробностей. Это одноразовый запрос или обычный? Огромные запросы данных очень специфичны. Помогите нам как можно больше. – Mita
@ zero323 Сходство рассчитывается другим компонентом с использованием функций продукта, таких как цена, вендинг и т. Д. –