问题标签 [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.

0 投票
0 回答
473 浏览

variables - 在 Hive 中运行使用 Hive 的变量值作为输入的 shell 命令

我有一个 python 脚本,它接收 Hive 表名和 2 个日期,并在这些日期之间添加所有分区。(运行一堆hive -e 'alter table add partition (date=...)'

我想做的是在运行具有 hiveconf:date 变量的 Hive 脚本时将其作为输入传递给 python 脚本。

就像是:

但当然变量替换不会发生......

有什么办法可以做到这一点?

0 投票
1 回答
433 浏览

hive - 将时间分区添加到表的最佳实践

有一个事件表,按时间(年、月、日、小时)分区想要在配置单元脚本中加入一些事件,这些事件将年、月、日、小时作为变量,你如何添加例如所有 6 小时的事件在我没有“恢复所有……”的情况下之前

10倍

0 投票
2 回答
2003 浏览

hadoop - 我可以从 AWS Elastic Mapreduce 作业访问 zookeeper

我是 Hadoop 新手,在 AWS Elastic Mapreduce 下运行。

我需要 Hadoop 中的集群范围的原子计数器,并建议为此使用 zookeeper。

我相信 zookeeper 是 Hadoop 堆栈的一部分(对吗?),我如何从 Elastic Mapreduce 作业访问它以设置和更新集群范围的计数器?

0 投票
0 回答
611 浏览

hadoop - 为什么第一组 Mappers 完成后 Map Jobs 会变慢?

假设我有 100 个映射器并行运行,总共有 500 个映射器在运行。

每个映射器接收的输入大小几乎相同,每个映射器应该花费的处理时间应该或多或少相同。

但是假设前 100 个映射器在 20 分钟内完成,接下来的 100 个映射器大约需要 25-30 分钟,下一批 100 个映射器每个大约需要 40-50 分钟。然后我们得到 GC 开销错误。

为什么会这样?

我已经设置了以下配置:

这里还能做什么?

0 投票
1 回答
553 浏览

hadoop - 如何确定并行映射器/减速器的数量以及堆内存?

假设我有一个 EMR 作业在 11 个节点集群上运行:m1.small 主节点,而 10 个 m1.xlarge 从节点。

现在一个 m1.xlarge 节点有 15 GB 的 RAM。

那么如何决定可以设置的并行映射器和减速器的数量?

我的工作是内存密集型的,我希望将越来越多的堆分配给 JVM。

另一个相关问题:如果我们设置以下参数:

那么这 4GB 将由 4 个进程(2 个映射器和 2 个减速器)共享还是每个进程都获得 4GB?

0 投票
2 回答
781 浏览

file-io - 如何在 Amazon Elastic MapReduce 中读取外部文件

您好我是使用 Amazon EMR 和 Hadoop 的新手。我想知道如何从 EMR 作业中读取外部文件(存储在 S3 中)。例如,我有一个包含一长串列入黑名单的字符串的文件。当我的 EMR 作业正在处理我的输入时,我如何让作业事先读取此列入黑名单的字符串列表,以便在处理期间使用它?

我尝试使用常规的 Java Scanner 类并对文件的 S3 路径进行硬编码,但这似乎不起作用,尽管我可能做错了......

0 投票
2 回答
4342 浏览

hadoop - 使用 s3distcp 和 Amazon EMR 复制单个文件

我想使用 s3distcp 将单个文件复制到 HDFS。我曾尝试使用 srcPattern 参数,但它没有帮助,它继续抛出 java.lang.Runtime 异常。我使用的正则表达式可能是罪魁祸首,请帮忙。

我的代码如下:

抛出异常:

0 投票
4 回答
985 浏览

java - 为大型数据集(5 GB)提供快速访问键值存储的最佳方法

有一个大小约为 5GB 的数据集。这个大数据集每行只有一个键值对。现在这需要读取数十亿次键的值。

我已经尝试过MapDB的基于磁盘的方法,但是它抛出ConcurrentModification Exception并且还不够成熟,无法在生产环境中使用。

我也不想将它放在数据库中并进行十亿次调用(尽管可以在这里完成一定级别的内存缓存)。

基本上,我需要在 hadoop 工作步骤的映射器/归约器中访问这些键值数据集。

0 投票
1 回答
883 浏览

emr - 将文件从 S3 复制到 Amazon EMR 上的 maprfs

有谁知道使用 Amazon 的 S3Distcp 工具和在 EMR 上运行的 MapR 是否存在问题?我正在尝试使用它,但在 /mnt/var/log/hadoop/steps 中不断出现以下异常:

我用来提交作业步骤的命令行是:

对于 --dest 参数,我也尝试了 maprfs:///PVData/raw 和 hdfs:///PVData/raw ,但它们也不起作用。

0 投票
3 回答
3258 浏览

hadoop - 从 Hadoop Job Tracker Web 界面访问 EMR 任务日志

我已经为我的主/从节点打开了 EC2 安全组,因此我可以从本地浏览器访问作业跟踪器界面。我使用http://MASTER-IP:9100.

一切正常,直到我尝试从任务详细信息中访问任务跟踪器日志 -http://ec2-xx-xx-xx-xx.compute-1.amazonaws.com:9100/taskdetails.jsp?tipid=task_201212181113_0001_m_000000

我获得的链接指向内部 EC2 IP 地址,因此我无法从本地计算机访问它们(链接是http://10.116.xxx.xx:9103/tasklog?attemptid=attempt_201212181113_0001_m_000000_0&all=true

有没有办法更改 EMR 以使这些链接包含任务跟踪器的公共 IP?

谢谢!