我正在尝试获取LibreOffice的Base v5.1.4.2,在Ubuntu v16.04上运行,通过JDBC连接到Hive v1.2.1数据库。我将以下从Maven Central下载的jar添加到LibreOffice的类路径('Tools - > LibreOffice - > Advanced - > Class Path'):
hive-common-1.2.1.jar
hive-jdbc-1.2.1.jar
hive-metastore-1.2.1.jar
hive-service-1.2.1.jar
hadoop-common-2.6.2.jar
httpclient-4.4.jar
httpcore-4.4.jar
libthrift-0.9.2.jar
commons-logging-1.1.3.jar
slf4j-api-1.7.5.jar
然后我重新启动了LibreOffice,打开了Base,选择了“连接到现有数据库” - > 'JDBC'并设置以下属性:
我输入了凭据并单击了“测试连接”按钮,该按钮返回“连接已成功建立”消息。太好了!
在LibreOffice Base UI中,“Tables”面板下的选项显示为灰色。查询选项卡中的选项不是,所以我尝试连接到Hive。
“使用向导创建查询”选项提示输入密码,然后返回“无法检索'airline.on_time_performance'中的字段名称。”
JDBC连接 能够连接到Hive并列出表,尽管它似乎在检索列时遇到问题。当我尝试执行一个简单的select语句时,“在SQL视图中创建查询”选项会返回一个有点神秘的“Method not supported”消息:
错误消息有点模糊。我怀疑我可能错过了一个依赖项,因为我 能够使用JDBC从Java连接到Hive。
我很想知道社区中是否有人让LibreOffice Base与Hive合作。如果是这样,我错过了什么?
答案 0 :(得分:1)
Apache JDBC驱动程序报告"方法不支持" 用于大多数功能,只是因为Apache提交者不愿意处理简单列表yes/no
API调用。咄。
如果您想自己查看,只需download DBVisualizer Free,请配置Apache Hive驱动程序,打开连接,然后检查数据库信息选项卡。
现在,DBVis对于蹩脚的驱动程序非常宽容,但似乎LibreOffice不是。
您可以尝试使用Cloudera Hive JDBC driver作为替代方案。你只需要注册" - 即保留您的电子邮件地址 - 以访问下载URL;它的部署比Apache的更简单(基于Simba SDK,所有特定于Hive的JAR都捆绑在一起),它适用于任何BI工具。所以希望它也适用于LibreThing。
免责声明:我希望Apache发行版有一个合适的JDBC驱动程序,任何人都可以使用它而不是依赖于" free"商业软件。但就目前而言,这只是一个愿望。