Hadoop学习笔记(1)概述

写在学习笔记之前的话:


寒假已经开始好几天了,似乎按现在的时间算,明天就要过年了。在家的这几天,该忙的也都差不多了,其实也都是瞎忙。接下来的几点,哪里也不去了,静静的呆在家里学点东西。所以学习一下Hadoop的相关知识,跟自己的研究方向毛关系没有啊,就当自己的兴趣爱好吧。

学习目标:


(1)掌握Hadoop基本知识,进行Hadoop的HDFS和MapReduce应用开发,搭建Hadoop集群。

(2)掌握HBase基本知识,搭建HBase集群,HBase的基本操作。

(3)掌握数据仓库基本知识,用Hive建立数据仓库,并进行多维数据分析。

Hadoop简介:


image

Hadoop的核心分为两部分:文件管理系统(HDFS)负责存储和管理文件,MapReduce是专门负责计算的另一个核心,计算的数据来自HDFS。这种计算是要用java代码调用Hadoop的API才能实现的,那么这样一来Hadoop的应用面就变得非常窄,当遇到了大的项目的时候,里面的各种关系就变得很复杂。在这个背景下就诞生了各种框架,也就是上面图中的各种框架,当然我们在实际应用中用到的一般都是这些框架,但是Hadoop的基本核心原理知识也是必须要理解的,不然在框架出现问题的时候就不能很好的解决。

(1)非结构化的数据,比如说软件运行的日志文件等,Flume等框架都是用来收集这些非结构化数据的。

(2)结构化的数据,这些数据是存储在关系型数据库中的,当然一些不够结构化的数据是能够转化成结构化的数据的,反之亦然。也就是说他们是能够互相转换的,用到的工具就是Sqoop这个框架。具体的应用就是公司随着业务的扩大,数据量也不断的增大,原先的关系型数据库已经满足不了现在的需求,所以就要Hadoop上场,这时就得把原来的关系型数据库的数据导出到Hadoop的HDFS中去,这时候就用到了Sqoop这个框架了。

(3)HBase处理OLTP在线事务处理,反应延时很小,HBase是hadoop的在线数据库。与之对应的是分析型事务处理,它的特点是对延时性要求不高。

(4)运维监控框架,Hue、Ganglla、Eclipse等负责监控内存、CPU的使用情况。

(5)High Level Interfaces,hadoop在计算的时候是使用Java代码调用hadoop的API实现的,这里高level的地方在于它不是使用java代码,而是使用SQL调用hadoop的API。

(6)More High Level Interfaces,封装了数据挖掘算法的框架,如mahout框架。

原文地址:https://www.cnblogs.com/stemon/p/4312889.html