YARN 核心组件与配置
1. YARN 进程
- NodeManager: 管理单个节点资源。
- ResourceManager: 全局资源调度。
2. ResourceManager 组件
- ApplicationMaster: 负责单个应用的生命周期管理。
- Resource Scheduler: 负责资源分配。
3. 容器(Container)
- 运行在 NodeManager 节点上。
4. 内存与 CPU 参数
常见配置参数包括:
yarn.nodemanager.resource.memory-mbyarn.scheduler.minimum-allocation-mbyarn.scheduler.maximum-allocation-mbyarn.scheduler.minimum-allocation-vcoresyarn.scheduler.maximum-allocation-vcores
5. 作业执行
- AM 位置: 运行在 NM 节点的容器中。
- Shuffle: 含义为洗牌,即按 Key 进行分组。
- Split: 提交 WordCount 作业时,Split 步骤通常与块大小有关。
- Kill Job: 命令为
yarn application -kill <jobid>。
HDFS 基础
1. 存储计算
- 示例:130M 文件,副本数为 3。
- 块数量:6 个块。
- 实际存储空间:390M。
2. 工作流程
- 需深入理解 HDFS 读写流程及 YARN 作业工作流程。
3. 部署策略
- 企业环境中,DataNode (DN) 和 NodeManager (NM) 通常部署在同一台机器上,目的是实现数据本地化。

