草庐IT

hadoop - yarn : How to run MapReduce jobs with lot of mappers comparing to cluster size

coder 2024-01-10 原文

我有 1 节点 Hadoop 测试设置和 MapReduce 作业,它启动 96 个映射器和 6 个缩减器。在迁移到 YARN 之前,这项工作表现稳定但正常。使用 YARN,它开始 100% 挂起,大多数映射器处于“挂起”状态。

作业实际上是 6 个子作业(每个 16 个映射器 + 1 个缩减器)。此配置反射(reflect)了生产过程顺序。所有这些都在单个 JobControl 下。与集群大小相比,节点数量少且作业相对较大的情况下,是否需要检查任何配置或最佳实践?

当然,我关心的不是性能,而是开发人员完成这项工作的能力。最坏的情况是我可以通过分组子作业来“减少作业”,但我不想这样做,因为在生产中没有理由这样做,我希望测试和生产顺序相同。

当我迁移到 YARN 时,调度程序更改为 FairScheduler,目前它是我运行 Cloudera 时唯一的选择,Cloudera 强烈建议不要使用除 fair scheduler 之外的任何东西。因此,切换到 FIFO 调度程序不是一种选择。

除了“重新设计工作”之外,我还有其他选择吗?

最佳答案

目前解决了我禁用“每个用户队列”逻辑(切换到单个队列)和使用分配文件限制正在运行的应用程序数量的麻烦。根据http://hadoop.apache.org/docs/r2.3.0/hadoop-yarn/hadoop-yarn-site/FairScheduler.html这允许为每个队列配置几乎任何你需要的东西。

以下是实际步骤:

  • yarn.scheduler.fair.user-as-default-queue 设置为 false。
  • 在 Cloudera 管理器中,队列“默认”的动态资源分配已更改,因此队列允许不超过 2 个正在运行的应用程序。对于 1 节点设计测试工具来说已经足够好了。在开源中,这将是对分配文件的更正。

现在可以根据需要工作了。保持其他一切不变,包括默认政策。

关于hadoop - yarn : How to run MapReduce jobs with lot of mappers comparing to cluster size,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23348927/

