問題
統計功能covar_samp,峰度,偏態,性病,stddev,stddev_samp,方差,var_samp,還南當一個維由零ivide發生在磚運行時的7.3 LTS表達式求值。相同的函數返回零在磚運行時9.1 LTS以上,以及磚SQL的端點在表達式求值除以零發生時。
這個示例圖像顯示當磚運行時上運行7.3 LTS樣本結果。在除以零發生的情況下,結果是作為南返回。
這個示例圖像顯示當磚運行時上運行9.1 LTS樣本結果。在除以零發生的情況下,返回的結果是零。
導致
行為的變化是由於潛在的變化在Apache火花。
在火花3.0及以下,默認行為返回NaN除以零發生時同時評估統計功能。
在火花3.1這是改變返回零除以零發生時同時評估統計功能。
在改變的更多信息,請檢查火花公關(火星- 13860)。
解決方案
集spark.sql.legacy.statisticalAggregate來假在你的火花配置(AWS|Azure|GCP運行時7.3 LTS)集群運行磚。
這返回null代替南當除以零出現在評估一個統計函數。