![](https://img-blog.csdnimg.cn/2019092715111047.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
hadoop专栏
文章平均质量分 94
本专栏主要介绍hadoop的相关三个组件,即HDFS、MR、Yarn。分为部署、原理介绍、应用示例。由于部分文章前后有关联,建议按照顺序阅读。
一瓢一瓢的饮 alanchanchn
2023博客之星12
本科毕业于西安电子科技大学
硕士毕业于华东理工大学
长期从事软件、管理相关工作,擅长管理、一般应用系统开发、大数据开发,常见的框架、组件较为了解。
展开
-
24、hadoop系列博客文章质量调查
1、hadoop3.1.4简单介绍及部署、简单验证2、HDFS操作 - shell客户端3、HDFS的使用(读写、上传、下载、遍历、查找文件、整个目录拷贝、只拷贝文件、列出文件夹下文件、删除文件及目录、获取文件及文件夹属性等)-java4、HDFS-java操作类HDFSUtil及junit测试(HDFS的常见操作以及HA环境的配置)5、HDFS API的RESTful风格–WebHDFS6、HDFS的HttpFS-代理服务7、大数据中常见的文件存储格式以及hadoop中支持的压缩算法8、HD原创 2023-05-02 12:07:05 · 3119 阅读 · 0 评论 -
23、hadoop集群中yarn运行mapreduce的内存、CPU分配调度计算与优化
hadoop yarn支持内存与CPU两种资源的调度方式。YARN作为一个资源调度器,应该考虑到集群里面每一台机子的计算资源,然后根据application申请的资源进行分配Container。Container是YARN里面资源分配的基本单位,具有一定的内存以及CPU资源。在YARN集群中,平衡内存、CPU、磁盘的资源的很重要的,根据经验,每两个container使用一块磁盘以及一个CPU核的时候可以使集群的资源得到一个比较好的利用。主要涉及参数有。原创 2023-05-01 17:44:35 · 46156 阅读 · 0 评论 -
22、MapReduce使用Gzip压缩、Snappy压缩和Lzo压缩算法写文件和读取相应的文件
至于生产环境中,使用哪种算法以及是否压缩视实际情况而定,但一般情况下压缩比越高解压速度越慢,压缩时也会越慢压缩可以大幅度降低IO,减少网络间的传输内容压缩比越高,占用的空间越小。原创 2023-05-01 17:03:47 · 45723 阅读 · 0 评论 -
21、MapReduce读写SequenceFile、MapFile、ORCFile和ParquetFile文件
本文介绍使用MapReduce读写文件,包括:读写SequenceFile、MapFile、ORCFile和ParquetFile文件。本文前提:hadoop环境可正常使用。pom.xml文件内容参考本专栏中的其他文章内容。本文分为四部分,即MapReduce读写SequenceFile、MapFile、ORCFile和ParquetFile文件。下篇文章介绍压缩算法的使用。关于本文的前置内容介绍,参考链接。原创 2023-05-01 14:54:03 · 45680 阅读 · 0 评论 -
20、MapReduce 工作流介绍
多个MR作业,先后依次执行来计算得出最终结果。这类作业类似于DAG的任务,各个作业之间有依赖关系,比如说,这一个作业的输入,依赖上一个作业的输出等等。一般实际的业务场景中,可能使用定时调度工具进行调度,但本示例仅仅说明mapreduce自身也可以做到。JobControl类:工作流job控制器,一次可以提交、管理多个job。JobControl类实现了线程Runnable接口。需要实例化一个线程来让它启动。ControlledJob类:可以将普通作业包装成受控作业。并且支持设置依赖关系。原创 2023-05-01 14:12:15 · 45479 阅读 · 0 评论 -
19、Join操作map side join 和 reduce side join
介绍mapreduce的两种join方式,其中map端的join使用到了分布式缓存原创 2023-05-01 13:56:42 · 45533 阅读 · 0 评论 -
18、MapReduce的计数器与通过MapReduce读取/写入数据库示例
在执行MapReduce程序的时候,控制台输出日志中通常有下面所示片段内容Hadoop内置的计数器可以收集、统计程序运行中核心信息,帮助用户理解程序的运行情况,辅助用户诊断故障下面是示例性日志,介绍了计数器。原创 2023-05-01 12:04:24 · 45621 阅读 · 0 评论 -
17、MapReduce的分区Partition介绍
当MapReduce中有多个reduce task执行的时候,此时map task的输出就会面临一个问题:究竟将自己的输出数据交给哪一个reducetask来处理?这就是数据分区(partition)默认情况下,MapReduce是只有一个reducetask来进行数据的处理。这就使得不管输入的数据量多大,最终的结果都是输出到一个文件中当改变reducetask个数的时候,作为maptask就会涉及到分区的问题,即:MapTask输出的结果如何分配给各个ReduceTask来处理。原创 2023-05-01 11:12:35 · 45888 阅读 · 0 评论 -
16、MapReduce的基本用法示例-自定义序列化、排序、分区、分组和topN
本文介绍MapReduce常见的基本用法。前提是hadoop环境可正常运行。本文分为五个部分,即介绍自定义序列化、排序、分区、分组和topN。原创 2023-05-01 10:53:48 · 46052 阅读 · 0 评论 -
15、MapReduce介绍及wordcount
MapReduce的思想核心是分布式计算,即先分散再聚合。分散就是把一个大的问题,按照一定的策略分为等价的、规模较小的若干部分,然后逐个解决,分别计算出各部分的结果聚合就是最后把各部分的结果组成整个问题的最终结果Map负责“分散”:即把大的任务分解为若干个小任务来并行处理。可以进行拆分的前提是这些小任务可以并行计算,彼此间几乎没有依赖关系。Reduce负责“聚合”:即对map阶段的结果进行全局汇总。原创 2023-05-01 09:38:59 · 45450 阅读 · 0 评论 -
14、HDFS 透明加密KMS
HDFS中的数据会以block的形式保存在各台数据节点的本地磁盘中,但这些block都是明文的。通过Web UI页面找到Block的ID和副本位于的机器信息如果在操作系统中直接访问block所在的目录,通过Linux的cat命令是可以直接查看里面的内容的,且是明文。在datanode找到其文件为:HDFS透明加密(Transparent Encryption)支持端到端的透明加密,启用以后,对于一些需要加密的HDFS目录里的文件可以实现透明的加密和解密,而不需要修改用户的业务代码。原创 2023-04-28 17:33:16 · 45990 阅读 · 0 评论 -
13、HDFS Snapshot快照
快照(Snapshot)是数据存储的某一时刻的状态记录;与备份不同,备份(Backup)则是数据存储的某一个时刻的副本。HDFS Snapshot快照是整个文件系统或某个目录在某个时刻的镜像。该镜像并不会随着源目录的改变而进行动态的更新。原创 2023-04-28 16:31:18 · 46312 阅读 · 0 评论 -
12、HDFS Trash垃圾桶回收介绍与示例
默认情况下,HDFS中Trash是没有开启的,删除操作的数据将会被直接删除启用Trash功能后,从HDFS中删除某些内容时,文件或目录不会立即被清除,它们将被移动到回收站Current目录中(/user/${username}/.Trash/current).Trash中的文件在用户可配置的时间延迟后被永久删除可以简单地将回收站里的文件移动到.Trash目录之外的位置来恢复回收站中的文件和目录。原创 2023-04-25 11:07:05 · 45589 阅读 · 0 评论 -
11、hadoop环境下的Sequence File的读写与合并
本文介绍hadoop环境下的Sequence File的读写与合并。本文依赖:hadoop环境可用,本示例是以hadoop的HA环境作为示例的,如果不是HA环境,参考本专栏的。原创 2023-04-25 10:45:13 · 45494 阅读 · 0 评论 -
10、HDFS小文件解决方案--Archive
HDFS并不推荐使用大量小文件进行存储,因为每个文件最少一个block,每个block的元数据都会在NameNode占用内存,如果存在大量的小文件,它们会占用NameNode节点的大量内存。Hadoop Archives可以有效的处理以上问题,它可以把多个文件归档成为一个文件,归档成一个文件后还可以透明的访问每一个文件。原创 2023-04-25 10:21:12 · 45967 阅读 · 0 评论 -
9、hadoop高可用HA集群部署及三种方式验证
本文介绍hadoop HA环境部署。本文分为三部分,即HA集群规划、HA集群部署和HA集群验证前提依赖:1、前提是zookeeper已经部署好,其服务器部署在server1、server2、server3上,且能正常运行2、ssh免登录已完成配置,且完成NameNode和NameNode的相互免密,比如server1和server2是两个NameNode,其相互已经免密。原创 2023-04-24 16:42:50 · 46024 阅读 · 1 评论 -
8、HDFS内存存储策略支持和“冷热温”存储
HDFS支持把数据写入由DataNode管理的堆外内存DataNode异步地将内存中数据刷新到磁盘,从而减少代价较高的磁盘IO操作,这种写入称为 Lazy Persist写入该特性从Apache Hadoop 2.6.0开始支持。原创 2023-04-24 15:42:31 · 45716 阅读 · 0 评论 -
7、大数据中常见的文件存储格式以及hadoop中支持的压缩算法
本文主要介绍大数据环境中常见的文件存储格式、压缩算法。本文分为2个部分,即文件存储格式和压缩算法。原创 2023-04-24 10:59:13 · 45747 阅读 · 0 评论 -
6、HDFS的HttpFS-代理服务
HttpFS 是一个提供RESTful 接口的网关的服务器,该网关支持所有HDFS文件系统操作对于文件CURD的操作全部提交给HttpFS服务进行中转,然后由HttpFS去跟HDFS集群交互HttpFS是一个独立于HDFS的服务,若使用需要手动安装。本质上是一个代理服务HttpFS本身是Java Web应用程序。使用内置的Jetty服务器对外提供服务HttpFS默认端口号为14000配置允许通过代理访问的主机节点、用户所属组。core-site.xml配置文件。原创 2023-04-24 10:22:01 · 45747 阅读 · 0 评论 -
5、HDFS API的RESTful风格--WebHDFS
WebHDFS 提供了访问HDFS的RESTful接口,内置组件,默认开启。WebHDFS 使得集群外的客户端可以不用安装HADOOP和JAVA环境就可以对HDFS进行访问,且客户端不受语言限制。当客户端请求某文件时,WebHDFS会将其重定向到该资源所在的datanode。原创 2023-04-24 09:54:20 · 46225 阅读 · 0 评论 -
4、HDFS-java操作类HDFSUtil及junit测试(HDFS的常见操作以及HA环境的配置)
本文编写了java对HDFS的常见操作,并且均测试通过。其功能包含构造conf、设置系统环境变量、创建目录、判断文件是否存在、获取文件/目录的大小等,具体见下图。本文分为四部分,即pom.xml、junit测试类、操作类、高可用环境操作类。原创 2023-04-24 08:56:42 · 45825 阅读 · 0 评论 -
3、HDFS的使用(读写、上传、下载、遍历、查找文件、整个目录拷贝、只拷贝文件、列出文件夹下文件、删除文件及目录、获取文件及文件夹属性等)-java
本示例介绍java通过api操作hdfs。主要包含HDFS的读写、上传、下载、遍历、查找文件、整个目录拷贝、只拷贝文件、列出文件夹下文件、删除文件及目录、获取文件及文件夹属性等。本文分为2个部分,即环境准备和示例。原创 2023-04-23 17:32:50 · 46883 阅读 · 0 评论 -
2、HDFS操作 - shell客户端
本文介绍hdfs的shell操作,本文的前提是hdfs的功能正常运行。本文分为2个部分介绍,即语法格式与具体示例。原创 2023-04-23 17:13:49 · 45713 阅读 · 0 评论 -
1、hadoop3.1.4简单介绍及部署、简单验证
Hadoop是Apache旗下的一个用java语言实现开源软件框架,是一个开发和运行处理大规模数据的软件平台。允许使用简单的编程模型在大量计算机集群上对大型数据集进行分布式处理。HDFS(分布式文件系统):解决海量数据存储YARN(作业调度和集群资源管理的框架):解决资源任务调度MAPREDUCE(分布式运算编程框架):解决海量数据计算Hadoop通常是指一个更广泛的概念——Hadoop生态圈。原创 2023-04-23 16:40:19 · 47337 阅读 · 0 评论 -
0、hadoop3.1.4的centos7-snappy编译
本文介绍hadoop 3.1.4版本在centos 7的环境中编译步骤。本示例是以root用户进行操作的,如果非root用户可能会需要root权限。原创 2023-04-20 17:37:37 · 45982 阅读 · 0 评论