<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[klionl的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/klionl</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; klionl]]></copyright><item><title><![CDATA[浅谈Java中的String，StringBuffer和StringBuilder]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/106142222</link><guid>https://blog.youkuaiyun.com/klionl/article/details/106142222</guid><author>klionl</author><pubDate>Tue, 19 May 2020 16:20:33 +0800</pubDate><description><![CDATA[Java学习Java中的String，StringBuffer和StringBuilderStringStringBuffer和StringBuilder区别和联系
Java中的String，StringBuffer和StringBuilder
String

String声明为final的，不可被继承，final char[] value用于存储字符串数据，final体现了不可变性。

String的实例化方式：

/*
  1. 方式一：通过字面量定义的方式
	String s1 = "java"
  ]]></description><category></category></item><item><title><![CDATA[Java中的多线程基础]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/106098030</link><guid>https://blog.youkuaiyun.com/klionl/article/details/106098030</guid><author>klionl</author><pubDate>Thu, 14 May 2020 14:41:53 +0800</pubDate><description><![CDATA[Java学习Java中的多线程和锁进程和线程概念Java实现多线程的方法1. 继承Thread类2. 实现Runnable接口3. 实现Callable接口4. 使用线程池同步锁
Java中的多线程和锁
进程和线程概念


进程：是程序的一次执行过程，或是正在运行的一个程序，进程是一个动态的过程，存在生命周期(产生–&gt;存在–&gt;消亡)，系统在运行时会为每一个进程分配不同的内存区域。


线程：一个进程可以进一步细分为线程，是一个程序内部的一条执行路径。线程是CPU调度和执行的单位，每个线程都拥有独]]></description><category></category></item><item><title><![CDATA[浅谈Java中==和equals()区别]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/106052392</link><guid>https://blog.youkuaiyun.com/klionl/article/details/106052392</guid><author>klionl</author><pubDate>Mon, 11 May 2020 13:37:31 +0800</pubDate><description><![CDATA[Java基础浅谈Java中==和equals()区别== 运算符equals(): 方法
浅谈Java中==和equals()区别
== 运算符

可以使用在基本数据类型变量和引用数据类型变量中
如果比较的是基本数据类型变量，比较两个变量保存的数据是否相等（不一定要类型相同）
如果比较的是引用类型变量，比较的是两个变量的地址值是否相同，即两个引用是否指向同一个对象实体

equals(): 方法

只能适用于引用数据类型
在object中定义的equals()方法与==的作用是一样的，在String类中对e]]></description><category></category></item><item><title><![CDATA[点对点协议PPP]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/106004169</link><guid>https://blog.youkuaiyun.com/klionl/article/details/106004169</guid><author>klionl</author><pubDate>Fri, 08 May 2020 19:09:10 +0800</pubDate><description><![CDATA[计算机网络数据链路层协议之点对点协议PPP数据链路层点对点协议PPPPPP协议的基本特征PPP协议的组成三要素PPP协议的帧格式
数据链路层协议之点对点协议PPP
数据链路层

数据链路层使用的信道主要有两种类型：
点对点信道：一对一通信方式
广播信道：一对多通信方式
数据链路层把网络层交下来的数据构成帧发送到链路上，以及把接收到的帧中的数据取出并上交给网络层。 数据链路层协议数据单元是数据帧（帧）。  网络层协议数据单元是IP数据报（数据报、分组、包）。
数据链路层的基本功能


封装成帧：
封装成帧就是]]></description><category></category></item><item><title><![CDATA[计算机网络的体系结构]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105997610</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105997610</guid><author>klionl</author><pubDate>Fri, 08 May 2020 15:31:02 +0800</pubDate><description><![CDATA[计算机网络计算机网络体系结构三种体系结构五层协议模型传输数据流程
计算机网络体系结构
计算机网络中的数据交换必须遵守事先约定好的规则。 这些规则明确规定了所交换的数据的格式以及有关的同步问题（同步含有时序的意思）。
网络协议：简称为协议，是为进行网络中的数据交换而建立的规则、标准或约定。
网络协议是计算机网络不可缺少的组成部分。任何网络通信，都必须要有协议。让网络上的一台计算机做任何工作，都必须要...]]></description><category></category></item><item><title><![CDATA[Mapreduce中自定义OutputFormat]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105772564</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105772564</guid><author>klionl</author><pubDate>Sun, 26 Apr 2020 16:59:53 +0800</pubDate><description><![CDATA[Hadoop学习Mapreduce中自定义OutputFormatOutputFormat接口实现类自定义OutputFormat
Mapreduce中自定义OutputFormat
OutputFormat接口实现类
OutputFormat是MapReduce输出的基类，所有实现MapReduce输出都实现了OutputFormat接口

文本输出TextOutputFormat

默认的输出...]]></description><category></category></item><item><title><![CDATA[Mapreduce中的Combiner合并]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105683112</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105683112</guid><author>klionl</author><pubDate>Wed, 22 Apr 2020 15:25:19 +0800</pubDate><description><![CDATA[Hadoop--入门Mapreduce中的Combiner合并Combiner合并Combiner合并案例
Mapreduce中的Combiner合并
Mapreduce中的mapper阶段将输入的数据转换成一个个键值对的形式&lt;key,value&gt;,再经过shuffle机制对数据进行整理，最后reducer阶段处理数据并输出结果。这是一个mr程序一般的处理流程。在这个过程中至少存在两处...]]></description><category></category></item><item><title><![CDATA[Mapreduce排序介绍]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105556899</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105556899</guid><author>klionl</author><pubDate>Thu, 16 Apr 2020 16:16:11 +0800</pubDate><description><![CDATA[Hadoop--入门Mapreduce排序介绍1. 排序概述2. 全排序案例3. 区内排序案例
Mapreduce排序介绍
1. 排序概述
排序是Mapreduce中重要的一步，MapTask和ReduceTask均会对数据按照key进行排序，该操作属于
Hadoop的默认行为。任何应用程序中的数据均会被排序，而不管逻辑上是否需要。
默认排序是按照字典顺序排序，且实现该排序的方法是快速排序。


...]]></description><category></category></item><item><title><![CDATA[Mapreduce的Partition分区介绍]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105537395</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105537395</guid><author>klionl</author><pubDate>Wed, 15 Apr 2020 16:05:33 +0800</pubDate><description><![CDATA[Hadoop--入门Mapreduce的Partition分区介绍1. Partition分区2. 自定义Partitioner步骤3. 自定义案例
Mapreduce的Partition分区介绍
1. Partition分区
在前面的Mapreduce流程中提到过在shuffle过程中有分区操作，分区决定着你开启的Reduce Task数量和最终的输出文件数量，在前面的案例中，我们能看到最终的输...]]></description><category></category></item><item><title><![CDATA[Mapreduce工作流程和Shuffle机制]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105513497</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105513497</guid><author>klionl</author><pubDate>Tue, 14 Apr 2020 17:47:48 +0800</pubDate><description><![CDATA[Hadoop--入门Mapreduce工作流程和Shuffle机制Mapreduce工作流程Shuffle机制
Mapreduce工作流程和Shuffle机制
Mapreduce工作流程
Mapreduce由Map阶段和Reduce阶段组成，在前面我们编写mapreduce程序时，比如WordCount案例等，需要实现map()函数和reduce()函数
Map阶段

Reduce阶段

Shuf...]]></description><category></category></item><item><title><![CDATA[FileInputFormat切片机制和实现类]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105490871</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105490871</guid><author>klionl</author><pubDate>Mon, 13 Apr 2020 16:35:25 +0800</pubDate><description><![CDATA[Hadoop--入门FileInputFormat切片机制和实现类FileInputFormat切片机制CombineTextInputFormat切片机制CombineTextInputFormat案例FileInputFormat实现类1. TextInputFormat2. KeyValueTextInputFormat3. NLinelnputFormat
FileInputFormat切...]]></description><category></category></item><item><title><![CDATA[Hadoop序列化]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105395340</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105395340</guid><author>klionl</author><pubDate>Wed, 08 Apr 2020 19:39:55 +0800</pubDate><description><![CDATA[Hadoop--入门Hadoop序列化1. 序列化概述2. 自定义序列化接口（Writable）3. 自定义序列化案例
Hadoop序列化
1. 序列化概述
序列化就是把内存中的对象，转换成字节序列(或其他数据传输协议)以便于存储到磁盘(持久化)和网络传输。
反序列化就是将收到字节序列(或其他数据传输协议)或者是磁盘的持久化数据，转换成内存中的对象。
为什么要序列化？
一般来说，“活的” 对象只生...]]></description><category></category></item><item><title><![CDATA[WordCount案例实操]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105386499</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105386499</guid><author>klionl</author><pubDate>Wed, 08 Apr 2020 14:03:01 +0800</pubDate><description><![CDATA[Hadoop--入门WordCount案例实操1.需求分析2.环境准备3.编写代码1.Mapper类2.Reducer类3.Driver驱动类4.本地测试5.集群测试
WordCount案例实操
1.需求分析
在给定的文本文件中统计输出每一个单词出现的总次数

2.环境准备

创建maven工程，在pom.xml文件中添加如下依赖

&lt;dependencies&gt;
		&lt;depen...]]></description><category></category></item><item><title><![CDATA[MapReduce介绍]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105373198</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105373198</guid><author>klionl</author><pubDate>Tue, 07 Apr 2020 21:10:49 +0800</pubDate><description><![CDATA[Hadoop--入门MapReduce介绍1.简介2.优缺点3.核心思想3.常用数据序列化类型4.编程规范
MapReduce介绍
1.简介
MapReduce是一个分布式运算程序的编程框架， 是用户开发”基于Hadoop的数据分析应用”的核心框架。
MapReduco核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序，并发运行在一个Hadoop集群上。
MapRedu...]]></description><category></category></item><item><title><![CDATA[DataNode工作机制]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105368471</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105368471</guid><author>klionl</author><pubDate>Tue, 07 Apr 2020 16:57:15 +0800</pubDate><description><![CDATA[Hadoop--入门DataNode工作机制1.DataNode工作机制2.掉线时限参数设置
DataNode工作机制
1.DataNode工作机制

1 一个数据块在DataNode上以文件形式存储在磁盘上，包括两个文件，一个是数据本身，一个是元数据包括数据块的长度，块数据的校验和，以及时间戳。
2 DataNode启动后向NameNode注册，通过后，周期性（1小时）的向NameNode上报所...]]></description><category></category></item><item><title><![CDATA[NameNode和SecondaryNameNode工作机制]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105365179</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105365179</guid><author>klionl</author><pubDate>Tue, 07 Apr 2020 15:10:20 +0800</pubDate><description><![CDATA[Hadoop--入门NameNode和SecondaryNameNode工作机制1.NN和2NN工作机制2.查看Fsimage文件3. 查看Edits文件
NameNode和SecondaryNameNode工作机制
NameNode中的元数据是存储在哪里的？
首先，我们做个假设，如果存储在NameNode节点的磁盘中，因为经常需要进行随机访问，还有响应客户请求，必然是效率过低。因此，元数据需要存...]]></description><category></category></item><item><title><![CDATA[HDFS读写数据流程]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105344592</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105344592</guid><author>klionl</author><pubDate>Mon, 06 Apr 2020 18:25:03 +0800</pubDate><description><![CDATA[Hadoop--入门HDFS读写数据流程1.机架感知--副本存储节点选择2.网络拓扑--节点距离计算3.写流程4.读流程
HDFS读写数据流程
1.机架感知–副本存储节点选择
关于机架感知官方文档
http://hadoop.apache.org/docs/r2.7.2/hadoop-project-dist/hadoop-common/RackAwareness.html
后文借鉴的官方文档
h...]]></description><category></category></item><item><title><![CDATA[HDFS的常用API介绍]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105313766</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105313766</guid><author>klionl</author><pubDate>Sat, 04 Apr 2020 18:00:45 +0800</pubDate><description><![CDATA[Hadoop--入门HDFS常用API1.常用API1.创建目录2.文件上传测试参数优先级3.文件下载4.文件夹删除5.文件更名6.文件详情查看6.判断文件和文件夹2.完整代码
HDFS常用API
创建一个Maven工程，导入相应的依赖坐标和日志添加，我这里hadoop的版本为2.7.2
&lt;dependencies&gt;
		&lt;dependency&gt;
			&lt;groupI...]]></description><category></category></item><item><title><![CDATA[HDFS概述及常用命令]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105291595</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105291595</guid><author>klionl</author><pubDate>Fri, 03 Apr 2020 17:02:34 +0800</pubDate><description><![CDATA[Hadoop--入门HDFS概述及常用命令一.HDFS概述1.背景2.定义二.HDFS优缺点1.优点2.缺点三.HDFS组成结构1.NameNode2.DataNode3.Client4.Secondary NameNode四.HDFS常用命令1.基本语法2.命令大全3.常用命令实操
HDFS概述及常用命令
一.HDFS概述
1.背景
随着数据量越来越大，在一个操作系统存不下所有的数据，那么就分配...]]></description><category></category></item><item><title><![CDATA[集群分发脚本xsync的编写与介绍]]></title><link>https://blog.youkuaiyun.com/klionl/article/details/105286981</link><guid>https://blog.youkuaiyun.com/klionl/article/details/105286981</guid><author>klionl</author><pubDate>Fri, 03 Apr 2020 11:31:29 +0800</pubDate><description><![CDATA[Hadoop--入门编写集群分发脚本xsync1.rcp命令2.scp命令3.rsync 远程同步工具4.xsync集群分发脚本1.创建文件2.编写代码3.修改脚本 xsync 具有执行权限4.调用脚本形式：xsync 文件名称
编写集群分发脚本xsync
在配置完全分布式的时候我们需要将主结点的配置文件分发到多台从结点上，使用xsync脚本就不用照着主节点一个个去改从结点的配置文件，比较省时省力...]]></description><category></category></item></channel></rss>