自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

mischen520的博客

技术成就梦想

  • 博客(656)
  • 资源 (21)
  • 论坛 (1)
  • 收藏
  • 关注

原创 利用poi实现多个word之间的合并(包括图片、表格、样式都不丢失)

最近项目上经常操作word,之前一直用的freemarker这个框架,在网上搜寻了大量的资料,都推荐使用poi-tl这个工具来实现,这里我就自己写了一个demo,亲自测试了一下,这个word合并果然简单靠谱,需要注意的是:需要使用jdk1.8以上的来进行编译主要步骤:1.导入poi-tl包:<dependency> <groupId>com.deepoove</groupId> <artifact

2021-05-13 23:43:19 5

原创 FastDFS和mogileFS对比

2021-05-12 23:23:10 1

原创 FastDFS和集中存储方式对比

2021-05-12 23:22:06

原创 FastDFS高可用集群架构图

2021-05-12 23:17:59

原创 什么是FastDFS?

FastDFS是一个轻量级的开源分布式文件系统FastDFS主要解决了大容量的文件存储和高并发访问的问题,文件存取时实现了负载均衡FastDFS实现了软件方式的RAID,可以使用廉价的IDE硬盘进行存储 支持存储服务器在线扩容 支持相同内容的文件只保存一份,节约磁盘空间FastDFS只能通过Client API访问,不支持POSIX访问方式FastDFS特别适合大中型网站使用,用来存储资源文件(如:图片、文档、音频、视频等等)...

2021-05-12 23:10:51 3

原创 NameNode心跳并发配置

1)hdfs-site.xmlThe number of Namenode RPC server threads that listen to requests from clients. If dfs.namenode.servicerpc-address is not configured then Namenode RPC server threads listen to requests from all nodes.NameNode有一个工作线程池,用来处理不同DataNode的并发心..

2021-05-09 10:26:25 6

原创 NameNode内存生产配置探究

1)NameNode内存计算每个文件块大概占用150byte,一台服务器128G内存为例,能存储多少文件块呢?128 * 1024 * 1024 * 1024 / 150Byte ≈9.1亿G MB KB Byte2)Hadoop2.x系列,配置NameNode内存NameNode内存默认2000m,如果服务器内存4G,NameNode内存可以配置3g。在hadoop-env.sh文件中配置如下。HADOOP_NAMENODE_OPTS=-Xmx3072m3)Hadoo...

2021-05-09 10:01:08 20

原创 什么是公平调度器(Fair Scheduler)?

Fair Schedulere是Facebook开发的多用户调度器。公平调度器队列资源分配方式:公平调度器资源分配算法:

2021-05-09 09:03:13 17

原创 什么是容量调度器(Capacity Scheduler)?

Capacity Scheduler是Yahoo开发的多用户调度器。

2021-05-09 08:44:04 1

原创 yarn作业提交详细过程

(1)作业提交第1步:Client调用job.waitForCompletion方法,向整个集群提交MapReduce作业。第2步:Client向RM申请一个作业id。第3步:RM给Client返回该job资源的提交路径和作业id。第4步:Client提交jar包、切片信息和配置文件到指定的资源提交路径。第5步:Client提交完资源后,向RM申请运行MrAppMaster。(2)作业初始化第6步:当RM收到Client的请求后,将该job添加到容量调度器中。第7步:某一个空

2021-05-09 05:53:01 56

原创 Yarn的工作机制

(1)MR程序提交到客户端所在的节点。(2)YarnRunner向ResourceManager申请一个Application。(3)RM将该应用程序的资源路径返回给YarnRunner。(4)该程序将运行所需资源提交到HDFS上。(5)程序资源提交完毕后,申请运行mrAppMaster。(6)RM将用户的请求初始化成一个Task。(7)其中一个NodeManager领取到Task任务。(8)该NodeManager创建容器Container,并产生MRAppmaster。..

2021-05-09 05:42:28 58

原创 什么是Yarn资源调度器?

思考:1)如何管理集群资源?2)如何给任务合理分配资源?Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程序则相当于运行于操作系统之上的应用程序。YARN主要由ResourceManager、NodeManager、ApplicationMaster和Container等组件构成。YARN的基础架构如下:...

2021-05-09 05:34:03 82

原创 什么是Hadoop序列化

常用数据序列化类型 Java类型 Hadoop Writable类型 Boolean BooleanWritable Byte ByteWritable Int IntWritable Float FloatWritable Long LongWritable

