3.0確保一致性在統計函數之間的火花,火花3.1及以上

下麵的磚運行時7.3 LTS和統計功能返回NaN除以零發生時。設置一個火花配置返回null。

寫的chetan.kardekar

去年發表在:2022年10月14日

問題

統計功能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代替南當除以零出現在評估一個統計函數。

刪除

信息

你也可以設置這個值在筆記本使用spark.conf.set (“spark.sql.legacy。statisticalAggregate”、“假”)如果你沒有編輯集群的能力火花配置



這篇文章有用嗎?