Hive数据仓库介绍

Hive概述
    面向分析的存储系统(面向数据分析的存储系统)
    一个面向主题的(Subject Oriented)、集成的(Integrate)、不可修改的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于数据分析、辅助管理决策。
    面向主题:指数据仓库中的数据是按照一定的主题域进行组织。
    集成:指对原有分散的数据库数据经过系统加工, 整理得到的消除源数据中的不一致性。
    不可修改:指一旦某个数据进入数据仓库以后只需要定期的加载、刷新,不会更改。
    反映历史变化:指通过这些信息,对企业的发展历程和未来趋势做出定量分析预测。
   

数据仓库和数据库对比分析

    两者均是用来存储数据的,即均为数据的存储载体。
    数据仓库也是数据库,是数据库的一种衍生、延深应用。
    数库仓库和数据库之间存在数据交互,即你中有我、我中有你。
    数据库中的在线数据推送到离线的数据仓库用于分析处理
   数据仓库中分析处理的结果数据也通常推送到关系数据库中,便于前台应用的可视化展现应用。
    数据仓库的出现,并不是要取代数据库,且当下大部分数据仓库还是用关系数据库管理系统来管理的,即数据库、数据仓库相辅相成、各有千秋。
主要区别    

   数据库是面向事务的设计,数据仓库是面向主题设计的。
   数据库一般存储在线交易数据,实时性强存储空间有限,数据仓库存储的一般是历史数据,实时性弱但存储空间庞大。
   数据库设计是尽量避免冗余,数据仓库在设计是有意引入冗余。
   数据库是为捕获数据而设计,即实时性强吞吐量弱,数据仓库是为分析数据而设计,即吞吐量强实时性弱。


Hive分区与分桶 

     分区是指按照数据表的某列或某些列分为多个区,区从形式上可以理解为文件夹,比如我们要收集某个大型网站的日志数据,一个网站每天的日志数据存在同一张表上,由于每天会生成大量的日志,导致数据表的内容巨大,在查询时进行全表扫描耗费的资源非常多。那其实这个情况下,我们可以按照日期对数据表进行分区,不同日期的数据存放在不同的分区,在查询时只要指定分区字段的值就可以直接从该分区查找。
     分桶是相对分区进行更细粒度的划分。分桶将整个数据内容安装某列属性值得hash值进行区分,如要安装name属性分为3个桶,就是对name属性值的hash值对3取摸,按照取模结果对数据分桶。如取模结果为0的数据记录存放到一个文件,取模为1的数据存放到一个文件,取模为2的数据存放到一个文件。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值