大数据系统学习笔记
文章平均质量分 94
大数据系统学习笔记
张--小涛涛
风一样的小涛涛
展开
-
000009 - Hadoop序列化
1)什么是序列化序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储到磁盘(持久化)和网络传输。反序列化就是将收到字节序列(或其他数据传输协议)或者是磁盘的持久化数据,转换成内存中的对象。2)为什么要序列化一般来说,“活的”对象只生存在内存里,关机断电就没有了。而且“活的”对象只能由本地的进程使用,不能被发送到网络上的另外一台计算机。然而序列化可以存储“活的”对象,可以将“活的”对象发送到远程计算机。3)为什么不用 Java 的序列化。原创 2024-08-04 15:57:27 · 844 阅读 · 0 评论 -
000008 - MapReduce概述
MapReduce 是一个分布式运算程序的编程框架,是用户开发“基于 Hadoop 的数据分析应用”的核心框架。MapReduce 核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个 Hadoop 集群上。原创 2024-07-23 23:20:04 · 605 阅读 · 0 评论 -
000007 - HDFS DataNode
(2)DataNode 启动后向 NameNode 注册(高度NameNode的块信息以及对应的meta信息),通过后,周期性(6 小时)的向 NameNode 上报所有的块信息。接下来我们验证一下。(1)一个数据块在 DataNode 上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。DataNode 节点上的数据损坏了,如果没有发现,对于系统来说是危险的,不可控的。(4)常见的校验算法 crc(32),md5(128),sha1(160)原创 2024-07-18 23:08:45 · 872 阅读 · 0 评论 -
000006 - HDFS NN和2NN工作机制
(4)每次NameNode启动的时候都会将Fsimage文件读入内存,加 载Edits里面的更新操作,保证内存中的元数据信息是最新的、同步的,可以看成NameNode启动的时候就将Fsimage和Edits文件进行了合并。(1)第一次启动 NameNode 格式化后,创建 Fsimage 和 Edits 文件。(2)Edits文件:存放HDFS文件系统的所有更新操作的路径,文件系统客户端执行的所有写操作首先会被记录到Edits文件中。(3)NameNode 记录操作日志,更新滚动日志。原创 2024-07-15 23:21:11 · 518 阅读 · 0 评论 -
000005 - HDFS 读写流程
(7) 客户端开始往dn1 上传第一个Block (先从磁盘读取数据放到一个本地内存缓存),以 Packet 为单位,dn1 收到一个 Packet 就会传给 dn2,dn2 传给 dn3;(5)客户端通过 FSDataOutputStream 模块请求dn1 上传数据,dn1 收到请求会继续调用dn2,然后dn2 调用dn3,将这个通信管道建立完成。那么这个最近距离怎么计算呢?(8)当一个Block 传输完成之后,客户端再次请求NameNode 上传第二个Block 的服务器(重复执行 3-7 步)。原创 2024-06-24 22:53:05 · 1144 阅读 · 0 评论 -
000004 - HDFS
随着数据量越来越大,在一个操作系统存不下所有的数据,那么就分配到更多的操作系统管理的磁盘中,但是不方便管理和维护,迫切需要一种系统来管理多台机器上的文件,这就是分布式文件管理系统。HDFS 只是分布式文件管理系统中的一种。HDFS(Hadoop Distributed File System),它是一个文件系统,用于存储文件,通过目录树来定位文件;其次,它是分布式的,由很多服务器联合起来实现其功能,集群中的服务器有各自的角色。HDFS 的使用场景:适合一次写入,多次读出的场景。原创 2024-06-17 23:34:41 · 849 阅读 · 0 评论 -
000003 - Hadoop集群配置
core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml 四个配置文件存放在$HADOOP_HOME/etc/hadoop 这个路径上,用户可以根据项目需求重新进行修改配置。原创 2024-06-13 23:43:52 · 513 阅读 · 0 评论 -
000002 - Hadoop环境安装
我使用AWS创建三台服务器,并且将对服务器的创建过程以及服务器的配置全部用代码和脚本实现,参考。要搭建Hadoop集群环境,我们需要执行如下。原创 2024-05-31 00:07:41 · 415 阅读 · 0 评论 -
000001 - Hadoop及其大数据生态圈
1)Sqoop:Sqoop 是一款开源的工具,主要用于在Hadoop、Hive 与传统的数据库(MySQL)间进行数据的传递,可以将一个关系型数据库(例如 :MySQL,Oracle 等)中的数据导进到Hadoop 的HDFS 中,也可以将HDFS 的数据导进到关系型数据库中。2) Flume: Flume 是一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume 支持在日志系统中定制各类数据发送方,用于收集数据;7) Hbase: HBase 是一个分布式的、面向列的开源数据库。原创 2024-05-29 21:12:09 · 911 阅读 · 0 评论