【数仓】Hadoop集群配置常用参数说明

Hadoop集群中,需要配置的文件主要包括四个

  1. 配置核心Hadoop参数

    • 编辑core-site.xml文件,设置Hadoop集群的基本参数,如文件系统、Hadoop临时目录等。
  2. 配置HDFS参数

    • 编辑hdfs-site.xml文件,设置HDFS的相关参数,如数据块大小、副本数等。
  3. 配置MapReduce参数(如果使用):

    • 编辑mapred-site.xml文件,设置MapReduce的相关参数。
  4. 配置YARN参数(如果使用):

    • 编辑yarn-site.xml文件,设置YARN的相关参数。

核心Hadoop参数 core-site.xml

参考官网

Hadoop的core-site.xml文件包含了许多重要的配置参数,这些参数用于定义Hadoop集群的全局设置。以下是一些常见的core-site.xml配置参数:

配置项默认值说明
fs.defaultFSHadoop集群的NameNode的URI。这是HDFS的入口点。
io.file.buffer.size4096SequenceFiles在读写过程中可以使用的缓存大小(以字节为单位)。
hadoop.tmp.dir/tmp/hadoop-${user.name}Hadoop的临时目录,用于存储临时文件和目录。
fs.trash.interval0垃圾箱中文件的保留时间(以分钟为单位)。设置为大于0的值将启用垃圾箱功能。
hadoop.proxyuser.${username}.hosts允许代理用户从哪些主机连接到Hadoop集群。
hadoop.proxyuser.${username}.groups允许代理用户属于哪些用户组连接到Hadoop集群。
fs.trash.checkpoint.interval0检查垃圾箱并删除过期文件的间隔时间(以分钟为单位)。
fs.automatic.closetrue是否在读取文件后自动关闭文件系统。
fs.dummy.implorg.apache.hadoop.fs.DummyFileSystem一个假的文件系统实现,用于测试。

请注意,上述表格中的默认值可能会因Hadoop版本和特定环境而有所不同。此外,还有许多其他可用的配置参数,具体取决于您的Hadoop集群的需求和配置。

在实际配置中,您应该根据您的Hadoop集群的具体要求和网络环境来设置这些参数。一些关键参数(如fs.defaultFS)在集群设置中是必需的,而其他参数则可以根据需要进行调整。在修改core-site.xml文件之前,请确保您已经充分了解每个参数的含义和潜在影响。

HDFS参数 hdfs-site.xml

参考官网

hdfs-site.xml 是 Hadoop 分布式文件系统(HDFS)的配置文件,它包含了许多参数,用于定义 HDFS 的行为和特性。以下是一些常见的 hdfs-site.xml 配置参数:

配置项默认值说明
dfs.namenode.name.dirfile://${hadoop.tmp.dir}/dfs/nameNameNode 存储其持久化元数据的本地文件系统路径。
dfs.datanode.data.dirfile://${hadoop.tmp.dir}/dfs/dataDataNode 存储其块的本地文件系统路径。
dfs.replication3数据的默认副本数。
dfs.permissions.enabledtrue是否启用 HDFS 权限检查。
dfs.block.size134217728 (128 MB)HDFS 块的大小。
dfs.namenode.handler.count10NameNode 服务器可以同时处理的客户端请求数。
dfs.datanode.handler.count10DataNode 服务器可以同时处理的客户端请求数。
dfs.client.read.shortcircuitfalse允许 DFS 客户端绕过 DataNode 直接读取本地文件。
dfs.client.read.shortcircuit.skip.checksumfalse在短路读取时跳过校验和检查。
dfs.https.address0.0.0.0:50470NameNode HTTPS 服务的地址和端口。
dfs.http.address0.0.0.0:50070NameNode HTTP 服务的地址和端口。
dfs.datanode.http.address0.0.0.0:50075DataNode HTTP 服务的地址和端口。
dfs.datanode.ipc.address0.0.0.0:50020DataNode IPC 服务的地址和端口。
dfs.namenode.http-address0.0.0.0:50070NameNode HTTP 服务的地址和端口(用于 Web UI)。
dfs.namenode.secondary.http-address0.0.0.0:50090Secondary NameNode HTTP 服务的地址和端口。

请注意,这些默认值可能会因 Hadoop 的版本和特定环境而有所不同。此外,还有许多其他可用的配置参数,具体取决于您的 HDFS 集群的需求和配置。