有关hadoop - yarn : How to run MapReduce jobs with lot of mappers comparing to cluster size的更多相关文章

  1. hadoop安装之保姆级教程(二)之YARN的配置 - 2

    1.1.1 YARN的介绍 为克服Hadoop1.0中HDFS和MapReduce存在的各种问题⽽提出的,针对Hadoop1.0中的MapReduce在扩展性和多框架⽀持⽅⾯的不⾜,提出了全新的资源管理框架YARN. ApacheYARN(YetanotherResourceNegotiator的缩写)是Hadoop集群的资源管理系统,负责为计算程序提供服务器计算资源,相当于⼀个分布式的操作系统平台,⽽MapReduce等计算程序则相当于运⾏于操作系统之上的应⽤程序。 YARN被引⼊Hadoop2,最初是为了改善MapReduce的实现,但是因为具有⾜够的通⽤性,同样可以⽀持其他的分布式计算模

  2. 大数据之Hadoop数据仓库Hive - 2

    目录:一、简介二、HQL的执行流程三、索引四、索引案例五、Hive常用DDL操作六、Hive常用DML操作七、查询结果插入到表八、更新和删除操作九、查询结果写出到文件系统十、HiveCLI和Beeline命令行的基本使用十一、Hive配置一、简介Hive是一个构建在Hadoop之上的数据仓库,它可以将结构化的数据文件映射成表,并提供类SQL查询功能,用于查询的SQL语句会被转化为MapReduce作业,然后提交到Hadoop上运行。特点:简单、容易上手(提供了类似sql的查询语言hql),使得精通sql但是不了解Java编程的人也能很好地进行大数据分析;灵活性高,可以自定义用户函数(UDF)和

  3. Ubuntu下Hadoop的单机安装 - 2

            云计算实验中要求我们在Linux系统安装Hadoop,故来做一个简单的记录。· 注:我的操作系统环境是Ubuntu-20.04.3,安装的JDK版本为jdk1.8.0_301,安装的Hadoop版本为hadoop2.7.1。(不确定其他版本是否会出现版本兼容问题)Hadoop安装步骤如下:        一、更新apt和安装vim编辑器        二、配置本机无密码登录SSH        三、安装JAVA环境        四、下载安装Hadoop        五、伪分布式搭建一、更新apt和安装vim编辑器1、更新aptsudoapt-getupdate2、安装vim

  4. flink on yarn - 2

    文章目录使用flinksqlclientonyarnsession模式Per-JobCluster模式flinkrunflinkrunapplication-tyarn-application配置任务退出时保留Checkpoint从外部checkpoint恢复应用资料使用安装完hadoop3.3.4之后,启动hadoop、yarn将flink1.14.6上传到各个服务器节点,解压flinksqlclientonyarnhttps://nightlies.apache.org/flink/flink-docs-release-1.15/docs/deployment/overview/Appli

  5. ruby - yarn 未初始化常量 Socket::SOL_TCP - 2

    我在这里尝试使用yarn,遇到了一个可能与ruby​​相关的问题。在执行任何yarn命令,我收到错误.../.rvm/gems/ruby-2.3.0/gems/yarn-0.1.1/lib/yarn/server.rb:14:in':uninitializedconstantSocket::SOL_TCP(NameError)错误堆栈:$yarn.../.rvm/gems/ruby-2.3.0/gems/yarn-0.1.1/lib/yarn/server.rb:14:in':uninitializedconstantSocket::SOL_TCP(NameError)Didyoume

  6. MAC系统安装Hadoop - 2

    一、设置免密登录1、系统偏好设置-----共享----勾选远程登录,所有用户2、打开终端,输入命令ssh-keygen-trsa,一直回车即可2.查看生成的公钥和私钥    cd~/.ssh    ls会看到~/.ssh目录下有两个文件:①私钥:id_rsa②公钥:id_rsa.pub3.将公钥内容写入到~/.ssh/authorized_keys中    cat~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys4.测试在terminal终端输入 sshlocalhost如果出现以下询问输入yes,不需要输入密码就能登录,说明配置成功Areyousureyouw

  7. javascript - 用于在 React Native metro bundler 中使用动态 yarn 工作空间路径将节点模块列入黑名单的正则表达式 - 2

    类似于:Howtoblacklistspecificnode_modulesofmypackage'sdependenciesinreact-native'spackager?我正在尝试使用需要返回正则表达式的黑名单选项从metropackager中排除reactnative。我需要的是返回如下内容:/\/DYNAMIC_PROJECT_DIRECTORY\/node_modules\/react-native\/.*/,我可以在DYNAMIC_PROJECT_DIRECTORY中插入一个变量,因为它会根据其他模块的yarn工作区路径而改变。我只是不熟悉正则表达式!谢谢编辑:我尝试在路

  8. javascript - 在 docker 容器中安装 yarn 说缺少依赖 - 2

    我正在使用node:6.7.0图像作为我的docker容器,然后按照yarn的安装指南进行操作sudoapt-keyadv--keyserverpgp.mit.edu--recvD101F7899D41F3C3echo"debhttp://dl.yarnpkg.com/debian/stablemain"|sudotee/etc/apt/sources.list.d/yarn.list然后我做apt-getupdate&&apt-getinstallyarn但此时我收到一条错误消息,上面写着yarn:Depends:nodejs(>=4.0.0)butitisnotgoingtobei

  9. javascript - yarn 无法使用 node 12.1.0 构建 node-sass - 2

    我正在尝试使用yarninstall安装我的包我安装了node12.1.0,据我所知,node-sass需要至少版本4.12+才能工作Node12我的package.json文件是这样的:{"name":"redacted","private":true,"dependencies":{"@rails/webpacker":"3.5","babel-preset-react":"^6.24.1","bootstrap":"^4.1.2","font-awesome":"^4.7.0","js-md5":"^0.7.3","moment":"^2.22.2","prop-types":"

  10. javascript - 如何在 ubuntu 中安装特定的 yarn 版本 - 2

    如何在ubuntu中安装yarn版本0.27.5?因为最新更新的yarn版本是1.2.1。 最佳答案 您可以通过查看https://github.com/yarnpkg/yarn/releases来选择任何版本的yarn并滚动和分页到您需要的版本。对于yarn0.27.5,转到https://github.com/yarnpkg/yarn/releases/tag/v0.27.5你可以看到yarn0.27.5的所有包。下载yarn_0.27.5_all.deb(Ubuntu是基于Debian的Linux)然后您可以使用dpkg安装它

随机推荐