Sqoop导入到Hive,Hive使用 HA

Sqoop写入Hive卡在连接Hive的JDBC上不执行

Sqoop访问 启用 HA模式的Hive

找到Hive的安装根目录:$HIVE_HOME/conf

创建一个新的配置文件:beeline-hs2-connection.xml

复制代码
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
 <name>beeline.hs2.connection.user</name>
 <value>hive</value>
</property>
<property>
 <name>beeline.hs2.connection.password</name>
 <value>hive</value>
</property>
</configuration>

beeline.hs2.connection.user:指定Hive访问的用户名

beeline.hs2.connection.password:当前用户名对应的访问密码

重新执行后发现会有新的报错信息:

报错信息

复制代码
23/11/02 13:57:23 INFO hive.HiveImport: Error: Error while compiling statement: FAILED: SemanticException Unable to load data to destination table. Error: The file that you are trying to load does not match the file format of the destination table. (state=42000,code=40000)
23/11/02 13:57:23 INFO hive.HiveImport: Closing: 0: jdbc:hive2://hdp3.node1:2181,hdp3.node2:2181,hdp3.node3:2181/default;password=hive;serviceDiscoveryMode=zooKeeper;user=hive;zooKeeperNamespace=hiveserver2
23/11/02 13:57:23 ERROR tool.ImportTool: Import failed: java.io.IOException: Hive exited with status 2
	at org.apache.sqoop.hive.HiveImport.executeExternalHiveScript(HiveImport.java:253)
	at org.apache.sqoop.hive.HiveImport.importTable(HiveImport.java:206)
	at org.apache.sqoop.hive.HiveImport.importTable(HiveImport.java:273)
	at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:564)
	at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:655)
	at org.apache.sqoop.Sqoop.run(Sqoop.java:151)
	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:82)
	at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:187)
	at org.apache.sqoop.Sqoop.runTool(Sqoop.java:241)
	at org.apache.sqoop.Sqoop.runTool(Sqoop.java:250)
	at org.apache.sqoop.Sqoop.main(Sqoop.java:259)

解决办法:

1-新建一个存储格式为textfile的临时表

复制代码
create table hive_db.hive_01( id string comment 'Id') 
row format delimited fields terminated by '\001' 
stored as textFile;

2-将数据导入临时表中(Sqoop执行的Import写入到临时表中)

3-通过查询插入的方式将临时表数据导入目标表

复制代码
insert into hive_db.hive_table select * from hive_db.hive_01
相关推荐
2401_cf5 小时前
为什么hadoop不用Java的序列化?
java·hadoop·eclipse
钊兵12 小时前
hivesql是什么数据库?
大数据·hive
线条117 小时前
MapReduce Shuffle 全解析:从 Map 端到 Reduce 端的核心数据流
大数据·hadoop·mapreduce
火龙谷1 天前
【hadoop】Kafka 安装部署
大数据·hadoop·kafka
火龙谷2 天前
【hadoop】Flume的相关介绍
大数据·hadoop·flume
薇晶晶2 天前
spark基本介绍
hadoop
IvanCodes2 天前
九、HQL DQL七大查询子句
大数据·数据库·hive
火龙谷2 天前
【hadoop】sqoop案例 hive->mysql
hive·hadoop·sqoop
斑鸠同学2 天前
如何获得sqoop-1.4.6.2.3.99.0-195.jar
jar·sqoop·编译·atlas
薇晶晶2 天前
hadoop中了解yarm
hadoop