Мне нужно перенести в Spark 2.1 приложение, написанное на Scala 2.10.4 с использованием Spark 1.6.
Приложение обрабатывает текстовые файлы размером около 7 ГБ и содержит несколько преобразований rdd.
Мне сказали попробовать перекомпилировать его с помощью scala 2.11, чего должно быть достаточно, чтобы он работал со Spark 2.1.Это звучит странно для меня, так как я знаю, что в Spark 2 есть некоторые важные изменения, такие как:
- Введение объекта SparkSession
- Слияние API-интерфейсов DataSet и DataFrame
Мне удалось перекомпилировать приложение в spark 2 с scala 2.11 с незначительными изменениями из-за регистрации в Kryo Serializer.У меня все еще есть ошибка времени выполнения, которую я пытаюсь устранить, и я пытаюсь выяснить, что будет дальше.
Мой вопрос касается того, какие изменения являются «необходимыми» для того, чтобы приложение работало, как раньше, икакие изменения «рекомендуются» с точки зрения оптимизации производительности (мне нужно сохранить хотя бы тот же уровень производительности), и все, что вы считаете полезным для новичка в spark:).
Заранее спасибо!