大数据的基本常识

一:hadoop框架

1.核心:hdfs(提供存储)和mapreduce(提供计算)

2.hadoop框架:包括Hadoop内核,mapreduct,hdfs,hadoop YARN等。

3.Hadoop是一个生态系统,里面有很多组件,hdfs,mapreduct,NoSQL(非关系型数据库)数据库HBase,

    数据仓库Hive。Pig工作流语言。机器学习算法库Mahout。Zookeeper(分布式协作服务),内存计算框架spark,数据采集Flume,Kafka


二:HDFS(分布式文件系统)

1.采用块复制的概念,让数据在集群的节点间进行复制,有一个默认的复制因子,默认是3。

2.采用机架位感知的方法,将数据拷贝到不同的机架服务器上。还采用有erasure code(一种编码存储技术,这种方法本类用于通信容错领域)

3.HDFS是一个主从结构,HDFS集群,有一个名字节点,多个数据节点组成,通常配置在不同的机器上。

4.HDFS将一个文件分割成一个或多个块,每个块被存储在一组数据节点中,名字节点用来操作文件命名空间的文件或者目录操作。能确定块与数据节点的映射。

5.数据节点,负责来自文件系统客户的读写请求,执行块的创建删除和来自名字节点的块复制指令。

6.名字节点和数据节点都是运行在单独的普通机器上。一般都用Linux系统。

7.集群中还会配置secondary namenode ,这个secondary namenode 下载namenode的image文件和editlogs,并对他们做本地归并。最后将归并玩的image文件发回给namenode。两者不是备份关系,namenode出故障了他将不能工作。


三:Mapreduce

是一种编程模型。

1.将批量处理的任务分成两个阶段,map和reduce

    map:把数据生成“键-值对”,按键排序。

    中间的一步骤(shuffle):把同样的可以运输到同一个reducer,在reducer上,因为都是同一个key,可以直接聚合(求和),最后将结果输出到hdfs上。对于开发者,就是编写Map和reduce函数。中间的排序,shuffle网络传输,容错处理,框架已经完成。

    

猜你喜欢

转载自blog.csdn.net/qq1319713925/article/details/79718902