基础概念 之 Hadoop Family

Hadoop家族的技术,网上资料多如牛毛,可是仍是那句老话——好脑瓜不如烂笔头,看的再多也不如本身动手写一写。html

Hadoop是一个分布式系统,有两个关键组件——HDFS和MapReduce,HDFS负责分布式文件存储,MapReduce是执行分布式任务的算法。算法

MapReduce只是一个分布式数据处理算法,简单来讲就是,把针对大数据的一个任务分解成若干个小任务,交给若干个计算节点去执行,而后把全部小任务的执行结果汇总起来,获得最终的输出结果。“拆分”叫作Map,“汇总”叫作Reduce。其中还涉及Shuffle等处理过程,暂不细究。数据库

HDFS是一个分布式文件系统,高可靠、可扩展,理论上能够存储任何文件(通常不适合存储大量的微小文件)。HDFS是Hadoop家族最基础最核心的技术。yii

HDFS是一个通用的文件系统,通用的东西每每未必好用,尤为在特定的使用场景下。因此以HDFS为基础,衍生出了Hive、HBase,这两个技术都是为了处理HDFS中存储的数据。分布式

Hive相似MySQL,是一个结构化数据库,支持常见的SQL操做,这里称做HQL,不一样于通常的结构化数据库,Hive在HDFS上存储数据库文件,同时利用MapReduce处理全部SQL操做,充分利用了Hadoop的两项核心技术,可是代价是实时性不好,由于其中涉及到大量的磁盘读写操做。oop

HBase和Hive很不同,它采用key-value的方式存储数据,以列族的方式存储(半)结构化数据,这极大的提高了查询效率,尤为适合那些只须要查询个别几列数据的场合。因此HBase适合实时处理,Hive适合作离线统计。大数据

参考资料:htm

https://www.cnblogs.com/justinzhang/p/4273470.htmlblog

https://www.yiibai.com/hbase/效率

相关文章
相关标签/搜索