我已经使用 --as-sequencefile 选项将一个表从 MySql 导入到 HDFS 中。然后,我创建了一个带有 STORED AS SEQUENCEFILE 子句和 LOCATION 子句的 Hive 表,它指向 Sqoop 导入的序列文件所在的 HDFS 位置。
Sqoop 导入命令:
sqoop import --connect jdbc:mysql://sandbox.hortonworks.com:3306/hirw --username root --password hadoop --table stocks -m 2 --as-sequencefile --target-dir /user/root/output/hirw/sqoopimport/stocks_seq --delete-target-dir
Hive 表创建
CREATE TABLE stocks_sqoop_seq (id int, symbol string, name string, trade_date date, close_price float, volume int, update_time timestamp) STORED AS SEQUENCEFILE LOCATION '/user/root/output/hirw/sqoopimport/stocks_seq';
当我现在尝试查询表时,它失败并出现异常
Failed with exception java.io.IOException:java.lang.RuntimeException: java.io.IOException: WritableName can't load class: stocks
我错过了什么吗