前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hive 系列 之 开篇

Hive 系列 之 开篇

作者头像
kk大数据
发布2019-08-14 15:41:10
6270
发布2019-08-14 15:41:10
举报
文章被收录于专栏:kk大数据kk大数据

银烛秋光冷画屏,轻罗小扇扑流萤

天阶夜色凉如水,坐看牵牛织女星

细细品味这首诗,忽然发觉以前学这首诗的意义在于背诵和考试,如今细细品味这首诗,不禁感叹意境真好。天色微凉,牵着手,一起爬山那高高的山头看那天边的牵牛织女星,多么美好的夜晚。古人的生活比现在的生活惬意多了。

最近两天也是在反复思考这个公众号的意义,kk大数据。

作为技术人,不能太急功近利,之前买了一本《Spark内核技术的艺术》,大概700页,这种剖析源码的书,极大的消耗了我的意志力。

毕竟是大牛们写的,想要吃透其中设计的艺术,需要很多的耐心和时间。

当你连 Java 基础的 NIO , AIO 都不懂的时候,更别谈什么 Netty,什么 Spark 的 RPC 了,打算默默的先把这些基础知识搞清楚。

勿忘初心,方得始终 !

工作的这几年,陆陆续续的积累了一些知识,为知笔记竟然有2000篇笔记了,想趁着写公众号的时候,把知识好好的梳理成体系,否则这些笔记也就是默默躺在那,只是一堆二进制文件而已

接下来一段时间,还是从离线仓库入手,系统的分享一下hive的内容。

下面是系列文章的目录

(1)hive系列之简介,安装,beeline和hiveserver2

(2)hive系列之基本操作

(3)hive系列之udf

(4)hive系列之二级分区和动态分区

(5)hive系列之分桶表

(6)hive系列之常用函数

(7)hive系列之系统讲解开窗函数

(8)hive系列之存储格式及常用压缩格式

(9)hive系列之数据仓库建模理论

(10)hive系列之数据仓库建模-维度表和事实表

(11)hive系列之数据仓库建模-退化维度和缓慢变化维

(12)hive系列之常用企业性能优化1

(13)hive系列之常用企业性能优化2

(14)hive系列之常用企业性能优化3

什么是hive

hive由 FaceBook 开源 ,是一个数据仓库基础工具,可以将结构化的数据映射成一张表,能够直接处理我们输入的 SQL 语句(Hive 的 SQL 语法和标准数据库标准的 SQL 略有不同),调用 MapReduce 计算框架完成数据分析操作。

这是官网上的 hive 架构图

我们利用 hive 的 Client (命令行或者jdbc客户端)向hive提交sql命令。

如果是创建表的ddl,Hive 就会通过执行引擎 Driver 将数据表的信息记录在 Metastore 元数据组件中,这个组件通常有一个关系数据库实现,记录表名、字段名、字段类型、关联 HDFS 文件路径等这些数据库的 Meta 信息(元信息)。

如果是分析数据的 DQL (数据查询语句),Driver 就会将该语句提交给自己的编译器 Compiler 进行语法分析、语法解析、语法优化等一系列操作,最后生成一个 MapReduce 执行计划。然后根据执行计划生成一个 MapReduce 作业,提交给 Hadoop MapReduce 计算框架处理。

Hive 的安装

这里并不想花太多篇幅去写怎么安装,安装过程我之前发表在了博客园里:

https://www.cnblogs.com/nicekk/p/9028514.html

beeline 和 hiveserver2

Hiveserver2 是一个服务端接口,使远程客户端可以执行对Hive 的查询并返回。启动 Hiveserver2 后,就可以使用jdbc,odbc,beeline 或者 thrift 方式连接。

beeline 是 Hive 新的客户端命令行工具,会陆续替代掉 hive cli。

如下图连接到hiveserver2服务器上

命令如下:

beeline

!connect jdbc:hive2://hadoop002:10000 hadoop 123456

我们在beeline中执行一个sql查询:

下一篇,是 Hive 的基本操作

数据库相关,表相关,内部表,外部表,分区表,加载到表中,从表中导出数据,和其他一些命令

最后,还是有一点心得体会

Hive 本身的技术架构其实没什么创新,数据库相关的技术和架构已经非常成熟,只要将这些技术架构应用到 MapReduce 上就得到了 Hadoop 大数据仓库 Hive。

但是想到将两种技术嫁接到一起,却是极具创新的,通过嫁接产生出的 Hive 可以极大降低大数据的应用门槛,也使 hadoop 大数据技术得到大规模普及。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-08-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 KK架构 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档