问题标签 [emr]
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.
python - 带有 MrJob 的 EMR 上的随机 java.io.FileNotFoundException jobcache 错误
我正在使用 MrJob 并尝试在 Elastic Map Reduce 上运行 Hadoop 作业,该作业不断随机崩溃。
数据如下所示(制表符分隔):
而且底层的 MapReduce 非常简单:
当我运行它时,我使用以下命令,使用默认的 mrjob.conf(我的密钥是在环境中设置的):
当我在小型数据集上运行它时,它完成得很好。当我在整个数据语料库(价值约 10GiB)上运行它时,我会收到这样的错误(但不是每次都在同一点!):
我已经运行了两次;第一次在 45 分钟后死亡,这次在 4 小时后死亡。它两次都死在不同的文件上。我检查了它死掉的两个文件,都没有任何问题。
不知何故,它无法找到它写入的溢出文件,这让我感到困惑。
编辑:
我再次运行该工作,几个小时后它又死了,这次出现了不同的错误消息。
hadoop - Amazon Elastic Map Reduce - 创建作业流
我对亚马逊服务很陌生。我在创建工作流方面遇到了问题。每次我创建任何工作流程时,它都会失败或关闭。我不清楚输入、输出或映射器函数上传技术。我已经关注了开发人员部分,但事情并不清楚。任何建议都会有所帮助。提前致谢。
错误日志是
amazon-s3 - 在 S3 上压缩文件
我在 S3 上有一个 17.7GB 的文件。它是作为 Hive 查询的输出生成的,并且未压缩。
我知道通过压缩它,它大约是 2.2GB (gzip)。当传输成为瓶颈(250kB/s)时,如何尽快在本地下载此文件。
我没有找到任何直接的方法来压缩 S3 上的文件,或者在 s3cmd、boto 或相关工具中启用传输压缩。
hadoop - 如何在 Hadoop Hive 中执行“事件顺序”查询?
在过去的 2 个月里,我一直在学习 Hive,但我无法弄清楚如何进行某些基于序列的查询。举个例子:
- 我有一个包含用户操作的巨大日志
- 每个用户操作都有一个日期字段,但由于来自不同机器的多个日志文件,显然可能不会按该顺序扫描
- 每个日志可以记录各种不同的事件。对于这个例子,我将它们表示为字母:A、B、C、D...
问题:我将如何编写一个询问“平均而言,事件 A 在 B 发生之前发生多少次”的查询?
我知道如何对用户进行分组,只取完成 A 和 B 的用户并平均 A 发生的数量,但是限制 B 的第一次出现似乎很困难。我想我实际上可以通过将 10 个左右看起来很讨厌的查询串在一起来做到这一点,但我想知道是否有一种我不知道的更简单的方法来做到这一点。
谢谢!
hadoop - 发送到 Mapper 类中的 map 方法的值不正确或读取不完整
我有一个由 3 个步骤组成的工作。我的输入是存储在 Amazon S3 中的加密 JSON 对象(每行一个)。(s3e://)。
作业参数:
其他一些重要参数:
我面临的问题是我的第二步的映射器几乎总是失败,除了我的 JSON 被错误地终止。经过进一步调查,我确定 JSON 本身在输入文件中是正确的,并且是映射器读取了不完整的值。读取的值TextInputFormat
不完整且错误终止。
这种情况一直在发生。但有趣的是,有时第二步通过,第三步失败。
我的测试数据非常庞大,在成功完成第一步(总是通过)后,我得到了 5 550-600 MB 的检查点间歇文件,这些文件将输入到第二步。
在第二步的输入未加密的尝试之一中,它成功了。
我很困。任何类型的指针或帮助将不胜感激。
hadoop - Hadoop:AWS EMR 作业中的输入和输出路径
我正在尝试在 Amazon Elastic Mapreduce 中运行 Hadoop 作业。我的数据和 jar 位于 aws s3 中。当我设置工作流程时,我将 JAR 参数传递为
下面是我的hadoop主要功能
但是,我的工作流程因以下登录 stderr 而失败
那么如何在 aws emr 中指定我的输入和输出路径呢?
hadoop - Elastic Map Reduce:继续出错?
我们非常广泛地使用 Elastic Map Reduce,并且正在使用它处理越来越多的数据。有时我们的工作会因为数据格式错误而失败。我们不断修改我们的地图脚本以处理各种异常,但有时仍然有一些格式错误的数据会设法破坏我们的脚本。
即使某些地图或减少作业失败,是否可以将 Elastic Map Reduce 指定为“继续出错”?
至少,是否有可能增加整个集群失败的最小失败任务数(有时,我们在 500 个左右的作业中只有 1 个失败的作业,我们希望至少获得这些结果并拥有集群继续运行。)
此外,虽然我们可以修改 map 脚本来处理新的异常,但我们使用默认的 Hadoop“聚合”reducer,当它失败时,我们无法捕获异常。是否有任何特殊的方法来处理“聚合”reducer 中的错误,或者我们是否必须使用上面问题 #2 中可用的任何东西(增加失败任务的最小数量。)
amazon-s3 - Amazon EMR 如何知道作业何时完成?
我正在使用 Amazon Elastic MapReduce Ruby ( http://aws.amazon.com/developertools/2264 ) 来运行我的蜂巢作业。有没有办法知道工作何时完成?现在我能想到的就是使用“--list --active”继续运行emrclient,但我希望有更好的方法来做到这一点。
谢谢
shell - 将目录传递给 hadoop 流:需要一些帮助
上下文是我正在尝试使用我运行的 bash 脚本在 Amazon EMR (Web UI)上运行流式作业:
输入目录中有子目录,这些子目录有 gzip 压缩的数据文件。
失败的相关部分mapperScript.sh
是:
基本上,我需要以流模式读取子目录,当我运行它时,hadoop 抱怨说:
我知道这里已经问过类似的 q
那里的建议是编写自己的 InputFormat。我想知道在编写脚本/给出 EMR 输入的方式上是否遗漏了其他内容,或者用 Java 编写自己的 InputFormat 是否是我唯一的选择。
我也尝试将我的输入与“输入/*”一起提供给 EMR,但没有运气。
hive - Hive multiple subqueries and group by
I'm switching statistics from MySQL to Amazon DynamoDB and Elastic MapReduce.
I have query bellow that works with MySQL and I have the same table on hive and need the same results as on MySQL (product views for last_week, last_month and last_year).
I figured out how to get results for example for last month with hive:
but i need grouped results like I get with MySql:
Is it possible to do this with hive?
Thank you in advance,
Amer