<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[WorkAsBryant的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/WorkAsBryant</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; WorkAsBryant]]></copyright><item><title><![CDATA[git管理远程仓库]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/103719695</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/103719695</guid><author>WorkAsBryant</author><pubDate>Thu, 26 Dec 2019 22:08:07 +0800</pubDate><description><![CDATA[使用远程仓库的目的

作用：备份，实现代码共享集中化管理

将本地仓库同步到git远程仓库中

主要用到了git push 命令，具体步骤如下所示：

首先需要将远程仓库git clone到本地，git clone 仓库地址
	对本地仓库进行操作，例如创建文件、修改文件、删除文件等（使用git操作本地仓库的命令）
	调用git push命令提交到远程仓库
...]]></description><category></category></item><item><title><![CDATA[大数据环境搭建]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/101872670</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/101872670</guid><author>WorkAsBryant</author><pubDate>Tue, 29 Oct 2019 23:15:26 +0800</pubDate><description><![CDATA[大数据环境搭建

1.集群无密登录

例如A机器的a用户想要无密登录到B机器的b用户，主要分成以下三个步骤：

在每台机器当前用户的主目录下执行命令 ssh-keygen -t rsa 此命令可生成一对密钥：id_rsa.pub（公钥）、id_rsa（私钥），这两个文件都在主目录下的.ssh文件夹里（如果没有配置密钥是不会有这个文件夹的），在每个主机的.ssh目录下执行命令 touch autho...]]></description><category></category></item><item><title><![CDATA[Kafka学习笔记（一）]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/95500852</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/95500852</guid><author>WorkAsBryant</author><pubDate>Sun, 14 Jul 2019 22:11:02 +0800</pubDate><description><![CDATA[Kafka学习笔记（一）

2019.07.11

1. Kafka消息队列内部实现原理



消费者可通过两种模式获取数据，一种是“pull”，主动拉取数据；一种是"push"，将数据推送给所有订阅者。

第一种方式的缺点是需要实时监控数据有没有更新。

为什么需要消息队列？

解耦；
	冗余；
	扩展（集群的扩展性）；
	灵活性&amp;峰值处理能力；
	可恢复性；
	顺序保证；
	缓冲...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（十六）——Kafka]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/95098984</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/95098984</guid><author>WorkAsBryant</author><pubDate>Tue, 09 Jul 2019 17:21:53 +0800</pubDate><description><![CDATA[Hadoop学习日记（十六）

2019.07.08、07.09

主题：Kafka

学习过程主要参考段海涛大数据p61

注：因项目需要，故提前学习视频中Kafka相关内容，Hadoop HA机制以及Hive、HBase、Storm后续再补充。

1. Kafka要点

1. Kafka是一个分布式的消息缓存系统；

2. Kafka集群中的服务器都叫做broker;

3. Kafka有两类...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（十五）——Hadoop HA机制]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/95090824</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/95090824</guid><author>WorkAsBryant</author><pubDate>Mon, 08 Jul 2019 21:01:11 +0800</pubDate><description><![CDATA[Hadoop学习日记（十五）

2019.07.08

主题：Hadoop HA机制

学习过程主要参考段海涛大数据p42

普通的Hadoop架构元数据的可靠性有保证，但是服务的可用性不高，一旦NN宕机，则服务不可用。

1. Hadoop中HA机制的架构



2. brain split现象



如何避免brain split现象？

通过ssh kill -9 namenode，强制杀掉...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（十四）——ZooKeeper]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/95085191</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/95085191</guid><author>WorkAsBryant</author><pubDate>Mon, 08 Jul 2019 19:37:02 +0800</pubDate><description><![CDATA[Hadoop学习日记（十四）

2019.07.08

主题：ZooKeeper

学习过程主要参考段海涛大数据p40

1.ZooKeeper架构



1. ZooKeeper集群一般是奇数个节点；

2. ZooKeeper多节点间会备份同样的数据；

2.应用场景

1. 统一命名服务

阿里的DUBBO框架就利用了ZooKeeper

2. 配置管理

3. 集群管理

4. 共享锁

...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（十三）——Shuffle机制]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/94576434</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/94576434</guid><author>WorkAsBryant</author><pubDate>Wed, 03 Jul 2019 23:02:48 +0800</pubDate><description><![CDATA[Hadoop学习日记（十三）

2019.07.03

主题：Shuffle机制

学习过程主要参考段海涛大数据p35

1. Map的并发任务数

Map任务与数据存储的数据中间有一层“切片(split)”的概念。


标题

对于小文件处理，可使得一个split对应多个实际的数据块；当文件较大被分成多个128M的块时，一个split可对应一个块。

2.shuffle机制



1.每个...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（十二）——MapReduce自定义分组的实现]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/94566636</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/94566636</guid><author>WorkAsBryant</author><pubDate>Wed, 03 Jul 2019 16:02:53 +0800</pubDate><description><![CDATA[Hadoop学习日记（十二）

2019.07.03

主题：MapReduce自定义分组的实现

学习过程主要参考段海涛大数据p34

1.自定义分组机制

MapReduce进行分组是根据一个继承Partitioner类的具体实现类来定义的，一般是默认有一个HashPartitioner类。如果要自定义自己的分组机制，自然就需要自定义一个自己的继承Partitioner类的具体实现类（例如My...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（十一）——Yarn的job提交流程]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/94411426</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/94411426</guid><author>WorkAsBryant</author><pubDate>Mon, 01 Jul 2019 22:21:18 +0800</pubDate><description><![CDATA[Hadoop学习日记（十一）

2019.07.01

主题：Yarn的job提交流程

学习过程主要参考段海涛大数据p29

这段视频是对提交流程的源码进行了跟踪（主要是关于RunJar进程），整个流程如下图所示。


...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（十）——MR程序的几种提交运行模式]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/94410497</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/94410497</guid><author>WorkAsBryant</author><pubDate>Mon, 01 Jul 2019 22:13:09 +0800</pubDate><description><![CDATA[Hadoop学习日记（十）

2019.07.01

主题：MR程序的几种提交运行模式

学习过程主要参考段海涛大数据p27

除了提交到集群以及在本地运行(数据在本地或者集群)这两种模式之外，着重讨论了从eclipse也就是本地启动，但是运行在集群上的提交方式。

视频里关于这段有损，无法观看，后续解决再补充。
...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（九）——Yarn框架]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/94407076</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/94407076</guid><author>WorkAsBryant</author><pubDate>Mon, 01 Jul 2019 21:12:46 +0800</pubDate><description><![CDATA[Hadoop学习日记（九）

2019.07.01

主题：Yarn框架

学习过程主要参考段海涛大数据p26

yarn框架工作流程1. RunJar进程向ResourceManager申请执行一个job；

2. ResourceManager返回job相关资源的提交路径staging-dir和为本job产生的jobId；

3. 向HDFS提交资源；

4. 汇报提交结果；

5. 将本jo...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（八）——mr程序的本地运行模式]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88344112</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88344112</guid><author>WorkAsBryant</author><pubDate>Mon, 01 Jul 2019 19:43:23 +0800</pubDate><description><![CDATA[Hadoop学习日记（八）

2019.03.08

主题：MapReduce程序的本地运行模式

学习过程主要参考段海涛Hadoop之p25

相比日记（七），本地（Windows系统）运行只需将代码中的输入输出文件路径修改为Windows本地路径即可。（需要注意的是也可以程序在本地运行，但是数据从hdfs中取）

在这部分的实践中，遇到了一些问题，下面重点讲这些内容。

问题一、cannot ...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（七）——wordcount编写和提交集群运行]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88342913</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88342913</guid><author>WorkAsBryant</author><pubDate>Fri, 08 Mar 2019 11:29:07 +0800</pubDate><description><![CDATA[Hadoop学习日记（七）

2019.03.08

主题：wordcount编写和提交集群运行

这部分内容的学习主要参考段海涛Hadoop之p24

这部分的学习主要是编写了WCMapper、WCReducer、WCRunner三个类，以及最终打包成jar包提交集群运行。

一、关键点汇总

1. 在wordcount实例里，WCReducer中Reduce()方法数据输入的value其实是一...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（六）——hdfs源码跟踪之打开输入流]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88095430</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88095430</guid><author>WorkAsBryant</author><pubDate>Sun, 03 Mar 2019 22:58:36 +0800</pubDate><description><![CDATA[Hadoop学习日记（六）

2019.03.03

主题：hdfs源码跟踪之打开输入流

这部分内容的学习主要参考段海涛Hadoop基础p21.

对于如下的代码（功能是从hdfs集群上下载某个文件）：


Configuration conf=new Configuration();
conf.set("fs.defaultFS","hdfs://master:9000/");

FileSy...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（五）]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88095167</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88095167</guid><author>WorkAsBryant</author><pubDate>Sun, 03 Mar 2019 22:21:16 +0800</pubDate><description><![CDATA[Hadoop学习日记（五）

2019.03.03

主题：getFileSystem内部流程

这部分内容的学习主要参考段海涛Hadoop基础p19、段海涛Hadoop基础p20.

具体设计流程设计多个类，而且方法的调用栈也较深。

待后续补充完善。
...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（四）]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88082401</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88082401</guid><author>WorkAsBryant</author><pubDate>Sat, 02 Mar 2019 22:10:59 +0800</pubDate><description><![CDATA[Hadoop学习日记（四）

2019.03.02

主题：Hadoop中的RPC框架

注：参考段海涛大数据p16

Hadoop的RPC框架如下图所示：


]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（三）]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88070127</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88070127</guid><author>WorkAsBryant</author><pubDate>Fri, 01 Mar 2019 22:31:35 +0800</pubDate><description><![CDATA[Hadoop学习日记（三）

2018.03.01

主题：FileSystem类相关以及hdfs下载数据源码分析

FileSystem是一个抽象类，具体实现时可以实现为不同的子类，例如DistributedFileSystem、FTPFileSystem、RawLocalFileSystem类等等。如图



这样做的好处是将具体实现交给下层。

在笔记二里的代码


FileSystem ...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（二）]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88051855</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/88051855</guid><author>WorkAsBryant</author><pubDate>Fri, 01 Mar 2019 22:19:51 +0800</pubDate><description><![CDATA[Hadoop学习日记（二）

2019.03.01

主题：HDFS的JAVA客户端编写

首先上代码（截取上传文件的代码为例）：


    @Test
	public void upload() throws IOException {
		Configuration conf=new Configuration();
		//conf.set(&quot;fs.defaultFS&quot;, &quot;hdfs://...]]></description><category></category></item><item><title><![CDATA[Hadoop学习日记（一）]]></title><link>https://blog.youkuaiyun.com/WorkAsBryant/article/details/87992840</link><guid>https://blog.youkuaiyun.com/WorkAsBryant/article/details/87992840</guid><author>WorkAsBryant</author><pubDate>Thu, 28 Feb 2019 11:55:45 +0800</pubDate><description><![CDATA[Hadoop学习日记（一）

2019.02.27

主题:NameNode元数据管理机制

注：主要参考视频教程段海涛大数据（p11）

1.客户端上传文件时，NN首先往edits log文件中记录元数据操作日志；

2.客户端开始上传文件，完成后返回成功信息给NN，NN就在内存中写入这次上传操作的新产生的元数据信息；

3.每当edits log写满时，需要将这一段时间的新的元数据刷到fsim...]]></description><category></category></item></channel></rss>