在实际配置中,您应该根据您的 HDFS 集群的具体要求和网络环境来设置这些参数。一些关键参数(如 dfs.namenode.name.dirdfs.datanode.data.dir)在集群设置中是必需的,而其他参数则可以根据需要进行调整。在修改 hdfs-site.xml 文件之前,请确保您已经充分了解每个参数的含义和潜在影响。

此外,请注意 hdfs-site.xml 文件通常还包含一些高级参数,用于调优 HDFS 的性能和可靠性,例如设置 NameNode 和 DataNode 的堆大小、调整各种超时设置等。这些参数的具体设置应该基于您的集群规模和工作负载进行调整。

MapReduce参数 mapred-site.xml

参考官网

mapred-site.xml 是 Hadoop MapReduce 的配置文件,它包含了许多参数,用于定义 MapReduce 作业的行为和特性。以下是一些常见的 mapred-site.xml 配置参:

配置项默认值说明
mapreduce.framework.namelocal执行框架设置为本地模式(单机模式),在集群上应设置为 yarn
mapreduce.jobhistory.address0.0.0.0:10020MapReduce JobHistory Server 的地址和端口。
mapreduce.jobhistory.webapp.address0.0.0.0:19888MapReduce JobHistory Server 的 Web UI 地址和端口。
mapreduce.jobtracker.addresslocalMapReduce JobTracker 的地址和端口(旧版 API,YARN 中不再使用)。
mapreduce.tasktracker.address0.0.0.0:50060MapReduce TaskTracker 的地址和端口(旧版 API,YARN 中不再使用)。
mapreduce.map.output.compressfalse是否压缩 Map 任务的输出。
mapreduce.map.output.compress.codecorg.apache.hadoop.io.compress.DefaultCodecMap 任务输出压缩使用的编解码器。
mapreduce.task.io.sort.mb100排序时使用的内存缓冲区大小(以 MB 为单位)。
mapreduce.task.io.sort.factor10合并小文件时一次合并的流的数量。
mapreduce.reduce.shuffle.parallelcopies5从 Map 到 Reduce 拷贝数据的并行度。
mapreduce.reduce.shuffle.fetch.retry.enabledtrue是否启用 shuffle 阶段获取数据的重试机制。
mapreduce.reduce.shuffle.retry-delay.ms1000shuffle 阶段重试之间的延迟时间(以毫秒为单位)。
mapreduce.reduce.shuffle.input.buffer.percent0.7shuffle 阶段用于存储数据的内存比例。
mapreduce.job.reduces1每个作业的默认 Reduce 任务数。
mapreduce.job.maps无默认值每个作业的 Map 任务数(通常由 AM 根据数据自动计算)。
mapreduce.map.speculativetrue是否启用 Map 任务的推测执行。
mapreduce.reduce.speculativetrue是否启用 Reduce 任务的推测执行。

请注意,这些默认值可能会因 Hadoop 的版本和特定环境而有所不同。此外,还有许多其他可用的配置参数,具体取决于您的 MapReduce 作业的需求和配置。

在实际配置中,您应该根据您的 MapReduce 作业的具体要求和网络环境来设置这些参数。一些关键参数(如 mapreduce.framework.name)在集群设置中是必需的,以指定执行框架,而其他参数则可以根据需要进行调整。在修改 mapred-site.xml 文件之前,请确保您已经充分了解每个参数的含义和潜在影响。

另外,值得注意的是,随着 Hadoop 的发展,MapReduce 已经被 YARN 和其他框架(如 Spark、Flink)所取代,因此在新版本的 Hadoop 中,mapred-site.xml 文件可能不再存在,或者其重要性已经降低。在使用新版本的 Hadoop 时,请确保查看相关文档以了解最新的配置方法和最佳实践。

YARN参数 yarn-site.xml

参考官网

yarn-site.xml 是 Apache Hadoop YARN 的配置文件,它包含了许多参数,用于定义 YARN 集群的行为和特性。以下是一些常见的 yarn-site.xml 配置参数:

配置项默认值说明
yarn.resourcemanager.hostnameResourceManager 的主机名。
yarn.resourcemanager.scheduler.address${yarn.resourcemanager.hostname}:8030ResourceManager 调度器服务的地址和端口。
yarn.resourcemanager.resource-tracker.address${yarn.resourcemanager.hostname}:8031ResourceManager 资源追踪服务的地址和端口。
yarn.resourcemanager.address${yarn.resourcemanager.hostname}:8032ResourceManager RPC 服务的地址和端口。
yarn.resourcemanager.webapp.address${yarn.resourcemanager.hostname}:8088ResourceManager Web UI 的地址和端口。
yarn.resourcemanager.admin.address${yarn.resourcemanager.hostname}:8033ResourceManager 管理服务的地址和端口。
yarn.scheduler.minimum-allocation-mb1024单个容器可申请的最小内存(以 MB 为单位)。
yarn.scheduler.maximum-allocation-mb8192单个容器可申请的最大内存(以 MB 为单位)。
yarn.nodemanager.resource.memory-mb8192NodeManager 可用的总物理内存(以 MB 为单位)。
yarn.scheduler.minimum-allocation-vcores1单个容器可申请的最小虚拟 CPU 个数。
yarn.scheduler.maximum-allocation-vcores32单个容器可申请的最大虚拟 CPU 个数。
yarn.nodemanager.vmem-pmem-ratio2.1虚拟内存与物理内存的比例。
yarn.nodemanager.local-dirs${hadoop.tmp.dir}/nm-local-dirNodeManager 存储本地化资源的目录列表。
yarn.nodemanager.log-dirs${yarn.log.dir}/userlogsNodeManager 存储容器日志的目录列表。
yarn.nodemanager.aux-servicesmapreduce_shuffleNodeManager 提供的辅助服务列表。
yarn.nodemanager.remote-app-log-dir/tmp/logs存储应用程序日志的远程目录(通常用于日志聚合)。
yarn.nodemanager.recovery.enabledfalse是否启用 NodeManager 恢复功能。
yarn.nodemanager.recovery.dir用于存储 NodeManager 恢复数据的目录。

请注意,这些默认值可能会因 Hadoop 的版本和特定环境而有所不同。此外,还有许多其他可用的配置参数,具体取决于您的 YARN 集群的需求和配置。在实际配置中,您应该根据您的 YARN 集群的具体要求和网络环境来设置这些参数。在修改 yarn-site.xml 文件之前,请确保您已经充分了解每个参数的含义和潜在影响。

参考

  • https://hadoop.apache.org/docs/r3.3.6/index.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/714601.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

策略开发:EMA如何计算

EMA的计算原理 EMA 是MA(平滑移动平均线)的另一种形式。全名“加权指数移动平均线”。 2/13就是12日移动平均线的平滑因子,他的意思是指:给予新价格 2/13的权重,给予过去的EMA 11/13的权重。 在计算的时候第一天的M…

Linux使用基础命令

1.常用系统工作命令 (1).用echo命令查看SHELL变量的值 qiangziqiangzi-virtual-machine:~$ echo $SHELL /bin/bash(2).查看本机主机名 qiangziqiangzi-virtual-machine:~$ echo $HOSTNAME qiangzi-virtual-machine (3).date命令用于显示/设置系统的时间或日期 qiangziqian…

Linux多线程服务端编程:使用muduo C++网络库 学习笔记 附录B 从《C++ Primer(第4版)》入手学习C++

这是作者为《C Primer(第4版)(评注版)》写的序言,文中“本书”指的是这本书评注版。 B.1 为什么要学习C 2009年本书作者Stanley Lippman先生应邀来华参加上海祝成科技举办的C技术大会,他表示人们现在还用…

MySQL存储过程和Function

一、存储过程 MySQL中提供存储过程和存储函数机制,将其统称为存储程序。 SQL语句要先编译,然后执行,存储程序是一组为了完成特定功能的SQL语句,编译后存到数据库中。 用户通过指定存储程序的名字并给定参数来调用才会执行。 存…

扩展学习|大数据分析的现状和分类

文献来源:[1] Mohamed A , Najafabadi M K , Wah Y B ,et al.The state of the art and taxonomy of big data analytics: view from new big data framework[J].Artificial Intelligence Review: An International Science and Engineering Journal, 2020(2):53. 下…

蓝桥杯(3.2)