2021-05-05 23:09:23 3

原创 Hadoop示例WordCount代码编写

1)需求在给定的文本文件中统计输出每一个单词出现的总次数(1)输入数据mischen mischenss sscls clsjiaobanzhangxuehadoopjiao 宋运辉 蒋介石宋运辉(2)期望输出数据banzhang 1cls 2hadoop 1jiao 2mischen 2ss 2xue 1宋运辉 2蒋介石 12)需求分析按照MapReduce编程规范,分别编写Mapper,R...

2021-05-05 23:04:24 27 1

原创 Hadoop集群启动常用脚本

启动hadoop命令:在Hadoop102 上执行 /opt/module/hadoop-3.1.3/sbin/start-dfs.sh (启动 hdfs)在Hadoop103 上执行 /opt/module/hadoop-3.1.3/sbin/start-yarn.sh (启动 yarn)在Hadoop102 上执行 /opt/module/hadoop-3.1.3/bin/mapred --daemon start historyserver (启动 historyserver)...

2021-05-05 11:15:48 2

原创 Hadoop集群配置详细步骤

一般来说,hadoop集群环境都是比较耗内存的,所以即使在虚拟机上面,配置的每台机器的内存至少不能小于50G,不然后期测试会去进行一个扩容,所以就要求自己的电脑配置相对于比较高,这样才能完成本地的一些大数据的测试。因为hadoop都是比较耗内存的,所以需要注意以下2点:1.NameNode和SecondaryNameNode不要安装在同一台服务器2.ResourceManager也很消耗内存,不要和NameNode、SecondaryNameNode配置在同一台机器上。我的虚拟机的配置是

2021-05-05 11:12:09 11

原创 MapReduce编程规范

用户编写的程序分成三个部分:Mapper、Reducer和Driver。

2021-05-04 09:56:42 5

原创 MapReduce核心思想

(1)分布式的运算程序往往需要分成至少2个阶段。(2)第一个阶段的MapTask并发实例,完全并行运行,互不相干。(3)第二个阶段的ReduceTask并发实例互不相干,但是他们的数据依赖于上一个阶段的所有MapTask并发实例的输出。(4)MapReduce编程模型只能包含一个Map阶段和一个Reduce阶段,如果用户的业务逻辑非常复杂,那就只能多个MapReduce程序,串行运行。...

2021-05-04 09:39:26 5

原创 MapReduce的优缺点总结

1.1 MapReduce定义MapReduce是一个分布式运算程序的编程框架,是用户开发“基于Hadoop的数据分析应用”的核心框架。MapReduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。1.2MapReduce优缺点1.2.1 优点1)MapReduce易于编程它简单的实现一些接口,就可以完成一个分布式程序,这个分布式程序可以分布到大量廉价的PC机器上运行。也就是说你写一个分布式程序,跟写一个简单的串.

2021-05-04 09:17:26 39

原创 DataNode节点如何保证数据完整性

思考:如果电脑磁盘里面存储的数据是控制高铁信号灯的红灯信号(1)和绿灯信号(0),但是存储该数据的磁盘坏了,一直显示是绿灯,是否很危险?同理DataNode节点上的数据损坏了,却没有发现,是否也很危险,那么如何解决呢?如下是DataNode节点保证数据完整性的方法。(1)当DataNode读取Block的时候,它会计算CheckSum。(2)如果计算后的CheckSum,与Block创建时值不一样,说明Block已经损坏。(3)Client读取其他DataNode上的Block。(4)常

2021-05-04 08:59:04 2

原创 DataNode工作机制

(1)一个数据块在DataNode上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。(2)DataNode启动后向NameNode注册,通过后,周期性(6小时)的向NameNode上报所有的块信息。DN向NN汇报当前解读信息的时间间隔,默认6小时;<property> <name>dfs.blockreport.intervalMsec</name> <value&gt...

2021-05-04 00:04:22 8

原创 NameNode的工作机制

1)第一阶段:NameNode启动 (1)第一次启动NameNode格式化后,创建Fsimage和Edits文件。如果不是第一次启动,直接加载编辑日志和镜像文件到内存。(2)客户端对元数据进行增删改的请求。(3)NameNode记录操作日志,更新滚动日志。(4)NameNode在内存中对元数据进行增删改。2)第二阶段:Secondary NameNode工作(1)Secondary NameNode询问NameNode是否需要CheckPoint。直接带回NameNode是否检...

