好早之前开始学习hadoop但是都没有系统的学习过,我一向的思维方式是只要没有系统的深入的学习过,就算是不会。。。。。
先说HDFS。
HDFS的设计目标;
1,硬件的容错设计;
2,流式数据访问;
3,支持一个文件几个G甚至是上T
4,简单的数据一致性模型;
5,移动计算比移动数据更划算;
6,master/salve模式;
一个HDFS集群是由一个Namenode和一定数目的Datanodes组成。Namenode是一个中心服务器,负责管理文件系统的名字空间(namespace)以及客户端对文件的访问。集群中的Datanode一般是一个节点一个,负责管理它所在节点上的存储。HDFS暴露了文件系统的名字空间,用户能够以文件的形式在上面存储数据。从内部看,一个文件其实被分成一个或多个数据块,这些块存储在一组Datanode上。Namenode执行文件系统的名字空间操作,比如打开、关闭、重命名文件或目录。它也负责确定数据块到具体Datanode节点的映射。Datanode负责处理文件系统客户端的读写请求。在Namenode的统一调度下进行数据块的创建、删除和复制。