Apache Hadoop YARN:超越MapReduce的批量处理

需积分: 22 6 下载量 128 浏览量 更新于2024-07-21 1 收藏 8.17MB PDF 举报
"Apache Hadoop YARN 是一个关于Apache Hadoop中的资源管理和分布式计算框架的PDF文档,主要讨论了如何在Hadoop集群上运行MapReduce任务并实现批量处理。该文档属于Addison-Wesley Data and Analytics Series,该系列书籍旨在提供解决数据问题和利用数据的实用知识,涵盖数据基础设施、算法和可视化三个核心领域。" Apache Hadoop YARN(Yet Another Resource Negotiator)是Hadoop生态系统中的核心组件之一,它在Hadoop 2.x版本中引入,目的是将原本由JobTracker执行的任务调度和资源管理功能分离,从而实现了更高效和灵活的资源分配与管理。 YARN的主要目标是将Hadoop集群的资源管理与作业调度功能解耦,使得系统可以支持更多种类的数据处理模型,而不仅仅是经典的MapReduce。YARN通过引入全局的ResourceManager(RM)和每个应用级别的ApplicationMaster(AM),实现了这一目标。ResourceManager负责整个集群的资源分配,而ApplicationMaster则负责单个应用的资源请求、任务调度以及与ResourceManager的通信。 在YARN架构中,数据处理任务被划分为容器(Container),每个容器包含一定的CPU和内存资源。当应用提交到集群时,ApplicationMaster会与ResourceManager协商获取资源,并根据任务需求分配给任务执行者NodeManager。NodeManager是运行在每个集群节点上的守护进程,负责执行实际的任务并监控它们的运行状态。 YARN的优势在于提高了集群资源利用率,使得不同类型的计算框架如Spark、Tez和Flink等可以共存于同一Hadoop集群,减少了资源冲突和管理复杂性。此外,它还增强了系统的可扩展性和稳定性,因为ApplicationMaster可以独立于ResourceManager运行,即使RM失败,应用也能继续执行。 MapReduce在YARN中的运行方式也发生了变化。每个MapReduce作业都有自己的ApplicationMaster,负责协调作业的各个阶段,包括初始化、任务调度和完成。这种方式使得MapReduce作业能够与其他类型的应用并行运行,提高了集群的整体吞吐量。 YARN的引入对于大数据处理和分析具有重要意义,它为大数据生态系统提供了更强大的支撑,使得用户可以构建更复杂、更具实时性的数据分析系统。同时,通过提供资源管理和调度的统一平台,YARN简化了集群的管理和运维工作,降低了开发和部署大数据应用的难度。

结合下面hive元数据信息,生成hive建表语句,并且加上comment,注意day是分区 dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 apk 应用包名 string day string入库日期 org.apache.hadoop.hive.ql.io.orc.OrcSerde serialization.format 1 hdfs://DSbigdata/hiveDW/dwd_exten_crawl/appmarket_appinfo org.apache.hadoop.hive.ql.io.orc.OrcInputFormat org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 app_name 应用名称 string day string 入库日期 org.apache.hadoop.hive.ql.io.orc.OrcSerde serialization.format 1 hdfs://DSbigdata/hiveDW/dwd_exten_crawl/appmarket_appinfo org.apache.hadoop.hive.ql.io.orc.OrcInputFormat org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 app_url 平台详情页链接 string day string入库日期 org.apache.hadoop.hive.ql.io.orc.OrcSerde serialization.format 1 hdfs://DSbigdata/hiveDW/dwd_exten_crawl/appmarket_appinfo org.apache.hadoop.hive.ql.io.orc.OrcInputFormat org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 cate 应用所属分类 string day string入库日期 org.apache.hadoop.hive.ql.io.orc.OrcSerde serialization.format 1 hdfs://DSbigdata/hiveDW/dwd_exten_crawl/appmarket_appinfo org.apache.hadoop.hive.ql.io.orc.OrcInputFormat org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 other 其他 string day string 入库日期 org.apache.hadoop.hive.ql.io.orc.OrcSerde serialization.format 1 hdfs://DSbigdata/hiveDW/dwd_exten_crawl/appmarket_appinfo org.apache.hadoop.hive.ql.io.orc.OrcInputFormat org.apache.hadoop.hive.ql.io.orc.OrcOutputFormat dwd_weibo_crawl NULL appmarket_appinfo GN线应用市场 2021-01-07 15:07:29 region 平台名称 string day stri

2023-06-10 上传

[2023-07-04 17:11:29.952]Exception when trying to cleanup container container_e10_1661450914423_18596_01_000003: java.io.IOException: Problem signalling container 97181 with SIGTERM; output: null and exitCode: -1 at org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor.signalContainer(LinuxContainerExecutor.java:750) at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.sendSignal(ContainerLaunch.java:908) at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.signalProcess(ContainerLaunch.java:922) at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainerLaunch.cleanupContainer(ContainerLaunch.java:774) at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainersLauncher.handle(ContainersLauncher.java:173) at org.apache.hadoop.yarn.server.nodemanager.containermanager.launcher.ContainersLauncher.handle(ContainersLauncher.java:62) at org.apache.hadoop.yarn.event.AsyncDispatcher.dispatch(AsyncDispatcher.java:221) at org.apache.hadoop.yarn.event.AsyncDispatcher$1.run(AsyncDispatcher.java:143) at java.lang.Thread.run(Thread.java:748) Caused by: org.apache.hadoop.yarn.server.nodemanager.containermanager.runtime.ContainerExecutionException: Signal container failed at org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.DefaultLinuxContainerRuntime.signalContainer(DefaultLinuxContainerRuntime.java:163) at org.apache.hadoop.yarn.server.nodemanager.containermanager.linux.runtime.DelegatingLinuxContainerRuntime.signalContainer(DelegatingLinuxContainerRuntime.java:159) at org.apache.hadoop.yarn.server.nodemanager.LinuxContainerExecutor.signalContainer(LinuxContainerExecutor.java:739) ... 8 more | org.apache.flink.yarn.YarnResourceManager (ResourceManager.java:822)

2023-07-12 上传