2021-05-03 23:32:44 5

原创 一张图了解HDFS读数据流程

(1)客户端通过DistributedFileSystem向NameNode请求下载文件,NameNode通过查询元数据,找到文件块所在的DataNode地址。(2)挑选一台DataNode(就近原则,然后随机)服务器,请求读取数据。(3)DataNode开始传输数据给客户端(从磁盘里面读取数据输入流,以Packet为单位来做校验)。(4)客户端以Packet为单位接收,先在本地缓存,然后写入目标文件。...

2021-05-03 23:00:59 4

原创 一张图了解HDFS写数据流程

(1)客户端通过Distributed FileSystem模块向NameNode请求上传文件,NameNode检查目标文件是否已存在,父目录是否存在。(2)NameNode返回是否可以上传。(3)客户端请求第一个 Block上传到哪几个DataNode服务器上。(4)NameNode返回3个DataNode节点,分别为dn1、dn2、dn3。(5)客户端通过FSDataOutputStream模块请求dn1上传数据,dn1收到请求会继续调用dn2,然后dn2调用dn3,将这个通信管道建..

2021-05-03 22:43:59 6

原创 HDFS文件上传参数优先级配置

参数优先级排序:(1)客户端代码中设置的值>(2)ClassPath下的用户自定义配置文件>(3)然后是服务器的自定义配置(xxx-site.xml)>(4)服务器的默认配置(xxx-default.xml)

2021-05-03 22:19:21 4

原创 为什么HDFS文件块大小不能设置过大,也不能设置过小呢

2021-05-03 21:10:06 7

原创 一张图了解HDFS的架构组成

2021-05-03 16:49:43 2

原创 HDFS的优缺点分析

HDFS的优点:HDFS的缺点:

2021-05-03 16:37:58 12

原创 Hadoop本地运行模式

1.在hadoop-3.1.3文件下面创建一个wcinput文件夹2.在wcinput文件下创建一个word.txt文件3.编辑word.txt文件,并在文件中输出以下内容:4.回到Hadoop目录/opt/module/hadoop-3.1.35.执行程序命令为:hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar wordcount wcinput wcoutput6.查看结果

2021-05-01 23:29:40 4

原创 Hadoop目录结构解析

(1)bin目录:存放对Hadoop相关服务(hdfs,yarn,mapred)进行操作的脚本(2)etc目录:Hadoop的配置文件目录,存放Hadoop的配置文件(3)lib目录:存放Hadoop的本地库(对数据进行压缩解压缩功能)(4)sbin目录:存放启动或停止Hadoop相关服务的脚本(5)share目录:存放Hadoop的依赖jar包、文档、和官方案例...

2021-05-01 23:09:39 10

原创 虚拟机如何卸载自带的jdk

如果你的虚拟机是最小化安装,则常常需要手动卸载自带的jdk,查询是否有自带的jdk命令为:rpm -qa | grep -i java,如果发现查询有值,则说明有自带的jdk,如果发现查询无值,则说明没有自带的jdk。如果有的话,可以使用下面的命令进行删除:rpm -qa | grep -i java | xargs -n1 rpm -e --nodepsrpm -qa:查询所安装的所有rpm软件包 grep -i:忽略大小写 xargs -n1:表示每次只传递一个参数 rpm -e –n

2021-05-01 22:56:46 17

原创 win10系统如何查看CPU个数

在电脑任务栏上右键单击选择任务管理器(K),进入里面,选择性能,点击打开资源监视器,在弹出的页面中选择CPU,从右边左上角往下拉,拉到最下边显示CPU 11,则表示你的电脑的CPU个数最大为11,截图如下:...

2021-05-01 15:03:35 12

原创 一张图了解大数据技术生态体系

图中涉及的技术名词解释如下:1)Sqoop:Sqoop是一款开源的工具,主要用于在Hadoop、Hive与传统的数据库(MySQL)间进行数据的传递,可以将一个关系型数据库(例如 :MySQL,Oracle 等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。2)Flume:Flume是一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;3)Kafka:Kafka是一种高吞吐量的分布式..

2021-05-01 11:05:18 12

原创 什么是YARN?一张图了解YARN的基本结构组成

Yet Another Resource Negotiator简称YARN,另一种资源协调者,是Hadoop的资源管理器。

