問題出現
在將清洗過的log日誌加載進入HIVE這一步中,由於log是採用了json的格式,所以需要使用第三方的jar進行格式轉換。
使用JsonSerde
這裏使用了JsonSerde
在hive shell 中只需要手動臨時添加jar就可以了,但是退出後需要再次添加
add jar /opt/hive_lib/json-serde-1.3.8-jar-with-dependencies.jar
LOAD DATA LOCAL INPATH '/opt/kafaka_log/2017-09-26-py.log' OVERWRITE INTO TABLE test.user_log partition (year=2017,month=09,date='2017-09-26')
永久添加JAR
但是當我們使用腳本進行數據加載的時候就會出現問題,無法成功將數據導入,這時候就需要在CDH中配置一下外部JAR的位置了。
創建目錄/etc/hive/auxlib 並將對應的JAR放在這裏,然後重啓集羣,一切搞定!