问题标签 [combiners]

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.

0 投票
1 回答
1813 浏览

hadoop - Spark 正在洗牌大量数据

我写了一个火花作业。如下所示:

该程序计算每个键的值的总和。根据我的理解,本地组合器应该在每个节点上运行并将相同键的值相加,然后在少量数据的情况下进行混洗。但在 SparkUI 上,它显示了大量的随机读取和随机写入(几乎 58GB)。我做错什么了吗?如何知道本地合路器是否工作?

集群详细信息:-
20 个节点集群
每个节点具有 80GB 硬盘、8GB RAM、4 核
Hadoop-2.7.2
Spark-2.0.2(prebuild-with-Hadoop-2.7.x 分发版)

输入文件详细信息:-
输入文件存储在 hdfs
输入文件大小:400GB
记录数:16,129,999,990
记录列:String(2 char),int,int,String(2 char),int,int,String(2 char),字符串(2 个字符),字符串(2 个字符)

注意:最大不同键数为 1081600。
在 spark 日志中,我看到任务以 localitylevel NODE_LOCAL 运行。

在此处输入图像描述

0 投票
3 回答
69 浏览

javascript - Javascript Array 组合元素以获得唯一的数组

假设我有一个这样的 JS 数组:

假设我想将具有相同lat & lon的元素的权重相加得到如下结果:

什么是在 JS 中做到这一点的有效方法?

0 投票
2 回答
723 浏览

apache - combineInputFormat 如何在 Hive 中工作?

我有一个具有以下属性的 Hive 表

  • 文本文件格式
  • 未分区
  • 未分桶
  • 有 50 个文件,每个文件 3.5 MB

遵循“DESCRIBE FORMATTED”命令中的表参数

表参数:

我正在对该表执行计数(*)操作,并且它正在运行

  • AWS 集群上有 4 个映射器和 1 个减速器
  • 我的独立集群上的 1 个映射器和 1 个减速器。[伪集群模式安装]

两个 Hive 会话的最大拆分大小为 256MB

我想知道组合输入格式是如何工作的?

在一台机器上,数据被合并在一起,因为所有文件/块都在同一台机器上,并且由于组合在一起的文件的总大小小于最大拆分大小,因此需要单个拆分,因此需要单个映射器。

在另一种情况下,AWS 集群产生了 4 个映射器。我读到 CombineInputFormat 使用机架/机器位置,但究竟如何?

提前感谢您的所有回答。

0 投票
1 回答
77 浏览

hadoop - Hadoop MapReduce 运行组合器时的权威来源

已经有很多这样的问题,答案相互矛盾。我还在文献和博客中发现了相互矛盾的陈述。在《Hadoop,权威指南》一书中,它说

Hadoop 不保证它会为特定的地图输出记录调用多少次[组合器](如果有的话)。换句话说,调用组合函数零次、一次或多次应该从减速器产生相同的输出

此处类似问题的答案基于什么基础 mapreduce 框架决定是否启动组合器建议组合器(如果已定义)将始终被调用一次,因为 MapOutputBuffer 需要被刷新。

可能存在映射器只发出一次的极端情况,这意味着即使定义了组合器,也不会运行。

我的问题是:这个问题的答案是否有明确的来源?当然,我已经搜索了 Hadoop 文档,但找不到任何东西。

0 投票
3 回答
12287 浏览

bash - 单个命令中的多个 git 命令按编译器遇到的顺序执行

我有以下按相应顺序运行的命令列表,以便可以提交源项目并将其推送到 Bitbucket 上的存储库:

现在不是将每一行放在各自的时间和顺序上,我想知道,是否有可能我可以将所有这些链接到一个git命令中并保持相同的顺序,如下所示?

或者至少组合多个相同类别的参数,如下所示?

我需要通过示例了解这两种情况的可能性。

0 投票
2 回答
49 浏览

python - python合并两个数据不一致的文件

现在我有两个文件:A 和 B。两者都是 csv 文件。

csv A 有一些数据:

csv B 有一些数据:

现在我想将两个 csv 文件 A 和 B 组合成一个新文件 C,如下所示:

首先我必须用 csv.reader 读取文件,代码是这样的:

我使用 dict 读取它们,如果相等,我想键组合

但我不知道该怎么做

注意:数据超过一百万行。

0 投票
0 回答
46 浏览

sql - SQL查询查找具有相关日期的行

push 我在 firbird sql 中有一个查询,它显示了员工的最后一份工作。一个工作可能会显示多个,因为该员工可能经常来自一个客户。

我有一个像这样的查询:

现在,我的结果应该是这样的:

这意味着,我不想让最新的行和相关的行与第一个从和最后一个到结合,如果下一个从不超过从第一个到的 7 天 - 否则我想显示两个都。

我现在的 SQL 是:

p>

我的结果是:

至少我想得到以下结果:

我该如何做最后一步?我不知道要解决我的问题:-(

补充:可以在 ms sql 或 firebird sql 中执行此操作,无论哪种方式,但我更喜欢 firebird sql。

谢谢你!

0 投票
1 回答
649 浏览

javascript - 如何在 PhpStorm 中捆绑 JavaScript 文件

如何在 PhpStorm(或 WebStorm)中将 2 个或多个 JavaScript 文件合并为一个文件。

我已经搜索并找到了这个结果,但这不是答案: Minifying JavaScript

我想要这样的东西:Visual Studio Bundler & Minifier 插件

0 投票
1 回答
572 浏览

hadoop - 将 combiner 用于 mapreduce 二次排序

我已经为我的应用程序实现了二次排序。

对于 File-1 中的每条记录,File2 和 File3 中各有 3 条记录。

复合键是 ::name + (pos+r)

自然键是 :: 名称

排序顺序基于复合键。基于 (pos+r) 的升序

预期输出为

File1 特定名称 (aa) 的内容后跟所有 file2 内容(三行 aa 以 pos+r 排序),然后是文件三内容(三行 aa 以 pos+ 排序)

AA,123,1,34,55,11,12,13

bb,234,99,54,32,15,19,13

我已经使用 setGroupingComparatorClass、setSortComparatorClass 和自定义分区器在二次排序中实现了这一点。

我的疑问是:??

1)如何为此场景添加组合器。

  • 据我了解,分组和排序发生在reducer阶段,一旦所有map输出(基于自然键分区)都转移到reduce机器。

2)如果添加了组合器,排序将如何以及何时发生,以便reduce函数以正确的顺序接收来自所有映射器的输出。

  • 地图输出是否会被排序两次,一次在每个地图之后执行的组合器中,然后在归约器端对所有组合器输出进行排序?
0 投票
3 回答
97 浏览

php - 将数组条目与其他所有条目组合

对不起标题,因为它看起来像大多数其他关于组合数组的问题,但我不知道如何更具体地写它。

我需要一个 PHP 函数,它将一个数组的条目(从 1 到任意的动态大小)组合成每个可能组合的字符串。

这是一个包含 4 个条目的示例:

这应该是结果:

输入数组的排序是相关的,因为它会影响输出。如您所见,应该有一个结果 like e1-e2but no e2-e1

看起来真的很复杂,因为输入数组可以有任意数量的条目。我什至不知道是否有描述这种情况的数学结构或名称。

以前有人做过吗?