1. 程式人生 > >load data inpath出錯原因及解決方法

load data inpath出錯原因及解決方法

別名 and err failed 導入 ase line 解決 機器名

hive> load data inpath "hdfs://Master.hdp:9000/person.txt" into table Person1;
FAILED: SemanticException [Error 10028]: Line 1:17 Path is not legal ‘"hdfs://Master.hdp:9000/person.txt"‘: Move from: hdfs://Master.hdp:9000/person.txt to: hdfs://192.168.153.202:9000/user/hive/warehouse/dbmaster1.db/person1 is not valid. Please check that values for params "default.fs.name" and "hive.metastore.warehouse.dir" do not conflict.

技術分享

通常報這個錯是因為程序會check兩個路徑的schema是否一致,這裏的schema就是namenode名稱,也是namenode的操作系統的機器名,這裏一個是配置的是IP:192.168.153.202,另外一個用的是別名,所以報錯。 SQOOP先把數據導入到hdfs某一路徑,這一路徑是有hadoop裏面的core-site.xml裏面的default.fs.name配置決定的,然後再在hive的元數據庫裏面建表,然後用hive的load 文件到hive的方法把數據導入到hive,存儲路徑是hive的內部表的路徑,由hive-site.xml的hive.metastore.warehouse.dir決定。 解決方法:1. 修改hive-site.xml文件: hive.metastore.warehouse.dir修改為hefs://192.168.153.202:9000/user/hive/warehouse 2.不使用別名,配置文件裏面配的是IP名就寫IP名。 技術分享

load data inpath出錯原因及解決方法