问题标签 [elastic-map-reduce]

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 投票
2 回答
4223 浏览

java - Java 中的 AWS DynamoDB 和 MapReduce

我有一个巨大的 DynamoDB 表,我想对其进行分析以聚合存储在其属性中的数据。然后应由 Java 应用程序处理聚合数据。虽然我了解 MapReduce 背后的真正基本概念,但我以前从未使用过它。

就我而言,假设我在每个 DynamoDB 项目中都有一个customerIdandorderNumbers属性,并且我可以为同一个客户拥有多个项目。喜欢:

基本上我想对每个 customerId 的 orderNumbers 求和,然后在 Java 中使用聚合执行一些操作。

AWS Elastic MapReduce 可能对我有帮助,但我不明白如何将自定义 JAR 与 DynamoDB 连接。我的自定义 JAR 可能需要同时公开 amapreduce函数,我在哪里可以找到正确的接口来实现?

另外,我对文档有点困惑,看来我应该先将数据导出到 S3,然后再运行我的自定义 JAR。这个对吗?

谢谢

0 投票
2 回答
1287 浏览

elastic-map-reduce - Ganglia 和 Amazon Elastic Map Reduce - 安装问题

按照“在作业流上初始化 Ganglia”的说明,我启动了我的集群,但没有看到任何 Ganglia 进程正在运行(在 8157 上)。

http://docs.amazonwebservices.com/ElasticMapReduce/latest/DeveloperGuide/init_Ganglia.html

elastic-mapreduce --create --alive --name "Tom's Daily Hive 8x Flow" --instance-type c1.medium --num-instances 8 --availability-zone us-east-1a --bootstrap-action "s3 ://elasticmapreduce/bootstrap-actions/install-ganglia" --stream

有一个0K文件在:/tmp/ganglia-installed

有什么建议么?谢谢!

0 投票
2 回答
7322 浏览

amazon-s3 - 如何终止/删除 Amazon EMR 中的作业流?

我使用 Amazon Elastic MapReduce (Amazon EMR) 创建了一个作业流,但由于某些未知原因而失败。然后我尝试通过 AWS 管理控制台终止作业流程,但“终止”按钮被禁用。然后我尝试使用 CLI 终止作业流程,它显示作业流程已终止,但是当通过 CLI 以及管理控制台的 Elastic MapReduce 选项卡查看时,它仍然在作业流程列表中显示为失败。

请让我知道如何从列表中删除工作流程。

当我尝试调试作业流程时,它显示两个错误:

  1. 调试功能不适用于此作业流程,因为您在创建 Amazon S3 日志路径时未指定它。
  2. 作业流程失败,原因是:无效的存储桶名称“testBucket”:存储桶名称只能包含小写字母、数字、句点 (.) 和破折号 (-)。
0 投票
1 回答
263 浏览

amazon-web-services - Scale Up 与 Scale Out 场景对 Elastic Map 的性能影响减少

我刚刚运行了 Elastic Map reduce 示例应用程序:“Apache 日志处理”

默认值:当我使用默认配置(2 个小型核心实例)运行时 - 花了 19 分钟

Scale Out:然后我使用配置运行它:8 个小型核心实例 - 花了 18 分钟

扩大规模:然后我使用配置运行它:2 个大型核心实例 - 花了 14 分钟。

当我们拥有更大的数据集时,如何看待纵向扩展和横向扩展的性能?

谢谢。

0 投票
1 回答
1515 浏览

memory - 为什么 EMR 实例没有映射器那么多的 reducer?

默认情况下,在 EMR 作业期间,实例配置为具有比映射器更少的 reducer。但是减速器没有得到任何额外的内存,所以看起来它们应该能够拥有相同的数量。(比如超大的高cpu实例有7个mapper,但只有2个reducer,但是mapper和reducer都配置了512MB的可用内存)。

有谁知道这是为什么,有什么方法可以指定使用与映射器一样多的减速器吗?

编辑:我的数量错误,它是 512 MB

0 投票
1 回答
938 浏览

hadoop - 有人在不使用 EMR 的情况下使用 DynamoDB 和 Hive?

我正在阅读使用 Hive 在 DynamoDB 上查询数据的以下集成。 http://aws.typepad.com/aws/2012/01/aws-howto-using-amazon-elastic-mapreduce-with-dynamodb.html

