首页 文章

SAP HANA智能数据访问:无法计算虚拟表行(Hive)

提问于
浏览
0

我有一个HANA Express VM,我想与Hadoop集群进行交互 . 我有一个Hive表,我通过智能数据访问(SDA)连接到HANA . 虚拟表一切正常,我可以使用SAP HANA Studio查询Hive数据( select 语句),但是当我尝试计算表行时,我的HANA Studio中出现异常:

SELECT count(*) FROM "SYSTEM"."orctable";

导致以下异常:

Could not execute 'SELECT count(*) FROM "SYSTEM"."orctable"' in 602 ms 558 µs . 
SAP DBTech JDBC: [403]: internal error: Error opening the cursor for the remote database [Hortonworks][Hardy] (35) Error from server: error code: '0' error message: 'ExecuteStatement finished with operation state: ERROR_STATE'. for query "SELECT COUNT(*) FROM HIVE.default.orctable orctable "

我还在HANA中为虚拟表名称( ORCTABLE )添加了一个使用大写字母的新虚拟表,因为HANA使用大写字母作为默认值,同样的错误!其他尝试:

  • SELECT count(1) FROM "SYSTEM"."orctable"

  • SELECT count(columnA) FROM "SYSTEM"."orctable"

  • SELECT count(A.*) FROM "SYSTEM"."orctable" as A

  • ......

当我从我的Hive UI调用 select count(*) from orctable 时,每个标记都可以正常工作 .

我还发现本教程中的 SELECT COUNT(*) 是针对虚拟Hive表的:https://blogs.sap.com/2014/06/02/sap-hana-smart-data-access3-how-to-access-hadoop-data-through-hive-with-sda/

我正在使用最新的HANA Express VM,用于SUSE 12的Hive ODBC驱动程序v2.1.7和带有Hive 1.2.1的HDP 2.5群集 .

有其他人这个问题或猜测为什么这不起作用或已经解决?

2 回答

  • 0

    您是否尝试过从Hive ui运行错误日志中的语句?

    SELECT COUNT(*)FROM HIVE.default.orctable orctable

    并且是一个简单的选择,没有计数工作?

  • 0

    找到了一个解决方法:

    SELECT COUNT(*) FROM (SELECT * FROM "SYSTEM"."orctable");
    

相关问题