一、調度亂碼
在利用HUE工具,搭建WORKFLOW流程的過程中,如果直接執行hivesql數據正常,不會出現亂碼現象,如果利用WORKFLOW搭建的流程,進行數據的拉取,會出現數據中文亂碼現象,這些亂碼主要是由于select 中的硬編碼中文導致出現的現象
具體現象如下:?
select??
?case??
when? a = '' then '中國'
類似這種編碼,導致的結果是:
??
解決方案:
在利用workflow搭建的流程中進行如下配置處理
?在配置調度時,添加配置:
key: yarn.app.mapreduce.am.admin-command-opts
value: -Dfile.encoding=UTF-8
具體位置:
二、Hive 卡在map = 0%, reduce = 0%階段
Hive 卡在map = 0%, reduce = 0%階段
解決:增加map個數,設置mapreduce.input.fileinputformat.split.maxsize 小于系統默認值,需要綜合考慮調用更多map時候的消耗
定位時發現任務卡在map = 0%, reduce = 0%階段,而且發現map分配數量很少,所以猜測分配map較慢,增加map數量可解決問題。
原因:分配map數量少,一個map處理的數據多,處理速度慢
解決:增加map的數據
具體現象: