我正在通过包括sqoop1.4.6的Cloudera5.8.0使用Hive/Hadoop/Sqoop。我的Hadoop集群有4个Hadoop数据节点,每个节点有16GB内存,并且都在运行ImpalaDaemons和YarnNodeManagers。Yarn服务器与Hue、Hive和Sqoop2一起在具有32GBRAM(具有多种角色)的服务器上运行。使用Sqoop从MySQL数据库导入(从使用Sqoop1的主服务器通过bash脚本导入到增量作业中的parquetfile格式),即使导入只有200行(甚至30行)的表,它似乎也很慢(平均50秒)在一种情况下)。即使在Ubermode中,它也
我有一个简单的工作,就是通过sparksql在hdfs中读取hive。我首先在yarn-client模式下运行它,我没有遇到任何问题。几次之后,我开始通过yarn-cluster模式启动它,但我遇到了这个问题:我有这个hdfs权限错误:Causedby:MetaException(message:org.apache.hadoop.security.AccessControlException:Permissiondenied:user=yarn,access=EXECUTE,inode="/Projects/SNB/directory/Private/table/table_ORC"
我们有一个在HDFS2.7.3上运行的Spark流应用程序,使用Yarn作为资源管理器....在运行应用程序时......这两个文件夹/tmp/hadoop/data/nm-local-dir/filecache/tmp/hadoop/data/nm-local-dir/filecache正在填满,因此磁盘......所以根据我的研究发现,在yarn-site.xml中配置这两个属性会有所帮助yarn.nodemanager.localizer.cache.cleanup.interval-ms2000yarn.nodemanager.localizer.cache.target-si
我想获取在ResourceManager上运行的每个应用程序。我正在使用Yarn自带的RESTAPI,特别是http:///ws/v1/cluster/apps此API调用返回我要查找的结果。但我想按开始时间降序排序。我得到的结果没有按任何特定顺序排序(我认为它是使用应用程序ID按字典顺序排序的,但我不确定)。该文档提供了API接受的参数列表,但我没有看到任何对结果进行排序的方法。如果RESTAPI不支持排序,那么有没有其他方法可以对结果进行排序?我正在关注的文档是这个https://hadoop.apache.org/docs/r2.7.0/hadoop-yarn/hadoop-ya
yarn是否会在hdfs上存储有关已完成应用程序的信息,包括运行时?我只是想通过hdfs上的一些文件来获取应用程序运行时(如果确实存在这样的文件,我已经检查了日志并且没有运行时信息)而不使用任何监控软件。 最佳答案 您可以使用ResourceManagerREST获取所有已完成应用程序的信息。http://resource_manager_host:port/ws/v1/cluster/apps?state=FINISHED对URL的GET请求将返回一个JSON响应(也可以获得XML)。必须针对每个应用程序的elapsedTime解
我有7个数据节点和1个名称节点。我们的每个节点都有32Gb的内存和20个内核。所以我将容器内存设置为30Gb,将容器虚拟CPU内核设置为18。然而,只有三个数据节点工作,其余数据节点不工作。下面的代码是我的设置。/opt/spark/bin/spark-submit\--masteryarn\--deploy-modecluster\--driver-memory4g\--driver-cores18\--executor-memory8g\--executor-cores18\--num-executors7\Java代码SQLContextsqlc=newSQLContext(sp
我正在编写YARN应用程序,它必须在每个集群节点上运行一些java代码。我从WritingYARNapplications开始,然后,在示例中遇到太多空格后,使用了thisgithubproject作为我申请的基础。正如我在深入研究exapmle的ApplicationMaster用法后发现的那样,我可以使用特定的org.apache.hadoop.yarn.client.api.ContainerRequest的构造函数,在特定主机上获取应用程序容器,但我需要集群节点列表来请求每台机器上的容器。通过这个问题搜索后,我发现解析yarn-site.xml不是获取集群机器URL的正确方法,
是否有一种简单的方法来查询yarn应用程序api以获取运行超过x时间的应用程序?下面的url给出了一个应用程序列表,但看起来不符合elapsedTime参数http://:/ws/v1/cluster/apps?states=RUNNING&elapsedTime=200000 最佳答案 elapsedTime不是受支持的查询参数。您可以使用jq来过滤符合条件的应用。curlhttp://:/ws/v1/cluster/apps?states=RUNNING|jq'.apps.app[]|select(.elapsedTime>20
spark-shell开始使用:spark-shell--masteryarn--executor-memory4G--num-executors100我期望yarn为spark-shell分配大约400GB的内存,但是当我转到RMUI时,它显示“已使用的内存”增加了大约804GB。我正在运行HDP2.5,在yarn-site.xml中将yarn.scheduler.minimum-allocation-mb设置为4096。对这是怎么发生的感到困惑。原来是spark内存开销和yarn内存分配机制的问题,查看:http://www.wdong.org/spark-on-yarn-wher
我知道对此有一些疑问,但没有足够的信息来解决我的问题。我尝试在我的Eclipse项目中以yarn-client模式运行作业。我有一个包含2个节点的hadoop集群(其中一个节点当前已关闭)。我尝试在集群模式下运行它(使用spark-submit)并且它工作正常。我尝试通过以下方式从eclipse项目在本地运行它:我正在尝试制作这样的Spark上下文:SparkConfconf=newSparkConf().setAppName("AnomalyDetection-BuildModel").setMaster("local[*]");这是有效的。但是当我尝试使用“yarn-client”