随笔分类 -  Hadoop学习

摘要:代码引自 https://blog.csdn.net/jorocco/article/details/80142884 关于MapReduce的代码学习 共有三个部分: 传输的Value是自定义类型,需要自己实现序列化和反序列化,read()和write() 传输的Key是自定义类型,则需要自己实现 阅读全文
posted @ 2020-07-11 16:46 Tanglement 阅读(225) 评论(0) 推荐(0)
摘要:Maven依赖 <dependencies> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-hdfs</artifactId> <version>3.1.3</version> </dependency> < 阅读全文
posted @ 2020-07-10 14:52 Tanglement 阅读(293) 评论(0) 推荐(0)
摘要:类学习 Configuration 设置HDFS的相关参数。 conf = new Configuration (); conf.set("fs.defaultFS","hdfs://bigdata:9000"); conf.set("dfs.client.use.datanode.hostname 阅读全文
posted @ 2020-07-09 10:11 Tanglement 阅读(862) 评论(0) 推荐(0)
摘要:原本是配置了阿里云ECS服务器,但是用终端vim修改调试代码,总是会不方便。 后面想到有两种解决办法: 用本地IDEA调试代码,然后直接连接服务器的HDFS等端口,直接调试 用本地IDEA调试代码,然后打包,发到服务器上进行运行 下面是IDEA访问服务器hadoop的一个测试,以及遇到的问题和解决方 阅读全文
posted @ 2020-07-05 10:57 Tanglement 阅读(630) 评论(1) 推荐(0)
摘要:背景 原本自己都是使用笔记本的虚拟机来搭建大数据环境,调试代码,运行项目。但自己的笔记本是13寸的,屏幕很小,经常由于要打开多个终端,同时辅以网页,造成小小的屏幕里有很多窗口,体验极差。 有想过通过外接大显示屏来解决,但显示屏固定连接了自己的游戏本。等于宿舍里操作游戏本,实验室操作台式机,平时背着轻 阅读全文
posted @ 2020-07-03 15:07 Tanglement 阅读(665) 评论(0) 推荐(1)
摘要:两个网页查看集群情况 1. master:8088查看mapreduce任务的执行情况。有任务ID,任务运行状态,任务执行程度。 2. localhost:50070查看HDFS目录,查看DataNode信息,集群信息。 文件存储位置 在datanode节点下,在目录/usr/local/hadoo 阅读全文
posted @ 2020-04-04 20:18 Tanglement 阅读(1718) 评论(0) 推荐(1)
摘要:学习了这么久hadoop,都没有搭过集群,是不合格的。这次搭建完,细扣具体的Job运行情况,日志信息,对Hadoop了解更深了。后面也要陆续搭建分布式flume,kafka,hbase,mysql来完成最终的离线批处理分析项目。 搭建步骤 1. 虚拟机环境准备(IP地址、主机名、新用户、防火墙、SS 阅读全文
posted @ 2020-04-04 13:56 Tanglement 阅读(163) 评论(0) 推荐(0)
摘要:感觉效率不是很高,是否能用sqoop来解决HBase与其他文件系统的数据导入导出。 通过HBase的相关JavaApi,我们可以实现伴随HBase操作的MapReduce过程,比如使用MapReduce将数据从本地文件导入HBase的表中,或我们从HBase的表中读取一些原始数据用于MapReduc 阅读全文
posted @ 2020-03-14 13:45 Tanglement 阅读(151) 评论(0) 推荐(0)
摘要:MapReduce程序瓶颈 计算机性能 CPU、内存、磁盘、网络 I/O操作优化 数据倾斜 Map和Reduce数设置不合理 Map运行时间太长,导致Reduce等待过久 小文件过多 大量的不可分块的超大文件 spill次数过多 merge次数过多 MapReduce优化方法 主要从六个方面考虑:数 阅读全文
posted @ 2020-03-14 10:05 Tanglement 阅读(351) 评论(0) 推荐(0)
摘要:Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于分布式的操作系统平台。 Yarn基本架构 Yarn主要由ResourceManager、NodeManager、ApplicationMaster和Container等组件构成。 ResourceManager的作用: 处理客户端请 阅读全文
posted @ 2020-03-13 19:54 Tanglement 阅读(209) 评论(0) 推荐(0)
摘要:Reduce Join工作原理 Map端的主要工作:对来自不同表或文件的key/value对,打上标签以区别不同来源的记录。然后用连接字段作为key,其余部分和新加标志作为value,最后进行输出 Reduce端的主要工作:在Reduce端以连接字段作为key的分组已经完成,我们只需要在每一个分组中 阅读全文
posted @ 2020-03-13 16:04 Tanglement 阅读(200) 评论(0) 推荐(0)
摘要:常用数据序列化类型 Java类型 | Hadoop Writable类型 | boolean | BooleanWritable byte | ByteWritable int | IntWritable String | Text map | MapWritable array | ArrayWr 阅读全文
posted @ 2020-03-13 11:40 Tanglement 阅读(215) 评论(0) 推荐(0)
摘要:HDFS组成架构 NameNode 管理HDFS的名称空间 配置副本策略,fsimage和edit 管理数据块block映射信息 处理客户端读写请求 DataNode 存储实际的数据块 执行数据块的读写操作 Client 文件切分,split成block 与NameNode交互,获取数据块位置信息 阅读全文
posted @ 2020-03-03 14:49 Tanglement 阅读(263) 评论(0) 推荐(1)
摘要:Map public static class MyMapper extends Mapper 继承Mapper类 其中的含义如下: LongWritable为map函数的输入键,行首偏移量 Text为map函数的输入值,每行的内容 Text为输出类型,根据业务来定义 IntWritable为输出值 阅读全文
posted @ 2020-02-22 15:26 Tanglement 阅读(123) 评论(0) 推荐(0)
摘要:引自[https://www.iteye.com/blog/langyu 992916] shuffle的意义有三点: 1.把map task端的数据完整传输到reduce task端 2.减少不必要的宽带消耗 3.减少磁盘IO消耗 首先把Shuffle理解为map的shuffle和reduce的s 阅读全文
posted @ 2020-02-20 12:11 Tanglement 阅读(443) 评论(0) 推荐(0)