Hive Hbase简介
一.Hive的基础知识
1.hive是由Facebook开源用于解决海量结构化日志的数据统计,hive的出现就是为了简化用户编写MapReduce程序而生成的框架,它的存储与计算完全依赖hdfs和mapreduce。
二.Hive产生的背景
Hive提供了一个被成为Hive查询语言(简称HiveQ或HQL)的方言,来查询存储在Hadoop集群中的数据。
Hive容易下手的点:Hive降低了传统数据分析系统转移到Hadoop系统上的难度,也就是说用过SQL语言的开发人员都能轻松使用Hive。
三.Hive架构
1.用户接口主要有三个:CLI Client 和 WUI 其中最常用的是CLI CLI启用的时候会同时启动一个Hive副本,Client是Hive的客户端,用户连接至Hive Server 在启动Client模式的时候,需要指出Hive Server所在节点,并且在该节点启动Hive Server。WUI是通过浏览器访问Hive
2.Hive将元组据存储在数据库中,如mysql,derby Hive中的元数据包括表额名字,表的列和分区及其属性,表的属性,表的数据所在目录等
3.解释器,编译器,优化器完成HQL查询语句从词法分析,语法分析,编译,优化以及查询计划的生成。生成的查询计划存储在HDFS中,并在随后有MapReduce调用执行
4.Hive的数据存储在HDFS中,大部分的查询计算由MapReduce完成(包含的查询,比如selectfrom tbl不会生成MapReduce任务)
Hive处理的数据存储在HDFS
Hive分析数据底层的实现是MapReduce执行程序运行在Yam上
传统的数据库分为两种
1.mysql(关系型数据库)
2.oracle(非关系型数据库)
Hbase简介:
Hbase是Apache旗下一个高可靠性,高性能,面向列,可伸缩的分布式数据库
CAP理论:
mysql事物用于处理操作量大复杂度高的数据可以用来维护数据的完整性,保证成对比的sql语句 要么全部执行 要么全部不执行事物用来管理insert update delete语句 一般来说事物必须满足四个条件 原子性,一致性,隔离性,持久性
原子性:一个事物中所有操作要么全部完成要么全部不完成,不会结束在中间某个环节,事物在自行过程中发生错误会被回滚到事物开始前的状态,就像这个事物没有执行过一样.
一致性:在事物开始之前和事物结束之后,数据库的完整性没有被破坏。假如数据在三个节点都有备份,a节点更新,bc也会更新否则就会出现不对应,错乱的情况
隔离性:数据库允许多个并发事物同时对其数据进行读写式修改,可以防止多事物并发执发时,由于交叉执行而导致数据的不一致,事物的隔离分为不同级别,包括读,未提交,读,提交,可重复读和串行化
持久性:事物处理结束后,对数据的修改就是永久的,即使系统故障也不会丢失
Availability(可用性):对外部命令可以及时作出反应
partition tolerance (可靠性):数据一定要有备份不能存在一个节点上如果节点宕机数据就会丢失



