一、Hive VS Mysql
为了加深对Hive的理解,下面我们拿Hive和我们经常使用的Mysql做一个对比
HIVE MySQL
数据存储位置 HDFS 本地磁盘
数据格式 用户定义 系统决定
数据更新 不支持(不支持修改和删除) 支持(支持增删改查)
索引 有,但较弱,一般很少用 有,经常使用的
执行 MapReduce Executor
执行延迟 高 低
可扩展性 高 低
数据规模 大 小
二、数据库 VS 数据仓库
前面我们说了Hive是一个数据仓库,咱们平时经常使用的mysql属于数据库,那数据库和数据仓库到底有什么区别呢?
下面我们来分析一下
数据库:传统的关系型数据库主要应用在基本的事务处理,例如银行交易之类的场景
数据库支持增删改查这些常见的操作。
数据仓库:主要做一些复杂的分析操作,侧重决策支持,相对数据库而言,数据仓库分析的数据规模要大得多。但是数据仓库只支持查询操作,不支持修改和删除
这些都是明面上的一些区别
其实数据库与数据仓库的本质区别就是 OLTP与OLAP 的区别
三、OLTP VS OLAP
那这里的OLTO和OLAP又是什么意思呢?
OLTP(On-Line Transaction Processing):操作型处理,称为联机事务处理