ITPub博客

首页 > 应用开发 > IT综合 > FineReport中hadoop,hive数据库连接解决方案

FineReport中hadoop,hive数据库连接解决方案

原创 IT综合 作者:leogogo100 时间:2015-12-17 09:32:40 0 删除 编辑

1. 描述

Hadoop是个很流行的分布式计算解决方案,Hive是基于hadoop的数据分析工具。一般来说我们对Hive的操作都是通过cli来进行,也就是Linux的控制台,但是,这样做本质上是每个连接都存放一个元数据,各个之间都不相同,这样的模式用来做一些测试比较合适,并不适合做产品的开发和应用。

因此,就产生了Hive的JDBC连接的方式。本文介绍报表开发工具FineReport中,hadoop、hive数据库连接方法。

2. 步骤

Hive提供了jdbc驱动,使得我们可以连接Hive并进行一些类关系型数据库的sql语句查询等操作,首先我们需要将这些驱动拷贝到报表工程下面,然后再建立连接,最后通过连接进行数据查询。

2.1 拷贝jar包到FR工程

将hadoop里的hadoop-common.jar拷贝至报表工程appname/WEB-INF/lib下;

将hive里的hive-exec.jar、hive-jdbc.jar、hive-metastore.jar、hive-service.jar、libfb303.jar、log4j.jar、slf4j-api.jar、slf4j-log4j12.jar拷贝至报表工程appname/WEB-INF/lib下。

2.2 配置数据连接

启动设计器,打开服务器>定义数据连接,新建JDBC连接。

在Hive 0.11.0版本之前,只有HiveServer服务可用,在程序操作Hive之前,必须在Hive安装的服务器上打开HiveServer服务。而HiveServer本身存在很多问题(比如:安全性、并发性等);针对这些问题,Hive0.11.0版本提供了一个全新的服务:HiveServer2,这个很好的解决HiveServer存在的安全性、并发性等问题,所以下面我们分别介绍HiveServer和HiveServer2配置数据连接的方式。

· HiveServer

数据库驱动:org.apache.hadoop.hive.jdbc.HiveDriver

URL:jdbc:hive://localhost:10000/default

注:hive服务默认端口为10000,根据实际情况修改端口;另外目前只支持默认数据库名default,所有的Hive都支持。

测试连接,提示连接成功即可。


· HiveServer2

数据库驱动:org.apache.hive.jdbc.HiveDriver

URL:jdbc:hive2://localhost:10000/default

注:该连接方式只支持Hive0.11.0及之后版本。


 

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/30056930/viewspace-1873709/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-12-09

  • 博文量
    110
  • 访问量
    109639