【问题标题】:Getting Error while creating Hive External Table on top of Hbase Table在 Hbase 表上创建 Hive 外部表时出错
【发布时间】:2018-08-10 20:37:23
【问题描述】:

我正在 Hbase 表之上创建 hive 外部表,以便我可以使用 Hive 分析数据,但是当我运行使用 Hbase serde 创建表的脚本时,它会抛出错误“Hbase 表不存在。请检查附件图像错误。请指导。

'

【问题讨论】:

    标签: hive hbase


    【解决方案1】:

    如果您的 HBase 表是在 特定命名空间 (network_tower) 中创建的,那么您并没有提及如何从 HBase 中的特定命名空间访问 表的正确语法。

    在 tblproperties 中包含 :(colon) 以从 HBase 命名空间而不是 .(period)

    访问表

    TBLPROPERTIES("hbase.table.name" = "network_tower:orders")

    HBase-Hive ddl 示例:

    CREATE EXTERNAL TABLE test(rowkey string, ...)
    STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
    WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf:...")
    TBLPROPERTIES("hbase.table.name" = "network_tower:orders");
    

    由于您正在创建外部表,因此 HBase 表需要已经存在,

    确保表存在于 HBase 中。

    bash$ hbase shell
    hbase(main):> scan 'network_tower:orders',{LIMIT=>1}
    

    【讨论】:

    • 你好舒,非常感谢你的回答,我一定会试试这个。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-16
    • 2018-07-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多