hadoop 解决什么问题
1. 海量数据如何存储(hdfs)
2. 海量数据如何计算(mapreduce)
1.HDFS
两个外围 namenode 与 datanode
namenode:治理 datanode,相似仓库管理员,治理元数据信息,有单点故障问题
datanode:存储数据的节点,数据寄存具备备份。
1. 保留具体的 block 数据,
2. 负责数据的读写操作和复制操作
3.DataNode 启动会想 NameNode 报告以后存储的 block 信息,
4.DataNode 之间会进行通信(RPC),保证数据的冗余性
SecondaryNameNode 不是热备,它的职责是合并 NameNode 的 edit log,到 fsiamge 这个文件中。
tip:hdfs 不适宜存储海量小文件
起因:20kB 放在 128M 的 block 里,他只占用了 20Kb,然而须要一个装 128M 的袋子装,这个袋子不能再装其余货色了。
假如我有 1000w * 1Kb,则 namenode 须要这么多元数据信息,导致 NameNode 瘫痪。
hdfs 是磁盘,也就是波及两个问题:写与读。