我能够使用sqoop成功地将数据从sqlserver导入hdfs。然而,当它试图链接到Hive我得到一个错误。我不确定我是否正确理解了错误
sudo -u hdfs sqoop import \
-Dorg.apache.sqoop.splitter.allow_text_splitter=true \
--connect "jdbc:sqlserver://XX.XX.X.X:1433;instanceName=data-engr-sql-svr; databaseName=AdventureWorks2019" \
--username sa \
--password XXXXXXXX \
--driver com.microsoft.sqlserver.jdbc.SQLServerDriver \
--warehouse-dir "/user/hive/warehouse/AdventureWorks2019.db" \
--hive-import \
--create-hive-table \
--fields-terminated-by ',' \
--hive-table AdventureWorks2019.Production.TransactionHistory \
--table Production.TransactionHistory \
--split-by TransactionID \
-- --schema Production
我不知道如何处理模式,大部分教程都使用没有正确模式的虚拟数据库,这是没有帮助的。
错误
21/03/31 08:52:47 info conf.hiveconf:使用为日志id传入的默认值:95e2b831-cfe5-4108-be0f-0df1d9a8797e 21/03/31 08:52:47 info session.sessionstate:将线程名称更新为95e2b831-cfe5-4108-be0f-0df1d9a8797e main 21/03/31 08:52:47 info conf.hiveconf:使用为日志id传入的默认值:95e2b831-cfe5-4108-be0f-0df1d9a8797e 21/03/31 08:52:47 info ql.driver:编译命令(queryid=hdfs\u 20210331085247\u 050638e8-593a-4d01-8020-c40b7db8e66a):如果不存在,则创建表 AdventureWorks2019.Production.TransactionHistory
( TransactionID
内景, ProductID
内景, ReferenceOrderID
内景, ReferenceOrderLineID
内景, TransactionDate
字符串, TransactionType
字符串, Quantity
内景, ActualCost
加倍, ModifiedDate
字符串)注解'imported by sqoop on 2021/03/31 08:52:45'行格式分隔字段,以'\054'行结尾,以'\012'结尾,存储为textfile 21/03/31 08:52:49 info hive.metastore:hms client filtering已启用。21/03/31 08:52:49 info hive.metastore:正在尝试使用uri连接到metastorethrift://cnt7-naya-cdh63:9083 21/03/31 08:52:49 info hive.metastore:已打开到metastore的连接,当前连接:1 21/03/31 08:52:49 info hive.metastore:已连接到metastore。21/03/31 08:52:49 info parse.semanticanalyzer:启动语义分析失败:semanticexception[error 10255]:表名adventureworks2019.production.transactionhistory无效21/03/31 08:52:49 error ql.driver:失败:semanticexception[error 10255]:表名adventureworks2019.production.transactionhistory无效
1条答案
按热度按时间zte4gxcn1#
在配置单元中的数据库中没有模式这样的东西。
Database
以及schema
意思相同,可以互换使用。所以,这个bug正在使用中
database.schema.table
. 使用database.table
在Hive里。阅读文档:create/drop/alter/usedatabase