- 博客(54)
- 收藏
- 关注
原创 NO.13 Hadoop 序列化
在企业开发中往往常用的基本序列化类型不能满足所有需求,比如在 Hadoop 框架内部传递一个 bean 对象,那么该对象就需要实现序列化接口。具体实现 bean 对象序列化步骤如下 7 步。(1)必须实现 Writable 接口(2)反序列化时,需要反射调用空参构造函数,所以必须有空参构造super();(3)重写序列化方法@Override(4)重写反序列化方法@Override(5)注意反序列化的顺序和序列化的顺序完全一致。
2024-07-28 06:15:00
883
原创 NO.12 MapReduce 概述
MapReduce 是一个分布式运算程序的编程框架,是用户开发“基于 Hadoop 的数据分析应用”的核心框架。MapReduce 核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个 Hadoop 集群上。
2024-07-28 06:00:00
934
原创 NO.11 DataNode
(1)一个数据块在 DataNode 上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。(2)DataNode 启动后向 NameNode 注册,通过后,周期性(6 小时)的向 NameNode 上报所有的块信息。DN 向 NN 汇报当前解读信息的时间间隔,默认 6 小时;DN 扫描自己节点块信息列表的时间,默认 6 小时。
2024-07-27 19:52:03
440
原创 NO.10 NameNode 和 SecondaryNameNode
(4)每 次NameNode启动的时候都会将Fsimage文件读入内存,加 载Edits里面的更新操作,保证内存。中的元数据信息是最新的、同步的,可以看成NameNode启动的时候就将Fsimage和Edits文件进行了合并。致效率过低,但如果不更新,就会发生一致性问题,一旦 NameNode 节点断电,就会产生数。这样又会带来新的问题,当在内存中的元数据更新时,如果同时更新 FsImage,就会导。但是,如果长时间添加数据到 Edits 中,会导致该文件数据过大,效率降低,而且一旦。
2024-07-27 19:42:25
704
原创 NO.8 HDFS 的 API 操作
注意:如果环境变量不起作用,可以重启电脑试试。验证 Hadoop 环境变量是否正常。双击 winutils.exe,如果报如下错误。说明缺少微软运行库(正版系统往往有这个问题)。再资料包里面有对应的微软运行库安装包双击安装即可。
2024-07-27 18:43:29
273
原创 NO.6 HDFS概述
HDFS(Hadoop Distributed File System),它是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。HDFS 的使用场景:适合一次写入,多次读出的场景。一个文件经过创建、写入和关闭之后就不需要改变。
2024-07-27 18:15:16
274
原创 NO.5 Hadoop常见错误及解决方案
原因:全局变量 hadoop java 没有生效。解决办法:需要 source /etc/profile 文件。原因是在 Linux 的根目录下/tmp 目录中存在启动的进程临时文件,将集群相关进程删除掉,再重新启动集群。(1)在/etc/hosts 文件中添加 192.168.10.102 hadoop102。(2)主机名称不要起 hadoop hadoop000 等特殊名称。解决办法:尽量不要粘贴 Word 中代码。
2024-07-26 15:26:10
276
原创 NO.3 Hadoop运行模式(1)
scp 可以实现服务器与服务器之间的数据拷贝。core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml 四个配置文件存放在$HADOOP_HOME/etc/hadoop 这个路径上,用户可以根据项目需求重新进行修改配置。
2024-07-24 23:49:19
578
原创 NO.2 Hadoop运行环境搭建
Hadoop 下载地址:https://archive.apache.org/dist/hadoop/common/hadoop-3.1.3/(d)将桌面 hosts 文件覆盖 C:\Windows\System32\drivers\etc 路径 hosts 文件。注意:atguigu 这一行不要直接放到 root 行下面,因为所有用户都属于 wheel 组,你先。注意:在企业开发时,通常单个服务器的防火墙时关闭的。公司整体对外会设置非常安。注意:安装 JDK 前,一定确保提前删除了虚拟机自带的 JDK。
2024-07-24 00:36:15
622
原创 NO.1 Hadoop概述
1.1 Hadoop是什么1.2 Hadoop优势1.3 Hadoop组成1.3.1 HDFS架构概述1.3.2 YARN架构概述1.3.3 MapReduce架构概述1.3.4 HDFS、YARN、MapReduce三者关系1.4大数据技术生态体系1.5 推荐系统框架图
2024-07-23 23:48:14
384
原创 Java学习笔记NO.29
Java提供了丰富的容器类库,包括List、Set、Map等,以及它们的实现类ArrayList、HashSet、HashMap等。Java中的队列可以通过Queue接口来实现,常见的实现类包括LinkedList和PriorityQueue。Java中常用的列表接口是List,常见的实现类包括ArrayList和LinkedList。Java中的映射接口是Map,常见的实现类包括HashMap和TreeMap。Java中的集合接口有Set,常见的实现类包括HashSet和TreeSet。
2024-03-31 20:04:36
676
原创 Java学习笔记NO.28
Java中的字符串相关类提供了丰富的方法来操作字符串,包括字符串的拼接、查找、替换等操作。本文将介绍包装类、字符串相关类、日期时间类、Math类和枚举类,并提供相应的代码示例。Java中的包装类提供了将基本数据类型转换为对象的功能,使得基本数据类型具有对象的特性。常用的包装类包括Integer、Double、Boolean等。枚举是一种特殊的类,用于定义一组有限的常量,通常用于表示一些固定的值,如星期、月份等。Java中的Math类提供了常用的数学运算方法,如求绝对值、取整、幂运算等。
2024-03-31 19:56:04
322
原创 Java学习笔记NO.27
除了Java提供的异常类型外,我们还可以自定义异常类来满足特定的业务需求。自定义异常类通常需要继承自Exception或其子类,并提供构造方法和其他必要的方法。} }// 模拟抛出自定义异常throw new CustomException("自定义异常信息", 500);try {System.out.println("捕获自定义异常:" + e.getMessage());System.out.println("错误码:" + e.getErrorCode());} } }
2024-03-31 19:48:42
366
原创 Java学习笔记NO.25
System.out.println("发出声音");@OverrideSystem.out.println("二胡发出嘹亮的声音");@OverrideSystem.out.println("钢琴发出悦耳的声音");@OverrideSystem.out.println("小提琴发出柔和的声音");
2024-03-21 19:24:02
427
原创 Java学习笔记NO.23
面向对象编程(OOP)是一种程序设计范式,它使用对象和类的概念来组织代码。在Java中,一切皆为对象,每个对象都有其自己的属性和行为。
2024-03-17 12:16:30
376
原创 Java学习笔记NO.22
数组是一种用于存储多个相同类型数据的容器,可以通过索引访问数组中的元素。在Java中,数组是一个对象,具有固定长度,一旦创建后,长度不可变。稀疏矩阵是指大部分元素为零的矩阵。为了节省存储空间,可以使用稀疏矩阵来表示。在Java中,可以使用二维数组来表示稀疏矩阵。Arrays类是Java提供的一个工具类,用于操作数组。它提供了一系列静态方法来方便地处理数组,如排序、查找、复制等。二维数组是指数组中的元素也是数组,可以看作是一个表格或矩阵的结构。在Java中,二维数组由行和列组成。
2024-03-17 12:08:53
395
原创 Java学习笔记NO.21
方法重载是指在同一个类中可以定义多个方法,它们具有相同的名称但参数列表不同(参数类型、个数或顺序),编译器会根据调用时传入的参数自动匹配对应的方法。递归是指方法调用本身的过程,适合解决需要重复执行相同算法的问题,如阶乘、斐波那契数列等。在Java中,通过创建对象或使用静态方法的方式调用类中的方法。可变参数允许定义接受数量可变的参数,使用三个点。在方法内部,可变参数被当作数组处理。
2024-03-17 12:08:19
387
原创 Java学习笔记NO.20
类用于获取用户输入,可以从标准输入(键盘)读取各种类型的数据。循环用于重复执行一组语句,通常在已知循环次数的情况下使用。语句用于多条件分支控制,根据表达式的值执行相应的代码块。语句用于结束当前循环的迭代并进入下一次迭代。
2024-03-17 11:56:25
471
原创 Java学习笔记NO.19
学生管理系统是一种用于学校、教育机构或培训中心的软件工具,旨在帮助学校有效管理学生信息、课程安排和学生绩效等方面,在管理学生中占有重要的地位,它关系着学生信息的基本信息,其中包括学生信息,班级信息、课程信息等。对于学校来讲,学生信息管理系统是不可缺少的组成部分,它有效地管理学生档案,对学校学生的变动和统计起着重要的管理作用。第二,能够为学校提供强大的查询功能,以便管理人员了解和掌握学生的具体情况。第一,能够对学生的有关资料进行输入,查询,修改,删除。第四,可以对用户进行修改密码,新增用户。
2024-03-09 18:26:33
425
原创 Java学习笔记NO.18
暂未实现,请期待...”。要求利用无限循环让用户可以不断选择功能菜单,只有当用户输入菜单序号时才退出循环结束程序。(3)运行效果及截图。
2024-03-09 18:13:22
641
原创 Java学习笔记NO.8
T4.查找字符串中出现次数最多的字符。T3.判断一个数是否是完全平方数。T1.实现二分查找算法。T5.实现快速排序算法。T2.实现链表的反转。
2024-01-28 21:42:27
395
1
原创 Java学习笔记NO.7
T2.判断两个字符串是否是相同的 Anagram。T5.判断一个字符串是否是有效的括号匹配。T1.判断一个字符串是否是数字。T3.查找数组中的重复元素。
2024-01-28 21:31:39
339
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人