硬件依赖 | 仅需1台普通机器,对硬件配置要求低(普通个人电脑即可) | 仅需1台机器,但需一定硬件资源(内存、磁盘需满足多进程运行) | 需多台机器组成集群(至少3台,主从节点分离,生产环境需更高配置) |
组件运行形式 | 所有Hadoop组件(NameNode、DataNode、ResourceManager等)都运行在单个Java进程中 | 所有组件以独立进程运行(如NameNode、DataNode各占一个进程),但所有进程都在同一台机器上 | 不同组件部署在不同机器:主节点(NameNode、ResourceManager)单独部署,从节点(DataNode、NodeManager)分散在多台机器 |
网络通信 | 组件间无网络通信,仅在进程内部交互 | 组件间通过本地网络协议通信(模拟分布式网络交互) | 组件间通过集群网络通信(主从节点跨机器交互) |
数据存储逻辑 | 不启用HDFS分布式存储,数据直接存在本地文件系统,无分块/副本机制 | 启用HDFS,数据按分布式规则分块存储,支持副本配置(通常设为1,避免单机器资源浪费) | 启用HDFS,数据分块存储在多个DataNode,副本数可配置(生产环境通常设为3,保证数据可靠性) |
核心用途 | 1. 代码调试(验证Hadoop API语法、逻辑正确性) 2. 新手快速熟悉Hadoop基本命令 | 1. 学习分布式原理(模拟真实分布式组件交互流程) 2. 开发测试(验证程序在分布式环境下的功能) 3. 小规模数据演示 | 1. 生产环境大规模数据处理(PB级数据存储与计算) 2. 高并发任务运行(多节点协同提升效率) |
搭建复杂度 | 极低:无需修改复杂配置,安装后即可使用 | 中等:需配置环境变量、组件通信参数、格式化HDFS等步骤 | 较高:需配置集群网络、节点间免密登录、主从节点同步、资源分配策略等 |
性能与扩展性 | 无分布式性能优势,仅支持小规模数据(MB级) | 性能受单机器硬件限制,支持小规模数据(GB级),无扩展性 | 性能随节点数量提升,支持海量数据(PB级),可通过增加节点扩展存储与计算能力 |