【大数据系列】Hive安装及web模式管理
一、什么是Hive
Hive是建立在Hadoop基础常的数据仓库基础架构,,它提供了一系列的工具,可以用了进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在Hadoop中的按规模数据的机制。Hive定义了简单的类SQL查询语句,称为HQL。它允许熟悉SQL的用户查询数据、同时。这个语言也允许熟悉MapReduce开发者开发自定义的mapper和reducer来处理内建的mapper和reducer无法完成的复杂的分析工作。
Hive是SQL解析引擎,它将SQL语句转译为Map/Reduce Job然后在Hadoop执行,Hive的表其实就是HDFS的目录,按表名把文件夹分开,如果是分区表,可以直接在Map/Reduce Job里使用这些数据。
二、Hive的组件
Hive架构包括如下组件:CLI(command line interface) 、 JDBC/ODBC 、 Thrift Server 、WEB GUI 、metastore 和Driver(Compiler、Optimizer和Executor)这些组件可以分为:服务端组件和客户端组件。
1)客户端组件
Cli:Command line interface 命令行接口
Thrift客户端:Hive架构的许多客户端接口是建立在Thrift客户端上,包括JDBC和ODBC接口
WEBGUI:Hive客户端提供了一种通过网页方式访问Hive所提供的服务,这个接口对应Hive的hwi组件(hive web interface)使用前要启动hwi服务
2)服务端组件
Driver组件:该组件包括Compiler、Optimizer和Executor,它的作用是将我们写的HiveQL语句进行分析、编译优化。生成执行计划,然后调用底层的mapreduce计算框架
Metastore组件:元数据服务组件,这个组件存储Hive的元数据,hive的元数据存储在关系数据库里,hive支持的关系数据库有derby mysql。元数据对于hive十分重要,因此hive支持把mwtastore服务独立出来,安装到远程的服务器集群里,从而解耦Hive服务和metastore服务,保证hive运行的健壮性。
Thrift服务:facebook开发的一个软件框架,它用来进行可扩展跨语言的服务的开发,hive集成了该服务,能让不同的编程语言调用hive的接口
注:Hive的数据存储在HDFS中,大部分的查询有MapReduce完成(包含*的查询,不会生成MapReduce任务)
HQL的执行过程:
解释器、编译器、优化器完成HQL查询语句从词法分析、语法分析、编译、优化以及查询计划(Plan)的生成。生成的查询计划存储在HDFS中,并随后有MapReduce调用执行。
HQL Select-->发送到解析器进行词法分析 -->错误则反映 否则发送到编译器 生成HQL的执行计划-->优化器 生成最佳的执行计划 -->执行
explain plan for select * from emp where deptno=10;
--查看执行计划 select * from table(dbms_xplan.display);
HIVE的体系结构:
HADOOP:用HDFS进行存储,利用MapReduce进行计算
元数据存储(MstaStore):通常是存储在数据库,如mysql derby中
HIVE安装模式:
嵌入模式:
元数据信息被存储在Hive自带的DerBy数据库中,只允许创建一个连接、多用于Demo 本地模式:元数据信息被存储在MySql数据库中,MySql和Hive运行在同一台物理机中,多用于开发和测试
远程模式:
MySql和Hive不在同一操作系统,多用于生产环境
HIVE的管理:
端口号9999 启动方式:#hive --service hwi & 访问地址:http://IP:9999/hwi
下载原码进入hwi文件夹中打包 jar cvfM0 hive-hwi.war -C web/ .
将war包拷贝到lib目录下
修改配置文件hive-site.xml
需要拷贝jdk下的tools.jar到hive的lib下 不然会报错
在web下只能进行查询操作
HIVE的远程模式:
hive --service hiveserver 默认端口10000
【大数据系列】Hive安装及web模式管理的更多相关文章
- 大数据学习——hive安装部署
1上传压缩包 2 解压 tar -zxvf apache-hive-1.2.1-bin.tar.gz -C apps 3 重命名 mv apache-hive-1.2.1-bin hive 4 设置环 ...
- 【大数据系列】安装Ambari
一.Ambari简介 The Apache Ambari project is aimed at making Hadoop management simpler by developing soft ...
- 大数据系列之数据仓库Hive安装
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用 ...
- 大数据系列(2)——Hadoop集群坏境CentOS安装
前言 前面我们主要分析了搭建Hadoop集群所需要准备的内容和一些提前规划好的项,本篇我们主要来分析如何安装CentOS操作系统,以及一些基础的设置,闲言少叙,我们进入本篇的正题. 技术准备 VMwa ...
- 大数据系列(4)——Hadoop集群VSFTP和SecureCRT安装配置
前言 经过前三篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,当然,我相信安装的过程肯定遇到或多或少的问题,这些都需要自己解决,解决的过程就是学习的过程,本篇的来介绍几个Hadoop环 ...
- 大数据系列之数据仓库Hive原理
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用 ...
- 大数据系列之数据仓库Hive中分区Partition如何使用
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用 ...
- 12.Linux软件安装 (一步一步学习大数据系列之 Linux)
1.如何上传安装包到服务器 有三种方式: 1.1使用图形化工具,如: filezilla 如何使用FileZilla上传和下载文件 1.2使用 sftp 工具: 在 windows下使用CRT 软件 ...
- 大数据系列(5)——Hadoop集群MYSQL的安装
前言 有一段时间没写文章了,最近事情挺多的,现在咱们回归正题,经过前面四篇文章的介绍,已经通过VMware安装了Hadoop的集群环境,相关的两款软件VSFTP和SecureCRT也已经正常安装了. ...
随机推荐
- JS 动态修改json字符串
<script type="text/javascript"> //1.将表单序列化成json字符串 $.fn.serializeObject = function() ...
- zabbix_agentd客户端安装与配置(Linux操作系统)
标注:官网下载zabbix安装包(zabbix安装包里包含了zabbix_agentd客户端安装包,我们只选择zabbix_agentd客户端安装) zbbix官网下载地址: http://www. ...
- HTTP 错误 500.19 配置文件错误 ( 0x8007000d,0x80070032)
HTTP 错误 500.19 - Internal Server Error无法访问请求的页面,因为该页的相关配置数据无效. 详细错误信息模块 IIS Web Core 通知 未知 处理程序 尚未确定 ...
- linux中wget命令
Linux系统中的wget是一个下载文件的工具,它用在命令行下.对于Linux用户是必不可少的工具,我们经常要下载一些软件或从远程服务器恢复备份到本地服务器.wget支持HTTP,HTTPS和FTP协 ...
- java rpc
一.简介 Hessian和Burlap是由Caucho Technology提供的基于HTTP协议的轻量级远程服务解决方案.他们都致力于借助尽可能简单那的API和通信协议来简化Web服务. He ...
- 长姿势 教你在qq空间上显示iPhone6尾巴
下午刚午休完的时候,广州很多童鞋都感受到了震感,半青也感受到了,不仅如此,我还感受到了更大震感,那就是翻一下QQ空间动态,竟然看到有一位好友的尾巴竟然显示为“iPhone6”,顿时觉得该好友逼格太高了 ...
- 到底什么时候才需要在ObjC的Block中使用weakSelf/strongSelf
转载,原文: http://blog.lessfun.com/blog/2014/11/22/when-should-use-weakself-and-strongself-in-objc-block ...
- create table repo_folder_operate_log_bak as select * from repo_folder_operate_log;
create table repo_folder_operate_log_bak as select * from repo_folder_operate_log;
- js读取csv文件为json显示
摘要: 前面分享了用js将json数据下载为csv文件,方便后期管理.但是对于测试人员更希望能够以页面的形式展现任务,所以就做了一个将csv文件展现在页面上的例子. 代码: <!DOCTYPE ...
- c++Valgrind内存检测工具---19
原创博文,转载请标明出处--周学伟 http://www.cnblogs.com/zxouxuewei/ 一.Valgrind 概述 Valgrind是一套Linux下,开放源代码(GPL V2)的 ...