Hive 初学者教程:3 天通过示例学习

Hive 教程摘要


Apache Hive 可帮助您快速查询和管理大型数据集。它是一个 ETL工具 适用于 Hadoop 生态系统。在本 Apache Hive 初学者教程中,您将学习 Hive 基础知识和重要主题,如 HQL 查询、数据提取、分区、存储桶等。本 Hive 教程系列将帮助您学习 Hive 概念和基础知识。

我应该知道什么?


要学习本 Hive 查询教程,您需要具备以下基本知识: 数据库, Hadoop的 其他数据库的知识也会有额外的帮助。

Hive 课程大纲

介绍

👉 Less上1 什么是Hive? - Archi结构与模式
👉 Less上2 下载并安装HIVE — 如何在 Ubuntu
👉 Less上3 HIVE Metastore 配置 — 为什么要使用 MySQL?
👉 Less上4 Hive 数据类型 — 在 Hive 中创建和删除数据库

进阶的东西

👉 Less上1 Hive 创建表 — 类型及其用法
👉 Less上2 蜂巢分区和存储桶 — 通过实例学习
👉 Less上3 Hive 索引和视图 — 通过实例学习
👉 Less上4 Hive 查询 — 通过实例学习
👉 Less上5 Hive 连接 & 子查询教程 — 通过实例学习
👉 Less上6 Hive 查询语言教程 - 内置 Opera职权范围
👉 Less上7 Hive 函数 — 内置和用户定义函数
👉 Less上8 Hive ETL — 加载 JSON、XML、文本数据示例

Hive 简介

Hive 是一种建立在 Hadoop Map-Reduce 框架之上的数据仓库解决方案。

行业中收集和分析的数据集的大小 商业智能 正在不断增长,从某种程度上来说,它使得传统数据仓库解决方案变得更加昂贵。 Hadoop的 借助 MapReduce 框架,Hadoop 正被用作分析海量数据集的替代解决方案。尽管 Hadoop 已被证明可用于处理海量数据集,但其 MapReduce 框架非常低级,需要程序员编写难以维护和重用的自定义程序。Hive 的出现是为了拯救程序员。


Hive 引擎 将这些查询编译为 Map-Reduce 作业以在 Hadoop 上执行。此外,自定义 Map-Reduce 脚本也可以插入到查询中。Hive 操作存储在表中的数据,这些表由原始数据类型和集合数据类型(如数组和映射)组成。

Hive 带有命令行 shell 界面,可用于创建表和执行查询。

Hive 查询语言与 SQL 类似,它支持子查询。使用 Hive 查询语言,可以跨 Hive 表进行 MapReduce 连接。它支持简单的 类似 SQL 的函数– CONCAT、SUBSTR、ROUND 等,以及 聚合函数– SUM、COUNT、MAX 等。它还支持 GROUP BY 和 SORT BY 子句。还可以用 Hive 查询语言编写用户定义函数。

什么是Hive?

阿帕奇蜂巢 是一个数据仓库框架,用于查询和分析存储在 HDFS 中的数据。它是在 Hadoop 之上开发的。Hive 是一个开源软件,用于分析 Hadoop 上的大型数据集。它提供了类似于 SQL 的声明性语言(称为 HiveQL)来表达查询。使用 Hive-QL,与 SQL 可以非常轻松地进行数据分析。

Hive 与 Map Reduce

在选择这两个选项之一之前,我们必须了解它们的一些特点。

在 Hive 和 Map Reduce 之间进行选择时,需要考虑以下因素;

  • 资料类型
  • 数据量
  • 代码复杂性

Hive 与 Map Reduce 相比?

专栏 蜂房 地图缩小
Language 它支持类似 SQL 的查询语言,用于交互和数据建模
  • 它编译语言时有两个主要任务,一个是 map 任务,另一个是 Reducer。
  • 我们可以使用以下方式定义这些任务 Java or Python
抽象级别 HDFS 之上更高级别的抽象 较低抽象级别
代码效率 比 Map Reduce 相对较少 提供高效率
代码范围 Less 执行所需的代码行数 需要定义更多行代码
所需开发工作类型 Less 需要开发工作 需要更多的开发工作
点击查看 下一个教程