1. 什么是Hive,Hive是用来做什么的
- Hive是Facebook开源的
- 以SQL查询的方式对日志等结构化数据进行多维度进行分析
- 构建于Hadoop之上的,把HQL查询转换为Hadoop Map Reduce作业,对HDFS上的结构化数据进行分析
- 因为构建于Hadoop Map Reduce作业之上,因此只适合做离线分析。对分布式数据仓库中的数据进行分析
- 典型应用场景是日志分析,比如用户购买历史、视频网站的PV、UV以及低成本的数据分析
- Hive简单易上手,数据表等元信息保存在独立的存储系统中(比如Mysql),方便与Pig共享元数据信息
2. Hive基本架构
用户可以通过Hive命令行来访问Hive,也可以通过Web UI、Console UI和JDBC/ODBC访问Hive
Hive的模块组成:
- 用户接口 包括 CLI,JDBC/ODBC,WebUI
- 元数据存储(metastore)默认存储在自带的数据库derby中,线上使用时一般换为MySQL
- 驱动器(Driver) 解释器、编译器、优化器、执行器
- Hadoop 用 MapReduce 进行计算,用 HDFS 进行存储
3. Hive部署
3.1 Hive测试环境部署
3.2 Hive生产环境部署
在生产环境中,Hive要安装在Hadoop集群的一台DataNode上,通常Hive会启动一个HiveServer
4.从metastore看Hive部署架构
Metastore是一个扩展的hive元数据服务,可以提供多客户端使用.使用hive命令可以看到metastore是hive提供的命令之一
[hadoop@hadoop bin]$ ./hive --help Usage ./hive <parameters> --service serviceName <service parameters> Service List: beeline cli help hiveburninclient hiveserver2 hiveserver hwi jar lineage metastore metatool orcfiledump rcfilecat schemaTool version Parameters parsed: --auxpath : Auxillary jars --config : Hive configuration directory --service : Starts specific service/component. cli is default Parameters used: HADOOP_HOME or HADOOP_PREFIX : Hadoop install directory HIVE_OPT : Hive options For help on a particular service: ./hive --service serviceName --help Debug help: ./hive --debug --help
5.如何使用metastore服务?
6. hwi服务
启动hwi服务:
[hadoop@hadoop bin]$ ./hive --service hwi ls: cannot access /home/hadoop/software/apache-hive-0.14.0-bin/lib/hive-hwi-*.war: No such file or directory 15/03/09 21:02:32 INFO hwi.HWIServer: HWI is starting up 15/03/09 21:02:36 FATAL hwi.HWIServer: HWI WAR file not found at /home/hadoop/software/apache-hive-0.14.0-bin/${env:HWI_WAR_FILE}
访问地址:http://localhost:9999/hwi
7. Hive数据库结构
一个数据库有多个表,一个表有多个分区(这个分区类似于MySQL的表分区),一个分区有多个Bucket(桶的概念是更有利于HQL的查询,将数据的查询更加细化,类似于索引)。
Skewed Keys:可能导致数据倾斜的键,显式指定这些Key,Hive会做一些特殊的处理
8. HSQL支持的数据类型
相关推荐
HIVE架构详解 HIVE架构是建立在Hadoop平台上的数据仓库基础构架,提供了一系列的工具,可以用来进行数据提取转化加载(ETL),它可以存储、查询和分析存储在Hadoop中的大规模数据。HIVE架构可以分为以下几部分:...
HIVE架构图: * 元数据存储:用于存储HIVE的元数据 * 查询编译器:将SQL查询转换为MapReduce任务 * 执行引擎:执行MapReduce任务 * 数据存储:用于存储数据 基本组成: * Hive Metastore:用于存储HIVE的元数据 *...
第二节 hive架构.mp4
二是通过生成多行数据,利用MapReduce的排序特性,减少内存消耗,但增加shuffle数据量。 2. SQL转化为MapReduce的过程: - **Phase1 SQL词法,语法解析**:Hive使用Antlr工具解析SQL,生成抽象语法树(AST Tree)...
### 深入浅出Hive企业级架构优化 #### Hive概述 Apache Hive 是一个基于 Hadoop 的数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的 SQL 查询功能,使不熟悉 MapReduce 的开发人员也能用 ...
"大数据Hive架构原理.pdf" 大数据Hive架构原理是指基于Hadoop的一种数据仓库工具,能够将结构化的数据文件映射为一张数据库表,并提供类SQL的查询功能。Hive架构原理基于Hadoop的其它组件之上,依赖于HDFS进行数据...
**二、Hive的体系架构与数据模型** 1. **用户接口** - **CLI (命令行界面)**:用户可以通过 CLI 直接与 Hive 交互,启动时会同时启动一个 Hive 实例。 - **Client (客户端)**:用于连接到 Hive Server,需要指定 ...
- Hive架构:包括客户端、元数据存储、Hive服务器、驱动器和执行器等部分。元数据存储通常在MySQL或Derby中,描述表和分区的结构和位置。 - 分区和桶:分区有助于减小查询的范围,提高查询效率;桶则用于实现数据...
学生需要理解Hive架构,以及它在大数据处理中的角色。 2. **Hive环境搭建**:这章介绍了Hive的安装、配置,包括MySQL的安装,Hive元数据的配置,以及如何使用HiveJDBC进行连接。实践环节让学生亲手操作Hive的部署,...
Hive的体系结构设计上借鉴了传统数据库的架构,因此它能够支持复杂的查询操作,并且具有很好的扩展性,能随着数据量的增长而进行水平扩展。Hive通过元数据存储来管理数据的结构信息,这些元数据是Hive能够执行复杂...
1. **Hive架构**:介绍Hive的组成部分,如Hive Metastore、Hive Driver、Hive Executor等,以及它们在数据处理流程中的角色。 2. **HQL语法**:详细解析Hive Query Language,包括SELECT、FROM、WHERE、GROUP BY、...
Hadoop则是分布式存储和计算框架,为大数据处理提供基础架构。这个压缩包包含了Hive 2.1.1和Hadoop 2.6.0的关键组件,但不包括Hive所有库中的jar包。 描述中提到,这个压缩包内有15个jar文件,这些文件在Eclipse...
**1.1 Hive架构** Hive架构主要包括以下几个核心组成部分: - **用户接口**:主要包括命令行界面(CLI)、客户端(Client)以及Web用户界面(WUI)。其中,CLI是最常用的交互方式,它在启动时会自动启动一个Hive...
- **体系结构**:Hive架构主要依赖于Hadoop的文件系统(HDFS)和MapReduce框架。用户可以通过SQL-like语言(HQL)提交查询,Hive则负责将这些查询转换为一系列MapReduce任务执行。 - **数据存储**:Hive的数据存储...
1. **Hive架构**: Hive的核心组成部分包括Hive Server、Hive Metastore、HQL解析器、编译器、优化器、执行器等。其中,Hive Server负责接收客户端请求,Metastore存储表和分区的元数据,解析器将HQL转换为解析树,...
Hive架构 Hive的架构主要包括三个层次:客户端层、Hive服务层和存储层。其中,客户端层提供了Hive的命令行接口和JDBC/ODBC接口;Hive服务层负责接收和处理查询请求,生成执行计划并执行查询;存储层负责存储Hive的...
在本文中,我们将会讨论Hive的体系架构、安装过程以及HiveQL的基础知识点。 体系架构: Hive体系架构主要由以下几个组件构成: 1. 用户接口(客户端):包括命令行工具(CLI)、JDBC/ODBC、Web界面等,用于用户提交...
二、Hive架构 Hive的架构主要包括四个组件:客户端、元数据存储、Hive Server和执行引擎。客户端用于提交查询,元数据存储(通常使用MySQL或Derby)保存表和分区的信息,Hive Server处理客户端请求并解析HQL,执行...
- **Thrift客户端**: Hive架构中的许多客户端接口都基于Thrift客户端实现,例如JDBC和ODBC接口。 - **Web GUI**: 提供了一个网页界面,方便用户通过浏览器访问Hive服务。 - **服务端组件**: - **Driver组件**: ...
Hive架构主要由以下几个组件组成:Metastore、Query Compiler、Query Executor、HDFS和MapReduce。Metastore负责存储Hive的元数据,Query Compiler负责将SQL语句编译成MapReduce作业,Query Executor负责执行...