說明:
由于之前使用cdh5.4.8,其hive版本為1.1.0,其業務的腳本和jar也在此版本開發,是以有很多依賴性,相容性等等。然後當我們計劃将cdh5.4.8 job遷移至aliyun emr平台上,發現hive-1.1.0-cdh5.4.8與該平台的apache hadoop2.7.2 嚴重不能相容,于是花了很長時間在做這件事--<b>根據業務腳本和jar包定制我們的hive-1.2.1-emr</b><b>版本</b><b>。</b>
其中我們嘗試了以下
hive-1.1.0-apache,
hive-2.0.0-apache,
hive-1.1.0-cdh5.8.0,
hive-1.1.0-cdh5.4.8等版本與apache hadoop2.7.2與腳本内容相容錯誤甚多,且嘗試無法解決,于是選擇hive-1.x.x系列的最新版。
1.download
hive-1.2.1 source code
2.download patch
bug1:<b>add</b>
jar failing with url schemes other than file/ivy/hdfs
<a href="https://issues.apache.org/jira/browse/hive-11920">https://issues.apache.org/jira/browse/hive-11920</a>
3.patch
hive-11920.1.patch
format:
patch
-p0|-p1 < xxxx.patch
如果使用參數-p0,就表示從目前目錄,找一個叫作b的目錄,在它下面找一個叫ql的目錄,再在它下面找一個叫src的目錄。
如果使用參數-p1,
就表示忽略第一層,從目前目錄找一個叫ql的目錄,在它下面找一個叫src的目錄。這樣會忽略掉更新檔頭提到的b目錄。
4.download
maven tool and configure parameter
5.compile
hive-1.2.1
6.upload
mysql-connector-java-5.1.36-bin.jar
7.modify hive-site.xml
8.rerun
tar hive files