閱讀866 返回首頁    go 阿裏雲 go 技術社區[雲棲]


類型轉換__進階與深入_數據集成-阿裏雲

由於曆史遺留問題,CDP在麵對各類異構數據同步過程仍然難以避免源宿兩端數據類型不匹配情況,例如用戶需要從Mysql的Varchar類型導入ODPS的BIGINT類型。對於較為通用的數據類型轉換CDP自身提供了統一的框架級定義,方便用戶需要在不同數據類型中做轉換。

類型 轉換 Long Double String Date Bool Byte
Long Y Y Y [1] [2] N
Double Y Y Y N N N
String [3] [4] Y [5] [6] N
Date [7] N [8] Y N N
Bool [9] N Y N Y N
Bytes N N [10] N N Y

CDP默認的類型轉換規則處理了大部分通用的數據轉換規則。針對部分數據類型轉換,CDP規則需要用戶知曉:

[1] Long轉換為Date,將Long數值視作Java提供Unix時間戳轉換為Date,精度為毫秒。

[2] Long轉換為Bool,0視為false,否則為true

[3] String轉換為Long,整數型字符串支持轉換為Long,否則報錯。不支持科學計數法字符串。

[4] String轉換為Double,浮點型字符串支持轉換為Long,否則報錯。不支持科學計數法。

[5] String轉換為Date,用戶自定義時間格式(例如YYYY-MM-DD),滿足用戶時間格式可以轉換,否則報錯。

[6] String轉換為Bool,“true”轉為true,”false”轉為false,其他報錯。

[7] Date轉為Long,將Date轉為Unix時間戳。

[8] Date轉換為String,根據用戶自定義時間格式(例如YYYY-MM-DD)轉換為字符串。

[9] Bool轉換為Long,true轉為1,false轉為0。

[10] Bytes轉換為String,根據用戶指定的字符集編碼轉為String。

注意:CDP傳輸過程中自動進行編碼轉換,例如CDP自動從Mysql GBK的字段導入ODPS UTF-8字段,用戶不需要幹預。

最後更新:2016-05-06 10:43:33

  上一篇:go 數據類型支持情況__進階與深入_數據集成-阿裏雲
  下一篇:go 可重跑與冪等性__進階與深入_數據集成-阿裏雲