-
首先,odps目前不支持修改已有表的列字段數據類型
-
其次,辦法總是有的,以下就是我的方法
1. 在ODPS上建立一個與原表一致的新表tb_tmp ,注意新表要用修改后的字段類型
pass
2. 在ODPS上調用動態分區語句,將原分區表tb的值寫入到新表tb_tmp
INSERT OVERWRITE TABLE tb_tmp PARTITION (partcol1 ...) select col1,col2,partcol1... FROM tb;
3.檢查下原表和新表數據量與分區是否一致
pass
4.刪除原表tb
1 DROP TABLE tb
5.重命名新表tb_tmp為tb
1 ALTER TABLE tb_tmp RENAME TO tb
參考資料:https://help.aliyun.com/document_detail/73779.html?spm=a2c4g.11186623.6.690.645b65d5T9daDG