但是根据该链接,需要在 EMR 之上设置 Hive。但是我想知道我是否可以将这种集成与我已经拥有的独立 Hadoop 集群一起使用,而不是使用 EMR。有人做过吗?与使用 EMR 相比,DynamoDB 和 HDFS 中的数据会不会出现同步问题?

0 投票
1 回答
1682 浏览

hadoop - Elastic Mapreduce Map 输出丢失

我在 Amazon Elastic MapReduce 上运行大量(超过 100 个节点)的 mapreduce 作业。

在 reduce 阶段,已经完成的 map 任务不断失败

发生这种情况的映射器的比例足够少,我不介意,除非它发生时,reducers 都会暂停并等待 1 个映射任务重新运行,因此整个作业每次都会暂停 1-5 分钟.

我认为这与此错误有关-> https://issues.apache.org/jira/browse/MAPREDUCE-2980 有谁知道如何在不发生这种情况的情况下运行 EMR 作业?

编辑:如果有帮助,这里有更多信息。输入格式为SequenceFileInputFormat。输出格式是SequenceFileOutputFormat. 键值对是用户定义的(值很大并且实现Configurable)。没有Combiner,只有MapperReducer。我正在对输入和输出使用块压缩(并且中间 kv 对也正在进行记录压缩。这是 EMR 的默认设置)。SnappyCodec我相信编解码器是默认的。最后,它实际上是一系列按顺序运行的作业,每个作业都使用前一个作业的输出作为下一个作业的输入。前几个工作很小并且运行良好。只有当工作开始变得非常大时,才会发生这种情况。

0 投票
1 回答
1369 浏览

hadoop - 当集群总共有 5 个节点时,为什么 Nutch 只在一个 Hadoop 节点上运行 fetch 步骤?

我在具有 3 个工作节点的 Elastic MapReduce 上运行 Nutch。我正在使用 Nutch 1.4,它附带的默认配置(在添加用户代理之后)。

但是,即使我正在爬取包含 30,000 个域的列表,但获取步骤仅从一个工作节点运行,即使解析步骤在所有三个节点上都运行。

如何让它从所有三个节点运行 fetch 步骤?

*编辑* 问题是我需要将 mapred.map.tasks 属性设置为我的 Hadoop 集群的大小。您可以在此处找到此文档

0 投票
1 回答
683 浏览

amazon-s3 - 为什么 AWS MapReduce 中的 Elastic MapReduce 作业流失败?

我在 AWS MapReduce 中创建了一个作业流,我创建了一个上下文广告(Hive 脚本)的作业流 - 完成了“启动交互式 Hive 会话”,选择了 m1.small 实例,在没有 VPC 子网 ID 的情况下继续,并在配置引导操作中配置 Hadoop。现在,作业流进入启动状态,15-20 分钟后进入失败状态,不会进入等待状态。它显示“上次状态更改原因:用户帐户无权调用 EC2”我通过 IAM 将 PowerUserAccess 授予自己。我也给自己提供了以下政策。

1.AmazonEC2FullAccess 2.AmazonElasticMapReduceFullAccess 3.IAMFullAccess

在给出所有这些策略后,它仍然显示“用户帐户无权调用 EC2”

请指导。谢谢。

0 投票
2 回答
834 浏览

python - 文件未在 AWS Elastic Map Reduce 上缓存

我在 AWS Elastic MapReduce 上运行以下 MapReduce:

./elastic-mapreduce --create --stream --name CLI_FLOW_LARGE --mapper s3://classify.mysite.com/mapper.py --reducer s3://classify.mysite.com/reducer.py --input s3n://classify.mysite.com/s3_list.txt --output s3://classify.mysite.com/dat_output4/ --cache s3n://classify.mysite.com/classifier.py#classifier.py --缓存存档 s3n://classify.mysite.com/policies.tar.gz#policies --bootstrap-action s3://classify.mysite.com/bootstrap.sh --enable-debugging --master-instance-type m1.large --slave-instance-type m1.large --instance-type m1.large

由于某种原因,cacheFileclassifier.py似乎没有被缓存。reducer.py尝试导入时出现此错误:

classifier.py绝对存在于s3n://classify.mysite.com/classifier.py. 对于它的价值,政策档案似乎加载得很好。