我使用的是带有hana express 2 sp 01的虚拟机。在一个小的测试集群上,我安装了hortonworks数据平台2.6和spark1.6.3,还添加了hanavora1.4和sparkcontroller2.1。
我遵循了sap vora安装和管理指南:https://help.sap.com/http.svc/rc/f09ec811fe634f588647c342cac84c38/1.4/en-us/sap_vora_installation_admin_guide_1.4_en.pdf 直到第2.9章。一切正常,但齐柏林飞艇部分有%jdbc解释器:
%jdbc
select * from sys.tables using com.sap.spark.engines
============================================================
java.lang.NoSuchMethodError: org.apache.hive.service.cli.thrift.TExecuteStatementReq.setQueryTimeout(J)V
...
这里我得到一个nosuchmethoderror。但是,如果我按照下一章(2.9将sap hana spark controller连接到sap vora)中的说明操作,我也无法将vora数据源中的表添加到我的hana express数据库中。另请参见此屏幕截图:
2条答案
按热度按时间hwamh0ep1#
问题的根本原因:
相关的sap vora磁盘表或关系表具有一列或多列数据类型string、varchar(n)或char(n),这些数据类型隐式转换为varchar()或char()。但是,sap hana只支持最大大小为varchar(2000)或char(5000)的这些数据类型,因此sap hana将由于与vora不兼容而运行时出现异常。
为了能够将vora表作为虚拟表添加到hana中,您需要使用tableschema选项在vora中创建表。pfb示例创建:
6kkfgxo02#
关于java.lang.nosuchmethoderror,很可能附加了错误的配置单元jar文件。
你评论中的链接是指spark控制器,但在这篇文章/问题中,你使用的是hana连线。这两种方法都是从vora添加虚拟表的有效方法。
您在这里遇到的问题在vora故障排除指南的第3.3节中进行了处理