1209. 带分数 import java.io.*;public class Main {static BufferedReader br new BufferedReader(new InputStreamReader(System.in));static PrintWriter pw new PrintWriter(new OutputStreamWriter(System.out));static final int N 10;static int n, cnt;static int[…

LabVIEW流量控制系统

LabVIEW流量控制系统 为响应水下航行体操纵舵翼环量控制技术的试验研究需求,通过LabVIEW开发了一套小量程流量控制系统。该系统能够满足特定流量控制范围及精度要求,展现了其在实验研究中的经济性、可靠性和实用性,具有良好的推广价值。 项…

tritonserver学习之八:redis_caches实践

tritonserver学习之一:triton使用流程 tritonserver学习之二:tritonserver编译 tritonserver学习之三:tritonserver运行流程 tritonserver学习之四:命令行解析 tritonserver学习之五:backend实现机制 tritonserv…

【C++初阶】内存管理

目录 一.C语言中的动态内存管理方式 二.C中的内存管理方式 1.new/delete操作内置类型 2.new和delete操作自定义类型 3.浅识抛异常 (内存申请失败) 4.new和delete操作自定义类型 三.new和delete的实现原理 1.内置类型 2.自定义类型 一.C语…

C++学习笔记:二叉搜索树

二叉搜索树 什么是二叉搜索树?搜索二叉树的操作查找插入删除 二叉搜索树的应用二叉搜索树的代码实现K模型:KV模型 二叉搜索树的性能怎么样? 什么是二叉搜索树? 二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树: 若它的左子树…

Linux安装Nginx详细步骤

1、创建两台虚拟机,分别为主机和从机,区别两台虚拟机的IP地址 2、将Nginx素材内容上传到/usr/local目录(pcre,zlib,openssl,nginx) 附件 3、安装pcre库   3.1 cd到/usr/local目录 3.2 tar -zxvf pcre-8.36.tar.gz 解压 3.3 cd…

MATLAB图像噪声添加与滤波

在 MATLAB 中添加图像噪声和进行滤波通常使用以下函数: 添加噪声:可以使用imnoise函数向图像添加各种类型的噪声,如高斯噪声、椒盐噪声等。 滤波:可以使用各种滤波器对图像进行滤波处理,例如中值滤波、高斯滤波等。 …

前端学习、HTML

html是由一些标签构成的,标签之间可以嵌套,每个标签都有开始标签和结束标签,也有部分标签只有开始标签,没有结束标签。html的标签也可以成为元素。(树形结构) html文件的最顶层标签就是html。 head用来放…

**蓝桥OJ 178全球变暖 DFS

蓝桥OJ 178全球变暖 思路: 将每一座岛屿用一个颜色scc代替, 用dx[]和dy[]判断他的上下左右是否需要标记颜色,如果已经标记过颜色或者是海洋就跳过.后面的淹没,实际上就是哪个块上下左右有陆地,那么就不会被淹没,我用一个tag标记,如果上下左右一旦有海洋,tag就变为false.如果tag…

用冒泡排序模拟C语言中的内置快排函数qsort!

目录 ​编辑 1.回调函数的介绍 2. 回调函数实现转移表 3. 冒泡排序的实现 4. qsort的介绍和使用 5. qsort的模拟实现 6. 完结散花 悟已往之不谏,知来者犹可追 创作不易,宝子们!如果这篇文章对你们有帮助的话,别忘了给个免…

机器学习:模型评估和模型保存

一、模型评估 from sklearn.metrics import accuracy_score, confusion_matrix, classification_report# 使用测试集进行预测 y_pred model.predict(X_test)# 计算准确率 accuracy accuracy_score(y_test, y_pred) print(f"Accuracy: {accuracy*100:.2f}%")# 打印…

整数和浮点数在内存中的存储(大小端字节序,浮点数的存取)

目录 1.整数在内存中的存储 2.大小端字节序和字节序判断 2.1什么是大小端? 2.2为什么会有大小端 3.浮点数在内存中的存储 3.1浮点数的存储 3.1.1 浮点数存的过程 3.1.2 浮点数取的过程 3.2 解析 3.3 验证浮点数的存储方式 1.整数在内存中的存储 整数的二进…

PAT (Basic Level) Practice | 朋友数

如果两个整数各位数字的和是一样的,则被称为是“朋友数”,而那个公共的和就是它们的“朋友证号”。例如 123 和 51 就是朋友数,因为 123 51 6,而 6 就是它们的朋友证号。给定一些整数,要求你统计一下它们中有多少个不…

亿道信息轻工业三防EM-T195,零售、制造、仓储一网打尽

厚度仅10.5mm,重量仅0.65千克的EM-T195,其紧凑而纤薄的设计为以往加固型平板带来了全新的轻薄概念。尽管设计时尚、轻薄,但经过军用认证的强固性仍然能够承受所有具有挑战性的环境条件。随身携带无负担的轻便性加上抗震功能使其成为餐厅、酒店…

C++_数据类型_字符型

作用 字符型变量用于显示单个字符 语法 char ch a;注意 在显示字符型变量时,用单引号将字符括起来,不要用双引号单引号只能有一个字符,不可以是字符串 C和C中字符型变量只占用一个字节字符型变量并不是把字符本身放到内存中存储&#xf…