问题标签 [reducers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
clojure - 从文件层次结构中创建可折叠集合的惯用方法是什么?
拥有一组文件/目录我想创建一个所有叶子文件的集合。我希望生成的集合扩展 clojure.core.protocols/CollReduce 协议。
我需要扩展协议还是有帮助功能?
换句话说。减速器仅有助于并行减少还是我可以使用它们来有效地并行生成可简化的集合?
为了说明这个问题,让我展示一下可行的实现,假设文件层次结构不超过两个级别(例如,我们的集合可以包含文件和目录,但目录只能包含文件)
现在,以类似递归的方式(或者更确切地说作为转换的级联)定义扩展会很好,因此它适用于所有级别,但以并行方式执行。与 reducer 一样,我们可以定义减少的提前终止,我希望能够定义在满足某些条件时停止的生成(集合扩展)(在目录层次结构树中到达文件,如文件示例)
environment-variables - 如何告诉我的脚本在 Hadoop 流中运行的减速器任务 ID/编号?
我希望我的流式减速器任务的输出对于分区号 0 与其他分区不同。如何从我的脚本中判断它正在运行的减速器任务是什么?
clojure - Clojure 1.5 中的 Reducers 库中是否一直有传感器?
今天听到一个评论:
“转换器一直都在,他们在 1.5 中与减速器一起出现”
Indeed - Richs 的Reducer 博客条目剖析与他的 Strange Loop Transducers 演讲中使用的逻辑非常相似。(将“变压器”替换为“传感器”)。
我的问题是:Clojure 1.5 中的 Reducers 库中的传感器一直存在吗?
hadoop - reducer 总是失败,map 成功
我在 1GB 的文本文件上运行简单的 wordcount 作业。我的集群有 8 个 Datanode 和 1 个 namenode,每个都有 3GB 的存储容量。
当我运行 wordcount 时,我可以看到 map 总是成功,而 reducer 抛出错误并失败。请在下面找到错误消息。
你能告诉我如何解决这个问题吗?
谢谢纳瓦兹
performance - 为什么这个 Clojure Reducers r/fold 没有提供任何性能优势?
我想知道为什么下面的代码在 r/fold 的情况下没有提供加速?我对减速器有什么误解吗?
我通过 emacs 和 lein run 在一个相当慢的(尽管有 2 个内核)Ubuntu 12.04 开发箱上运行它,每个都具有相同的结果。
;; 2
“经过时间:26076.434324 毫秒”
“经过时间:25500.234034 毫秒”
谢谢。
hadoop - 减速器没有被调用
这是埃博拉病毒数据集的代码。这里根本没有调用减速器。映射器输出仅被打印。
驱动类:
这是映射器:
最后,reducer:
输出只是映射器输出。没有调用减速器。任何帮助,将不胜感激。
hadoop - 自定义分区器将单个键发送到多个减速器?
如果我只有一把钥匙。我可以避免将其仅发送到一个减速器(并将其分配到多个减速器)吗?
我知道那我可能需要第二个 map reduce 程序来组合 reducer 输出?这是一个好方法吗?或者请告诉我是否有更好的方法?
hadoop - Hadoop:减速器没有被调用
我知道这是一个非常基本的问题,但我无法找到我在哪里犯了错误。我的 Reducer 没有从驱动程序代码中调用。如果有人可以帮助我,我将不胜感激。
我的驱动程序代码
映射器代码
减速机代码
clojure - 减速器(在 Clojure 中)是否解决了 Guy Steele 概述的缩放折叠累积问题?
在她的演讲中,Clojure Bodil 的未来提出了以下主张:
Guy Steele 在 ICFP 上做了一个演讲,名为为并行执行组织功能代码(或 foldl 和 foldr 被认为有轻微危害)(也在ACM 中)。
Guy Steele 在幻灯片 70 中断言:
只要你说“第一
SUM = 0
”,你就被灌输了。累加器不利于并行性。请注意foldl
和foldr
,虽然是功能性的,但从根本上来说是累积性的。
这很有趣。所以 Bodil 说 Guy Steele 是在说一个问题。然后她声称 Rich 用Reducers(和Transducers是这种思路的延续)解决了这个问题。在16:11的 Transducers 演讲中,我们看到 Rich 提到了一些关于foldr
.
- Bird -构造函数式编程讲座(1988 年)
- Hutton -关于 fold 的普遍性和表现力的教程(1999 年)
Rich 有效地表示fold
s 是可组合的——您可以使用它们来构建其他高阶函数,例如map
和filter
。
我的问题是 - Bodil 是对的吗?Rich 解决了 Guy Steele 提出的问题了吗?减速器(在 Clojure 中)是否解决了 Guy Steele 概述的缩放折叠累积问题?