我正在尝试让运行在ubuntuv16.04上的libreoffice的basev5.1.4.2通过jdbc连接到hivev1.2.1数据库。我将从maven central下载的以下jar添加到libreoffice的classpath('tools->libreoffice->advanced->classpath'):
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”,并设置以下属性:
我输入凭据并单击“test connection”按钮,该按钮返回“the connection was established successfully”消息。太好了!
在libreoffice基本ui中,“tables”面板下的选项变灰。“查询”选项卡中的选项不可用,因此我尝试连接到配置单元。
“使用向导创建查询”选项提示输入密码,然后返回“无法检索”“airline.on\u time\u performance”“中的字段名。”
jdbc连接能够连接到hive并列出表,尽管它在检索列时似乎有问题。当我尝试执行一个简单的select语句时,“create query in sql view”选项会返回一个有点神秘的“method not supported”消息:
错误信息有点模糊。我怀疑我可能缺少一个依赖项,因为我可以使用jdbc从java连接到hive。
我很想知道社区里是否有人在libreoffice base上使用hive。如果是,我还缺什么?
1条答案
按热度按时间ha5z0ras1#
apachejdbc驱动程序报告大多数特性都“不支持method”,这只是因为apache提交者没有处理简单的
yes/no
api调用。嗯。如果您想自己查看,只需下载dbvisualizer free,配置apachehive驱动程序,打开一个连接,然后检查database info选项卡。
现在,dbvis对蹩脚的驱动程序相当宽容,但libreoffice似乎不是。
您可以尝试cloudera hive jdbc驱动程序作为替代。您只需“注册”--即留下您的电子邮件地址--即可访问下载url;它比apache更易于部署(基于simbasdk,所有特定于配置单元的jar都是捆绑的),而且它可以与任何bi工具一起工作。所以希望它也适用于唱词。
免责声明:我希望apache发行版有一个合适的jdbc驱动程序,任何人都可以使用它,而不是依赖“免费”的商业软件。但现在这只是一个愿望。