2017-04-07 59 views
0

我有一個HANA Express VM,我想與Hadoop集羣進行交互。我有一個通過智能數據訪問(SDA)連接到HANA的Hive表。一切工作正常與虛擬表,我可以使用SAP HANA Studio進行查詢蜂房數據(select語句),但是當我嘗試計數表中的行,我在HANA工作室得到一個異常:SAP HANA智能數據訪問:無法統計虛擬表(Hive)的行

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
  • ...

當我從蜂巢UI叫select count(*) from orctable,everythigns工作正常。

我也發現了這個教程,其中一個SELECT COUNT(*)是針對一個虛擬的蜂巢表進行:https://blogs.sap.com/2014/06/02/sap-hana-smart-data-access3-how-to-access-hadoop-data-through-hive-with-sda/

我使用的是最新的HANA快,對SUSE 12和HDP 2.5蜂巢ODBC驅動程序v2.1.7的VM具有Hive 1.2.1的羣集。

有其他人這個問題或猜測爲什麼這不起作用或已經是一個解決方案?

回答

0

找到一個解決辦法:

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

您是否嘗試過從Hive ui的錯誤日誌中運行語句?

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

,是一個簡單的選擇沒有計數的工作?

+0

一個簡單的'選擇 「系統」 「orctable」 *'工作。命令'SELECT COUNT(*)FROM「HIVE.default.orctable」「orctable」'帶來異常'SAP DBTech JDBC:[259]:無效的表名:在模式SYSTEM中找不到表/視圖HIVE.default.orctable :第1行col 22(位於21)' –

+0

你可以嘗試SELECT COUNT(*)從HIVE.default.orctable orctable沒有雙引號? –