01 2023 档案
摘要:文章目录 1. 多资源队列配置2. 指定队列提交任务 由于MapReduce默认采用Capacity Scheduler(详见【Hadoop】YARN简述),因此理论上可以存在多个队列,而默认只有一个队列(default),现有需求:额外创建两个队列分别为online和offline,将这三个队列的
阅读全文
摘要:文章目录 1. YARN总述2. YARN调度器2.1 FIFO Scheduler2.2 Capacity Scheduler2.3 Fair Scheduler 1. YARN总述 YARN是Hadoop资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在
阅读全文
摘要:默认情况下Map任务的数量与InputSplit数量保持一致,Map阶段的执行效率也与InputSplit数量相关,当遇到大量的小文件时我们采用SequenceFile合并成一个大文件,以此来提高运行效率(【Hadoop】MapReduce小文件问题解决方案(SequenceFile,MapFile
阅读全文
摘要:Hadoop的HDFS和MapReduce都是针对大数据文件来设计的,在小文件的处理上不但效率低下,而且十分消耗内存资源。 在【Hadoop】HDFS高可用与高扩展原理分析(HA架构与Federation机制)这篇博客中有提到HDFS的小文件问题,集群启动时DataNode会向NameNode上报所
阅读全文
摘要:文章目录 1. 前言2. Mapper代码3. Reducer代码4. Main代码5. 项目打包6. Hadoop运行7. 运行结果查看7.1 输出文件查看7.2 日志查看 1. 前言 在博客【Hadoop】MapReduce原理剖析(Map,Shuffle,Reduce三阶段)中已经分析了Map
阅读全文
摘要:文章目录 1. Map阶段1.1 把输入文件(夹)划分为很多InputSplit(Split)1.2 分配并执行map作业 2. Shuffle阶段2.1 Partition(分区)2.2 Sort(排序)2.3 Group(分组)2.4 Combiner(规约)2.5 序列化并写入Linux磁盘内
阅读全文
摘要:这篇博客是一个结合HDFS的Shell练习,相对简单。现有需求:每天1:00需要从系统上传一份昨天的日志文件到HDFS,日志文件的格式为access_2023_01_01.log,HDFS目录格式为20230101。这个需求是相对简单的,分为以下几个步骤: 获取昨天的日期 获取日期使用date命令,
阅读全文
摘要:文章目录 一、HDFS回收站二、HDFS安全模式 一、HDFS回收站 HDFS在core-site.xml中进行配置后,会为每一个用户在“/user/用户名/.Trash/”地址创建一个回收站目录,每个被用户使用Shell命令行删除的文件或者目录,都会被移动到回收站目录中。但如果一直保存而不清空回收
阅读全文
摘要:文章目录 一、HDFS的高可用性(HA架构)二、HDFS的高扩展性(Federation机制)三、HA架构 + Federation机制 一、HDFS的高可用性(HA架构) 为保证HDFS的高可用性,即当NameNode节点机器出现故障而导致宕机时整个系统依旧可以维持运转,那么只需要存在多个Name
阅读全文
摘要:文章目录 1. NameNode2. Secondary NameNode3. DataNode HDFS主要包含NameNode、Secondary NameNode和DataNode三部分,且这三部分在分布式文件系统中分属不同的机器,其中Secondary NameNode不是必须的,在HA架构
阅读全文
摘要:文章目录 1. 上传文件到HDFS2. 下载HDFS文件3. 删除HDFS文件 本文仅记录上传文件、下载文件和删除文件三个操作。这三个操作有着相似的逻辑,都是先创建配置对象,然后获取操作HDFS的对象,最后再进行各自的功能实现。 1. 上传文件到HDFS 创建配置对象后,指定HDFS的地址,随后获取
阅读全文
摘要:Hadoop Distributed File System,简称 HDFS,是一个分布式文件系统。我们可以在命令行中对hdfs进行操作,形式上类似于linux文件系统的操作,但本质上相去甚远。其命令格式为: bin/hdfs dfs -<命令参数> hdfs://authority/path 文章
阅读全文
摘要:学习shell语法之前最好拥有一些linux基础知识,掌握一定的linux命令。 文章目录 1. 第一个shell程序2. shell中的变量2.1 变量赋值2.2 变量输出2.3 变量分类2.3.1 本地变量2.3.2 环境变量2.3.3 位置变量2.3.4 特殊变量 2.4 变量与引号2.4.1
阅读全文
摘要:Linux三剑客指的是grep、sed、awk这三个命令。其中awk命令的详细用法有很多,但这里只介绍了常见用法。awk是一个强大的文本分析工具,它把文件逐行读入,以空白字符为默认分隔符将每行内容切片,切开的部分再进行各种分析处理。 awk的参数格式为awk '{pattern + action}'
阅读全文
摘要:Linux三剑客指的是grep、sed、awk这三个命令。其中sed命令的详细用法有很多,但这里只介绍了常见用法。 后续的示例都是在hello.txt的基础上进行的: [root@bigData01 ~]# cat hello.txt Hello world! Hello world! Hello
阅读全文
摘要:Linux三剑客指的是grep、sed、awk这三个命令。其中grep命令的详细用法有很多,但这里只介绍了常见用法,本文最后也贴了该命令的帮助文档以供查阅。 grep 可用于查找文件里符合条件的字符串 [root@localhost ~]# cat hello.txt Hello world! He
阅读全文
摘要:注:因为学习方向不涉及linux系统运维,因此仅记录目前学习的常见用法。 文章目录 1. ps命令的使用2. netstat命令的使用3. top命令的使用4. kill命令的使用 ps:显示进程信息 netstat:显示端口信息 top:动态监控进程信息 kill:杀进程 1. ps命令的使用 p
阅读全文
摘要:linux中日期相关操作需要使用date命令。 date帮助文档如下: [chaoql@localhost c]$ date --help Usage: date [OPTION]... [+FORMAT] or: date [-u|--utc|--universal] [MMDDhhmm[[CC]
阅读全文
摘要:文章目录 1. 统计字数相关信息2. 文件内容排序3. 检查文件重复行列4. 读取文件前N行数据 1. 统计字数相关信息 统计字数相关信息的命令为wc wc命令的帮助文档为: [chaoql@localhost c]$ wc --help Usage: wc [OPTION]... [FILE]..
阅读全文
摘要:文章目录 1 浏览文件内容1.1 使用cat命令1.2 使用more命令1.3 使用vi命令 2 文件编辑2.1 进入命令模式2.2 进入编辑模式 3 其他操作3.1 查找字符串3.2 定位具体行3.3 复制粘贴3.4 快速删除3.5 快速定位到文件首尾行 1 浏览文件内容 1.1 使用cat命令
阅读全文