多语言展示
当前在线:1778今日阅读:195今日分享:41

大数据系列-hive讲解1

hive是建立在hadoop上的数据仓库基础架构。它提供了一系列的工具,可以用来进行数据提取转换加载,这是一种可以存储、查询、分析在hadoop中的大规模数据的机制。hive定义了简单的类SQL查询语言,称为QL,它允许熟悉SQL的用户查询数据,同时,这个语言也允许熟悉MapReduce开发者自定义Map和Reduce来处理内建的mapper和reduce无法完成的复杂的分析工作。hive是sql解析引擎,它讲sql语句转换为mapreduce job,然后在hadoop上运行。hive的表就是HDFS分布式文件系统目录,按表名把文件夹分开。如果是分区表,则分区值是子文件夹,可以直接在MapReduce job里使用这些数据。Hive相当于hadoop的客户端工具,部署时不一定在某一个集群节点中,可以放在某一台机器上,类似于mysql 客户端工具,可以部署在本地。
工具/原料
1

eclipse hadoop hive

2

linux

方法/步骤
1

Hive数据存储1. hive的数据存储基于hadoop HDFS;2. hive没有专门的数据存储格式;3. 存储结构主要包括:数据库、文件、表、视图、索引;4. hive默认可以直接加载文本文件,支持sequenceFile、RCFile;5. 创建表时,指定hive的指定分隔符与行分隔符,hive既可以解析数据。

2

Hive系统架构1. 用户接口,包括CLI、JDBC/ODBC、WebUI;2. 元数据存储,通常是存储在关系型数据库如mysql、derby中;3. 解析器、编译器、优化器、执行器;4. 用hdfs进行存储,利用MapReduce进行计算。--------------hive的metastoremetastore 是hive元数据的集中存放地,metastore默认使用derby数据库做为存储引擎。derby引擎缺点:一次只能打开一个会话;mysql引擎外置存储引起,多用户可以同时访问。

推荐信息