随笔分类 -  Hadoop

摘要:1.小文件优化方法 (1)小文件弊端 HDFS上每个文件都要在NameNode上创建对应的元数据,这个元数据的大小约为150byte,这样当小文件比较多的时候,就会产生很多的元数据文件,一方面会大量占用NameNode的内存空间,另一方面就是元数据文件过多,使得寻址索引速度变慢。 小文件过多,在进行 阅读全文
posted @ 2022-08-01 16:37 小王同学学编程 阅读(34) 评论(0) 推荐(0)
摘要:1.MapReduce跑得慢的原因 MapReduce程序效率的瓶颈在于两点: (1)计算机性能 CPU、内存、磁盘、网络 (2)I/O操作优化 1)数据倾斜 2)Map运行时间太长,导致Reduce等待过久 3)小文件过多 2.MapReduce常用调优参数 3.MapReduce数据倾斜问题 ( 阅读全文
posted @ 2022-08-01 16:22 小王同学学编程 阅读(27) 评论(0) 推荐(0)
摘要:1.HDFS存储小文件弊端 每个文件均按块存储,每个块的元数据存储在NameNode的内存中,因此HDFS存储小文件会非常低效。因为大量的小文件会耗尽NameNode中的大部分内存。但注意,存储小文件所需要的磁盘容量和数据块的大小无关。例如,一个1MB的文件设置为128MB的块存储,实际使用的是1M 阅读全文
posted @ 2022-08-01 15:57 小王同学学编程 阅读(112) 评论(0) 推荐(0)
摘要:1.纠缠码 原理:HDFS默认情况下,一个文件有3个副本,这样提高了数据的可靠性,但也带来了2倍的冗余开销。Hadoop3.x引入了纠删码,采用计算的方式,可以节省约50%左右的存储空间。 (1)纠删码操作相关的命令:hdfs ec Usage: bin/hdfs ec [COMMAND] [-li 阅读全文
posted @ 2022-07-31 15:24 小王同学学编程 阅读(237) 评论(0) 推荐(0)
摘要:1.添加白名单 白名单:表示在白名单的主机IP地址可以,用来存储数据。 企业中:配置白名单,可以尽量防止黑客恶意访问攻击。 配置白名单步骤如下 (1)在hadoop-3.1.3/etc/hadoop目录下分别创建whitelist 和blacklist文件 1)创建白名单vim whitelist, 阅读全文
posted @ 2022-07-30 16:28 小王同学学编程 阅读(150) 评论(0) 推荐(0)
摘要:1. NameNode多目录配置 (1)NameNode的本地目录可以配置成多个,且每个目录存放内容相同,增加了可靠性 (2)具体配置如下 1)在hdfs-site.xml文件中添加如下内容 <property> <name>dfs.namenode.name.dir</name> <value>f 阅读全文
posted @ 2022-07-29 20:02 小王同学学编程 阅读(280) 评论(0) 推荐(0)
摘要:在hdfs-site.xml下添加 NameNode有一个工作线程池,用来处理不同DataNode的并发心跳以及客户端并发的元数据操作。 对于大集群或者有大量客户端的集群来说,通常需要增大该参数。默认值是10。 企业经验:dfs.namenode.handler.count=,比如集群规模(Data 阅读全文
posted @ 2022-07-29 11:05 小王同学学编程 阅读(119) 评论(0) 推荐(0)
摘要:开启回收站功能,可以将删除的文件在不超时的情况下,恢复原数据,起到防止误删除、备份等作用。 1. 回收站工作机制 2. 开启回收站功能参数说明 (1)默认值fs.trash.interval = 0,0表示禁用回收站;其他值表示设置文件的存活时间。 (2)默认值fs.trash.checkpoint 阅读全文
posted @ 2022-07-29 10:55 小王同学学编程 阅读(254) 评论(0) 推荐(0)
摘要:需求: 创建两个队列,分别是test和atguigu(以用户所属组命名)。期望实现以下效果:若用户提交任务时指定队列,则任务提交到指定队列运行;若未指定队列,test用户提交的任务到root.group.test队列运行,atguigu提交的任务到root.group.atguigu队列运行(注:g 阅读全文
posted @ 2022-07-28 19:15 小王同学学编程 阅读(164) 评论(0) 推荐(0)
摘要:容量调度器,支持任务优先级的配置,在资源紧张时,优先级高的任务将优先获取资源。默认情况,Yarn将所有任务的优先级限制为0,若想使用任务的优先级功能,须开放该限制。 (1)修改yarn-site.xml文件,增加以下参数 <property> <name>yarn.cluster.max-appli 阅读全文
posted @ 2022-07-28 17:21 小王同学学编程 阅读(217) 评论(0) 推荐(0)
摘要:1. 在生产环境怎么创建队列? (1)调度器默认就1个default队列,不能满足生产要求。 (2)按照框架:hive /spark/ flink 每个框架的任务放入指定的队列(企业用的不是特别多)(3)按照业务模块:登录注册、购物车、下单、业务部门1、业务部门2 2. 创建多队列的好处 (1)因为 阅读全文
posted @ 2022-07-28 17:00 小王同学学编程 阅读(84) 评论(0) 推荐(0)
摘要:修改yarn-site.xml 配置参数 <!-- 选择调度器,默认容量 --> <property> <description>The class to use as the resource scheduler.</description> <name>yarn.resourcemanager. 阅读全文
posted @ 2022-07-28 16:34 小王同学学编程 阅读(91) 评论(0) 推荐(0)
摘要:1. yarn application查看任务 (1)列出所有Application:yarn application -list (2)根据Application状态过滤:yarn application -list -appStates <状态>(所有状态:ALL、NEW、NEW_SAVING、 阅读全文
posted @ 2022-07-28 15:31 小王同学学编程 阅读(2703) 评论(0) 推荐(0)
摘要:目前,Hadoop作业调度器主要有三种:FIFO、容量(Capacity Scheduler)和公平(Fair Scheduler)。Apache Hadoop3.1.3默认的资源调度器是Capacity Scheduler。 CDH框架默认调度器是Fair Scheduler。 具体设置详见:ya 阅读全文
posted @ 2022-07-27 20:36 小王同学学编程 阅读(184) 评论(0) 推荐(0)
摘要:Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程序则相当于运行于操作系统之上的应用程序。 1. Yarn基础架构 YARN主要由ResourceManager、NodeManager、ApplicationMaster和Con 阅读全文
posted @ 2022-07-27 19:27 小王同学学编程 阅读(61) 评论(0) 推荐(0)
摘要:1. MapTask工作机制 (1)Read阶段:MapTask通过InputFormat获得的RecordReader,从输入InputSplit中解析出一个个key/value。 (2)Map阶段:该节点主要是将解析出的key/value交给用户编写map()函数处理,并产生一系列新的key/v 阅读全文
posted @ 2022-07-27 17:13 小王同学学编程 阅读(70) 评论(0) 推荐(0)
摘要:1. MR工作流程 2. Shuffle机制 阅读全文
posted @ 2022-07-27 17:07 小王同学学编程 阅读(40) 评论(0) 推荐(0)
摘要:1. 概述 (1)压缩的好处和坏处 压缩的优点:以减少磁盘IO、减少磁盘存储空间。 压缩的缺点:增加CPU开销。 (2)压缩原则 1)运算密集型的Job,少用压缩。 2)IO密集型的Job,多用压缩。 2. MR支持的压缩编码 (1)压缩算法对比介绍 (2)压缩性能的比较 3. 压缩方式选择 压缩方 阅读全文
posted @ 2022-07-27 16:34 小王同学学编程 阅读(844) 评论(0) 推荐(0)
摘要:“ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(Extract)、转换(Transform)、加载(Load)至目的端的过程。ETL一词较常用在数据仓库,但其对象并不限于数据仓库 在运行核心业务MapReduce程序之前,往往要先对数据进行清洗,清 阅读全文
posted @ 2022-07-27 15:17 小王同学学编程 阅读(614) 评论(0) 推荐(0)
摘要:一、Reduce Join Map端的主要工作:为来自不同表或文件的key/value对,打标签以区别不同来源的记录。然后用连接字段作为key,其余部分和新加的标志作为value,最后进行输出。 Reduce端的主要工作:在Reduce端以连接字段作为key的分组已经完成,我们只需要在每一个分组当中 阅读全文
posted @ 2022-07-26 17:14 小王同学学编程 阅读(43) 评论(0) 推荐(0)

levels of contents