去哪儿大数据面试题及参考答案
Hadoop 工作原理是什么?
Hadoop 是一个开源的分布式计算框架,主要由 HDFS(Hadoop 分布式文件系统)和 MapReduce 计算模型两部分组成 。
HDFS 工作原理
HDFS 采用主从架构,有一个 NameNode 和多个 DataNode。NameNode 负责管理文件系统的命名空间,维护文件和目录的元数据信息,如文件名、文件目录结构、文件属性等。DataNode 则负责存储实际的数据块,并根据 NameNode 的指令进行数据块的读写操作。文件在 HDFS 中被切分成固定大小的数据块,默认是 128MB,这些数据块会被复制到多个 DataNode 上以实现容错和高可用性。当客户端要读取文件时,它会先向 NameNode 请求获取文件的数据块位置信息,然后直接从相应的 DataNode 上读取数据。写入文件时,客户端先向 NameNode 请求上传文件,NameNode 会根据文件大小和集群中 DataNode 的使用情况,选择合适的 DataNode 让客户端上传数据块,同时进行数据块的复制操作。
MapReduce 工作原理
MapReduce 主要用于大规模数据集的并行计算。它将计算过程分为两个阶段:Map 阶段和 Reduce 阶段。在 Map