(Translated by https://www.hiragana.jp/)
MapReduce - 维基百科,自由的百科全书

MapReduce[1]これGoogle提出ていしゅつてきいち软件ようだい规模すうすえしゅうてき并行运算概念がいねんMapうつ)”かずReduce(归约)”,及他们的主要しゅよう思想しそうみやこただし函数かんすうしき编程语言鉴的,还有从りょう编程语言らいてき特性とくせい[註 1]

とうまえてき软件实现指定していいち个“Map”(うつ函数かんすうようらい一组键值对映射成一组新的键值对,指定してい并发てき“Reduce”(归约)函数かんすうようらい所有しょゆううつ射的しゃてき键值对中てきごと一个共享相同的键组。

うつ射和いざわ归约

编辑

简单らいせつ,一个映射函数就是对一些独立元素组成的概念上的列表(れい如,一个测试成绩的列表)てきごと一个元素进行指定的操作(如,有人ゆうじん发现所有しょゆう学生がくせいてきなり绩都こう估了いちふん以定义一个“减一”てきうつ函数かんすうようらい修正しゅうせい这个错误。)。こと实上,まい元素げんそ独立どくりつ操作そうさてき,而原始げんしれつひょうぼつゆう更改こうかいいん为这さと创建りょう一个新的列表来保存新的答案。这就说,Map操作そうさ以高并行てき,这对高性能こうせいのう要求ようきゅうてき应用以及并行计算领域てき需求非常ひじょう有用ゆうよう

而归约操作そうさゆびてき对一个列表的元素进行适当的合并(继续前面ぜんめんてきれい,如果有人ゆうじんそう知道ともみちはん级的平均へいきんぶん该怎么做?以定义一个归约函数,つう过让れつひょうちゅうてき奇數きすう(odd)ある偶數ぐうすう(even)元素げんそ自己じこてきしょう邻的元素げんそしょうてき方式ほうしきれつひょう减半,如此递归运算ちょくいたれつひょうただあましもいち元素げんそしかきさきよう这个元素げんそじょ人数にんずう,就得いたりょう平均へいきんぶん)。虽然如映しゃ函数かんすう么并ぎょうただしいん为归约总ゆう一个简单的答案,だい规模てき运算しょう独立どくりつ所以ゆえん归约函数かんすうざい高度こうど并行环境也很有用ゆうよう

分布ぶんぷもたれせい

编辑

MapReduceどおり过把对数すえしゅうてきだい规模操作そうさぶん发给网络じょうてきまい个节てん实现もたれせいごと个节てんかい周期しゅうき性的せいてき完成かんせいてき工作こうさくじょう态的更新こうしん报告かいらい。如果一个节点保持沉默超过一个预设的时间间隔,しゅ节点(类同Google檔案系統けいとうなかてきあるじふく务器)记录这个节点じょう态为死亡しぼう,并把分配ぶんぱい给这个节てんてきすうすえ发到别的节点。まい操作そうさ使用しよう命名めいめいぶんけんてき不可ふか分割ぶんかつ操作そうさ以确かい发生并行线程间的冲突;とうぶんけん改名かいめいてき时候,けい统可能会のうかい们复せいいたにん务名以外いがいてき另一个名字上去。(避免副作用ふくさよう)。

归约操作そうさ工作こうさく方式ほうしき很类ただしよし于归约操作そうさざい并行能力のうりょく较差,しゅ节点かいつきりょう归约操作そうさ调度ざいいち个节てんじょうあるもの离需よう操作そうさてきすうすえつき可能かのうちかてき节点うえりょう;这个特性とくせい以满あしGoogleてき需求,いん为他们有あし够的带宽,们的内部ないぶ网络ぼつゆう么多てきつくえ

其他实现

编辑

参考さんこう

编辑
  1. ^ 1.0 1.1 Dean, Jeffrey; Ghemawat, Sanjay. MapReduce: simplified data processing on large clusters. Communications of the ACM. 2008-01, 51 (1): 107–113 [2020-08-12]. doi:10.1145/1327452.1327492. (原始げんし内容ないようそん于2020-06-27). 

ちゅう

编辑
  1. ^ "わが们的灵感lisp其他函数かんすうしき编程语言ちゅうてき古老ころうてきうつ射和いざわ归约操作そうさ."——MapReduce[1]


外部がいぶ链接

编辑