Hive入门(一)

Hive入门(一)

什么是Hive?

Hive是个数据仓库,数据仓库就是数据库,但又与一般意义上的数据库有点区别

实际上,Hive是构建在hadoop HDFS上的一个数据仓库。

什么又是数据仓库?

而数据仓库是一个面向主题的、集成的、不可更新的、随时间不变化的数据集合,它用于支持企业或组织的决策分析处理

  1. 面向主题,那么什么又是主题呢?主题就是指用户使用数据仓库决策时所关心的重点的方面,比如商品的推荐系统,那么这里我们所关心的主题就是商品的信息
  2. 数据仓库是个集成的数据库,也就是说数据仓库的数据来自于分散的操作性的数据,我们把分散的操作数据从原来的数据当中抽取出来进行加工和处理,然后满足我们的要求,这样的数据才能进入数据仓库。也就是说原来的数据有可能来自Oracle,MySQL,有可能来自于文本文件,我们把数据集成起来,才形成数据仓库
  3. 数据仓库主要是为决策分析所提供数据,所以所涉及到的操作主要是数据的查询,一般都不会在数据仓库当中做更新和删除,这就是数据仓库的不可更新性
  4. 并且数据仓库当中的数据是随着时间推移而不产生变化的集合

数据仓库的结构和建立过程

数据源:

  • 业务数据系统
  • 文档资料
  • 其他数据

然后我们要对数据进行一个抽取转换装载的过程

数据存储及管理:

  • 抽取(Extract)
  • 转换(Transform)
  • 装载(Load)

由于来自不同数据源的数据格式都不一样,因此需要转换,只有经过转换的满足格式的数据才能被进行装载在数据仓库当中

建立好数据仓库之后当然需要提供对外服务,这个时候就需要建立数据仓库引擎

数据仓库引擎:

  • 服务器

而在数据仓库引擎当中包含了不同的服务器,不同的服务器提供不同的服务

前端展示:

  • 数据查询
  • 数据报表
  • 数据分析
  • 各类应用

OLTP应用与OLAP应用

  • On-Line Transaction Processing联机事务处理系统(OLTP)也称为面向交易的处理系统。它所关注的焦点是事务处理,典型的OLTP应用就是我们的银行转账。同样进行转账的业务,很明显扣钱和加钱的操作应该同时成功或者同时失败,不应该存在一个成功一个失败的情况,所以必须有事务的保证。OLTP系统操作频率会非常高,比如银行的转账业务时时刻刻都会发生

  • On-Line Analytical Processing联机分析处理系统(OLAP)。最典型的的应用就是商品推荐系统。这种应用是基于原来的历史数据,从而进行数据的分析和挖掘,然后提供给别的系统所使用。这种OLAP系统主要面向的是查询,所以一般这种系统不会做更新、插入、删除操作

数据仓库中的数据模型

  • 星形模型

  • 雪花模型

    在星形模型基础上创建了雪花模型

那么什么又是Hive?

  • Hive是建立在hadoop HDFS上的数据仓库基础架构
  • Hive可以用来进行数据提取转化加载(ETL)
  • Hive定义了简单的类似SQL查询语言,称为HQL,它允许熟悉SQL的用户查询数据
  • Hive允许熟悉MapReduce开发者的开发自定义的mapper和reducer来处理内建的mapper和reducer无法完成的复杂的分析工作
  • Hive是SQL解析引擎,它将SQL语句转移成M/R Job,然后在hadoop执行
  • Hive的表其实就是HDFS的目录/文件

最新文章

  1. http协议和web应用有状态和无状态浅析
  2. Linux之一条命令解决常见问题(持续更新)
  3. Flume 远程写HDFS
  4. Mininet实验 OpenFlow1.3协议基于Mininet部署与验证
  5. Flickr 网站架构分析
  6. UVA11149 矩阵快速幂
  7. Jquery- 错误消息"Date"未定义,"String"未定义
  8. c#数组的交集,差集,并集
  9. Linux环境Nginx安装多版本PHP
  10. Ecstore启用www.ecstore.com和m.ecstore.com域名
  11. 性能测试系列学习 day1
  12. 【JavaScript基础系列】决定你的人生能走多远的,是基础。
  13. 201521123002 《Java程序设计》第3周学习总结
  14. 软件安装之-------VM虚拟机安装windows系统
  15. Python 头部 #!/usr/bin/python 和 #!/usr/bin/env 的区别
  16. [ZJOI2008]树的统计-树链剖分
  17. 大数开方 ACM-ICPC 2018 焦作赛区网络预赛 J. Participate in E-sports
  18. JS里面的装箱和拆箱操作
  19. sqlserver数据类型转换
  20. InfluxDB源码阅读之httpd服务

热门文章

  1. 页面样式base.css
  2. (九)Android权限系统
  3. Android设置输入框和软键盘动态悬浮
  4. 蜗牛爱课- CGAffineTransformMakeRotation 实现一张图片的自动旋转
  5. 如何获取浏览器URL中查询字符串的参数
  6. LeetCode之ReverseWorldString
  7. mysql学习(十一)嵌套查询 排序 分组
  8. linux下安装配置svn独立服务器
  9. 【翻译】Microsoft Ajax Minifier 快速使用指南(与VS集成使用) 编译后直接压缩项目的JS或CSS文件
  10. 实现在ios文件读写