2021-05-01 10:54:39 6

原创 什么是HDFS

Hadoop Distributed File System,简称HDFS,是一个分布式文件系统。

2021-05-01 10:49:39 3

原创 Hadoop1.x、2.x、3.x的区别

Hadoop1.x的组成为:Common(辅助工具)、HDFS(数据存储)、MapReduce (计算+资源调度);Hadoop2.x的组成为:Common(辅助工具)、HDFS(数据存储)、MapReduce (计算)、Yarn (资源调度)Hadoop3.x在组成上和Hadoop2.x没有任何区别...

2021-05-01 10:42:46 5

原创 shiro权限认证HelleWorld示例(最简单的模拟调用方式)

1.创建一个maven工程,只需要最简单的project就可以,idea通过File-New-Project简单创建即可2.在maven里面配置shiro依赖关系,代码如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

2021-04-27 07:19:23 17

原创 vue路由参数跳转具体实现方式

业务场景大概是这样的,我查询一个列表,展示在页面上,当我点击某一条信息的时候,可以给我跳到他相应的上面去,列表页展示如下:我当选择某一条信息之后,他就给我跳到相应的单个列表详情页,页面截图如下所示:可以看到,跳转的路径为:http://localhost:8080/blog/1,这里要想达到跳转的时候自动带上每个标题的id,这就需要路由来进行控制,首先,在main.js里面添加路由支持,具体代码如下:// The Vue build version to load with the

2021-04-20 06:37:18 53

原创 vue实现自定义搜索功能

vue实现自定义搜索功能需要使用computed函数,具体代码实现如下:<template> <div v-theme:column="'narrow'" id="show-blogs"> <h1>博客总览</h1> <input type="text" v-model="search" placeholder="搜索"> <div v-for="blog in filteredBlogs" cl

2021-04-18 21:08:16 17

原创 vuejs实现标题颜色随机变幻(使用自定义指令实现)

1.在标签上面自定义一个指令,代码如下:2.在main.js中使用Vue.directive绑定自定义指令,代码如下:// 自定义指令Vue.directive('rainbow',{ bind(el,bing,vnode){ //颜色随机生成 el.style.color ="#"+Math.random().toString(16).slice(2,8); }})3.页面效果如下:需要注意的是,在vue中所有自定义指令均应以v-开头,例.

2021-04-18 19:42:15 10

mysql-5.5.40-win32安装包

非常好用的mysql数据库,简单易装

2017-01-18

SecureCRT.exe

一款非常好用的支持ssh的连接工具,不要注册码的安装,安装好以后可以直接使用

2017-01-18

用js写的163登陆界面系统

用js写的163登陆界面系统,所有功能几乎都已完善,只有少许有待优化

2016-07-11

mysql 5.0资源下载

非常好用的一个mysql 5.0的配置文件,欢迎下载

2016-06-22

eclipse4.5.1.exe

只支持32位windows系统

2016-06-26

远程连接服务器工具SFTP

一款非常好用的连接服务器的工具,支持快速上传和下载

2017-01-18

navicat for mysql 支持64位的操作系统

一款开发mysql的工具包

2016-06-22

eclipse-inst-win32.zip

只支持32位windows操作系统

2016-06-25

net.sf.jadclipse压缩包

一款非常耐用的java反编译器,下载非常方便

2016-06-23

mysql中文学习手册

mysql中文学习手册,很值得一看哦!

2016-06-23

mysql-connector-java-5.1.26.jar

mysql-connector-java-5.1.26.jar,支持mysql 5.0

2016-06-28

NavicatforMySQ(支持32位操作系统)

2016-06-23

MyEclipse10.1破解工具及方法图解.zip

2016-07-10

apache-tomcat-6.0.18.exe

2016-07-11

putty.exe安装文件

2017-01-18

JDK_API_1_6_zh_CN.CHM

2016-06-23

commons-logging-1.2-bin.zip

2016-06-26

redis-2.6.zip

redis测试开发使用,直接在windows安装即可使用,需要的小伙伴们可以下载哦

2019-06-05

mysql64位安装工具

一款非常还用的MySQL,支持64位操作系统

2017-01-18

servlet作为服务器响应请求.zip

servlet作为服务器登陆注册界面的实现,非常有用的一段代码。

2016-07-14

登陆注册界面实现

登陆注册界面实现

2016-08-03

mischen520的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除