Spark 2.4の使用からSpark 3.0.2の使用へのデータ・フロー・アプリケーションの移行
Spark 2.4.4ではなくSpark 3.0.2を使用するようデータ・フローを移行する方法について学習します。
データ・フローでは、Spark 2.4.4とSpark 3.0.2の両方がサポートされるようになりました。この章では、既存のデータ・フロー・アプリケーションをSpark 2.4.4からSpark 3.0.2に移行する場合に実行する必要がある内容について説明します。
Spark 3.0.2へのデータ・フローの移行
データ・フローをSpark 2.4.4からSpark 3.0.2に移行するステップおよび注意が必要な問題。
タイムスタンプまたは日付の文字列解析時のエラー
Spark 2.4.4からSpark 3.0.2に移行した日付またはタイムスタンプの文字列に関連するデータ・フローの解析エラーや書式設定エラーを解決する方法について学習します。
データ・フロー・アプリケーションをSpark 3.0.2に移行すると、アプリケーションの実行時に次のエラーが表示されます:
org.apache.spark.SparkUpgradeException: You may get a different result due to the upgrading of Spark 3.0: Fail to recognize 'MMMMM' pattern in the DateTimeFormatter.
修正するには、spark.sql.legacy.timeParserPolicy
をLEGACY
に設定します。アプリケーションを再実行します。