千家信息网

MapReduce的实现目标及核心关注点

发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,实现目标及核心关注点MapReduce接口可能有多种不同的实现方式,需根据具体的计算环境来选择以Google的常用计算环境为例1.机器配置 Linux dual-process x86 2-4GB M
千家信息网最后更新 2025年12月02日MapReduce的实现目标及核心关注点

实现目标及核心关注点

MapReduce接口可能有多种不同的实现方式,需根据具体的计算环境来选择

以Google的常用计算环境为例

1.机器配置 Linux dual-process x86 2-4GB Memory

2.网络硬件 100/1000 MB/s, 平均整体二分带宽少很多

3.集群 由数百、数千台机器组成,机器故障很常见

4.存储由连接到每个机器的廉价IDE磁盘提供,它们内部开发的分布式文件系统用于管理这些磁盘上的数据。文件系统使用副本在不可靠的硬件之上提供可用性和可靠性

5.用户提交Job到调度系统,每个Job由一组Tasks组成,并由调度器将每个Task映射到机器中一组可用计算机上执行

MapReduce实现流程

Map调用被分布在多台机器,输入数据被自动划分为M个分割,输入分割之间没有交互,可以在不同机器上并行处理。使用分区函数(e.g. hash(key) mod R),将中间键空间划分为R个片段分发给Reduce并行调用,分区函数和分区数由用户指定。用户调用MapReduce函数的系列操作如下

1.Split Input FIles 将输入文件按指定大小S(16~64MB,用户通过可选参数指定)划分为M个分割文件,然后在集群中启动多个副本程序

2.Assign Tasks Master挑选空闲Worker节点并为其分配一个map task或reduce task

3.Parses K/V 被分配map task的worker读取相关分割的内容,从输入内容中解析键/值对并生成中间键/值对缓存于内存中

4.Written to Local Disk 缓存的中间键/值对,通过分区函数划分为R个区域,定期写到本地磁盘并将其相对位置返回给Master,Master再将这些位置信息传给Worker

5.RPC Read and Sort 当Master将位置信息通知到Reduce Worker, Reduce Worker使用远程过程调用从Map Worker的磁盘读入缓存数据。当Reduce Worker读入所有的中间数据按key排序,如果中间数据过大不适合在内存运算,可考虑使用外部排序

6.Iterates and Appended Reduce Worker对已排序的中间数据进行迭代,对于每一个唯一的中间键,它将与之对应的中间值集传递给用户的Reduce函数。将Reduce函数的输出Append到这个reduce分区的最终输出文件

7.Completed 完成所有map和reduce任务后master唤醒用户程序

--- edit by 云时代的运维开发(clouddevops)

机器 函数 数据 用户 文件 磁盘 输入 位置 系统 缓存 排序 不同 信息 内存 内容 副本 环境 硬件 程序 集群 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 服务器电源改台式机用视频 对网络安全理解是什么 关联规则是描述数据库中数据项 戴尔服务器续保 教育与培训中的网络技术 电视盒子进入ftp服务器 相片编辑软件开发 云南 网络安全和信息化 如何设置主机与服务器的连接 升级内核重启后服务器黑屏 新乡市战鹿互娱网络技术 软件开发重点工作 通达信无法连接行情服务器ip 乐其网络技术有限公司 河北网络技术服务直销价 福州群控软件开发商 连云港微生活网络技术有 四年级网络安全进校园图画设计 计算机和网络技术的关系 广州禾记互联网科技有限公司 计算机网络技术的学校专科 数据库实验报告心得体会大一 迅图网络技术有限公司怎么样 量化交易服务器一个月多少 江西宸智软件开发有限公司 c# 数据库update 网络安全员岗位职责工资 中国服务器采购规模 markdown 服务器 数字与网络技术专业委员会
0