Улучшение производительности реализации Spark Frequent Pattern Mining - PullRequest
0 голосов
/ 13 октября 2019

Я применяю Spark ML lib API для работы с частыми шаблонами (FPM) над большим набором данных. Это займет много часов или даже день или два в некоторых случаях, чтобы закончить. Реализация FPM в Spark основана на использовании RDD. Кажется, он полагается на древовидную структуру, которая перетасовывается между узлами (предположительно с использованием сериализации Java-объектов): https://github.com/apache/spark/blob/master/mllib/src/main/scala/org/apache/spark/mllib/fpm/FPGrowth.scala#L267

Я читал, что DataFrames и Datasets имеют оптимизации, которые делают их очень производительными. Я изучаю возможность переписать реализацию FPM с использованием DataFrames / Datasets вместо RDD, хотя это может потребовать значительного переосмысления того, как представлять промежуточные данные как Dataframes. У кого-нибудь есть совет? Стоит ли усилий? Любая помощь / понимание очень ценится.

...