hadoop - Sqoop 导入后无法查询 Hive 表

标签 hadoop hive sqoop

我通过 sqoop 将 oracle 数据库的几个表导入到 hive 中。该命令看起来像这样:

./sqoop import --connect jdbc:oracle:thin:@//185.2.252.52:1521/orcl --username USER_NAME --password test --table TABLENAME--hive-import

我正在使用嵌入式 Metastore(至少我是这么认为的。在这方面我没有更改默认配置)。当我在 HIVE 中执行 SHOW TABLES 时,导入的表不会显示,但我创建的一些表会通过命令行进行测试。这些表都在 hdfs 上的同一个仓库目录中。似乎 sqoop 导入没有使用相同的元存储。

但是它在哪里呢?以及如何在使用命令行查询时切换到它?

谢谢

最佳答案

我认为整个问题都在嵌入式 Metastore 中,因为 HIVE 会在默认情况下不存在于用户当前工作目录中的情况下创建它。因此 Sqoop 最终将使用与 hive 不同的元存储。我建议将 MySQL 配置为 Metastore 的后端。

关于hadoop - Sqoop 导入后无法查询 Hive 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14276707/

相关文章:

sql-server - 如何将特定模式的数据从 SQL Server 2014 (Unicode) 导入 Hive 仓库

hadoop - Sqoop增量追加模式不为--check-column导入空行,此列为时间戳,值为空

hadoop - 连接已被127.0.0.1关闭

hadoop - 用 pig 散装

apache-spark - 将数据写入Hive事务表

java - 当有大约 100 万条记录时,如何在 Java 中比较 Hive 和 Cassandra 数据

hive - 从 Pig 保存到 Hive 表的问题

java - 如何将表导入本地文件系统?

hadoop - Sqoop 运行到本地作业运行器模式

java - 从映射器发出列表