【錯誤處理】Spark讀取數據庫 Numberic Overflow

1. 錯誤背景

前些天,Spark讀取Oracle數據庫時發生這個報錯。Numberic Overflow,一般來說就是拿來裝數字的字段類型裝不下了。比如你用 Int類型來裝 Long類型的大數字。一般這種問題,將字段類型增大即可,但幾經嘗試,發現結果並不是如此,不過怎麼加大Spark中對應的字段類型,都無濟於事

2. 錯誤詳情

Oracle表中, 字段【PGI】爲 NUMBER(10),而這個字段中的最大值是 9876543210,也佔10位,剛好用滿。

3. 解決方案

Number(10) 改爲 Number(16),問題成功解決!

4. 不知道如何總結

當大數據組件遇到這類Numberic Overflow錯誤,除了可能是大數據字段支持容量小,還可以考慮增大數據源字段長度

如果這篇文章對您有幫助,麻煩下左下角的贊!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章