【问题标题】:Why impala not showing all tables created by Hive为什么 impala 不显示 Hive 创建的所有表
【发布时间】:2018-07-22 22:03:22
【问题描述】:

我已经使用 sqoop 将所有表导入到 Hive 数据库“sqoop_import”中,能够看到成功导入的所有表,如下所示:-

hive> use sqoop_import;
OK
Time taken: 0.026 seconds
hive> show tables;
OK
categories
customers
departments
order_items
orders
products
Time taken: 0.025 seconds, Fetched: 6 row(s)
hive> 

但是当我使用相同的用户从 impala-shell 或 Hue 尝试相同的操作时,它会显示不同的结果,如下所示:-

[quickstart.cloudera:21000] > use sqoop_import;
Query: use sqoop_import
[quickstart.cloudera:21000] > show tables;
Query: show tables
+--------------+
| name         |
+--------------+
| customers    |
| customers_nk |
+--------------+
Fetched 2 row(s) in 0.01s
[quickstart.cloudera:21000] > 

我做错了什么?

【问题讨论】:

标签: hive impala cloudera-cdh cloudera-quickstart-vm


【解决方案1】:

当您将带有sqoop 表导入hive 时,为了通过Impala-Shell 看到它,您应该对特定表INVALIDATE METADATA。因此,从 Impala-Shell 运行以下命令:impala-shell -d DB_NAME -q "INVALIDATE METADATA table_name";

但如果您通过sqoop新数据文件附加到现有表中,则需要执行 REFRESH。因此,从 Impala-Shell 运行以下命令: impala-shell -d DB_NAME -q "REFRESH table_name";.

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-05
    • 1970-01-01
    • 2020-03-01
    • 1970-01-01
    • 2019-01-25
    • 2013-03-15
    • 1970-01-01
    相关资源
    最近更新 更多