4 回答
TA贡献1772条经验 获得超5个赞
[Hadoop@master ~]$ cd $HIVE_HOME --进入Hive目录
[hadoop@master hive]$ bin/hive --进入hive环境
hive> show databases; 显示已有数据库
hive> use test; 使用数据库
hive> select * from test_1; 显示表中数据
TA贡献1834条经验 获得超8个赞
hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop中的大规模数据的机制。 (1).hive由FaceBook开源用于解决海量结构化日志的数据统计。 (2).hive是基于hadoop的一个数据仓库工具,可以将结构化的数据文件映射成一张表,并提供类SQL查询功能。 (3).hive是构建在hadoop之上的数据仓库:
使用HQL语句作为查询接口
使用HDFS进行存储
使用mapreduce进行计算。 (4).hive本质是:将HQL转化成MapReduce程序。 (5).灵活和扩展性比较好:支持UDF,自定义存储格式。 (6).适合离线处理。 (7).查询和管理在分布式存储的大的数据集(数据库:增删改查,hive不支持增删该)。管理主要是对表的管理。
TA贡献1884条经验 获得超4个赞
步骤
Hive提供了jdbc驱动,使得我们可以连接Hive并进行一些类关系型数据库的sql语句查询等操作,首先我们需要将这些驱动拷贝到报表工程下面,然后再建立连接,最后通过连接进行数据查询。
拷贝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下。
配置数据连接
启动设计器,打开服务器>定义数据连接,新建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都支持。
测试连接,提示连接成功即可。
4
数据库驱动:org.apache.hive.jdbc.HiveDriver;
URL:jdbc:hive2://localhost:10000/default
注:该连接方式只支持Hive0.11.0及之后版本。
添加回答
举报