摘要: Jenkins插件管理篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.部署Jenkins并查看插件安装目录 1>.部署Jenkins 博主推荐阅读: https://www.cnblogs.com/yinzhengjie2020/p/12549297.html 2>.查看J 阅读全文
posted @ 2020-03-23 00:24 JasonYin2020 阅读(630) 评论(0) 推荐(0) 编辑
摘要: Jenkins部署实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.Jenkins概述 Jenkins是开源CI&CD软件领导者, 提供超过1000个插件来支持构建、部署、自动化, 满足任何项目的需要。 Jenkins有以下特点: 持续集成和持续交付 作为一个可扩展的自 阅读全文
posted @ 2020-03-22 23:18 JasonYin2020 阅读(847) 评论(0) 推荐(0) 编辑
摘要: Golang常见的字符串函数操作实战篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.判断子串 package main import ( "fmt" "strings" ) func main() { s1 := "尹正杰2020" s2 := "2020" /** Con 阅读全文
posted @ 2020-03-22 21:17 JasonYin2020 阅读(892) 评论(0) 推荐(0) 编辑
摘要: Golang的文本文件处理-目录操作常见的API 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 上一篇笔记我分享了文件相关的API操作,我们知道读写的文件一般存放于目录中。因此,有时需要指定到某一个目录下,根据目录存储的状况在进行文件的特定操作,接下来我们就看看目录的基本操作方法 阅读全文
posted @ 2020-03-22 01:53 JasonYin2020 阅读(536) 评论(0) 推荐(0) 编辑
摘要: Golang的文本文件处理-文件操作常见的API 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.打开文件相关操作 1>.如果文件不存在就创建文件,如果文件存在就清空文件内容并打开(Create方法) package main import ( "errors" "fmt" " 阅读全文
posted @ 2020-03-21 23:47 JasonYin2020 阅读(1997) 评论(0) 推荐(0) 编辑
摘要: Golang的面向接口编程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 之前我们分享了Go语言中的面向对象的封装和继承相关知识,今天我们来了解一下Go语言如何实现多态。 一.接口概述 Go语言的接口类型用于定义一组行为,其中每个行为都由一个方法声明表示。 接口类型中的方法声明只 阅读全文
posted @ 2020-03-21 21:36 JasonYin2020 阅读(2235) 评论(0) 推荐(0) 编辑
摘要: Golang的面向对象编程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 Go语言的面向对象之所以与C++,Java以及(较小程度上的)Python这些语言不同,是因为它不支持继承,仅支持聚合(也叫组合)和嵌入。接下来我们一起来学习一下Go语言的面向对象编程吧。 一.面向对象编程 阅读全文
posted @ 2020-03-21 07:39 JasonYin2020 阅读(473) 评论(0) 推荐(0) 编辑
摘要: Shuffle原理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.Shuffle原理 (1)map方法在将数据(K,V,P)写入到环形缓冲区之前就已经获取到分区编号了,只不过此时数据没有落地(溢写到磁盘); (2)当环形缓冲区数据快满时会发生数据溢写到磁盘,在溢写到磁盘之前会 阅读全文
posted @ 2020-03-20 23:06 JasonYin2020 阅读(831) 评论(0) 推荐(0) 编辑
摘要: GroupingComparator分组(辅助排序/组内排序) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 如果我们不希望按照默认的key的比较进行分组时,此时就得启用GroupingComparator分组。 一.GroupingComparator分组概述 对Reduce阶 阅读全文
posted @ 2020-03-20 21:57 JasonYin2020 阅读(508) 评论(1) 推荐(0) 编辑
摘要: 合并(Combiner) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.Combiner概述 Combiner是Mapper和Reducer之外的一种可选组件; Combiner组件的父类就是Reducer; Combiner和Reducer的区别在于运行的位置,Combin 阅读全文
posted @ 2020-03-20 00:28 JasonYin2020 阅读(516) 评论(0) 推荐(0) 编辑
摘要: 排序(WritableComparable) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.排序概述 排序是MapReduce框架中最重要的操作之一。 MapTask和ReduceTask均会对数据按照key进行排序。该操作属于Hadoop默认行为。任何应用程序中的数据均会被 阅读全文
posted @ 2020-03-19 23:53 JasonYin2020 阅读(702) 评论(0) 推荐(0) 编辑
摘要: 分区(Partitioner) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 分区可以决定MapTask的处理的数据每一组<K,V>去往哪个ReduceTask。默认是HashPartition哟~ 一.查看默认的Partition 1>.测试代码 package cn.org. 阅读全文
posted @ 2020-03-19 21:42 JasonYin2020 阅读(596) 评论(0) 推荐(0) 编辑
摘要: MapReduce全流程 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.MapReduce全流程概述 假设有一个文件有2G的文件需要处理,且文件的块大小默认是128MB,接下来我们对MapReduce基于YARN的全流程进行分析.其大致流程如下: 1>.客户端在submit( 阅读全文
posted @ 2020-03-19 00:32 JasonYin2020 阅读(376) 评论(0) 推荐(0) 编辑
摘要: 自定义InputFormat代码实现 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.MapReduce并行度决定机制 在说MapTask并行度决定之前,我们要先明确以下几个概念: 1>.MapTask的并行度决定Map节点的任务处理并发度,进而影响到整个Job的处理速度; 2 阅读全文
posted @ 2020-03-18 23:30 JasonYin2020 阅读(913) 评论(1) 推荐(1) 编辑
摘要: Hadoop数据序列化 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.数据序列化概述 1>.什么是数据序列化 Q1:什么数据序列化? 是将内存对象转换为字节流的过程,它直接决定了数据解析效率以及模式演化能力(数据格式发生变化时,比如增加或删除字段,是否仍能够保持兼容性)。 话 阅读全文
posted @ 2020-03-18 21:36 JasonYin2020 阅读(507) 评论(0) 推荐(0) 编辑
摘要: 第一个MapReduce程序 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.使用Java代码实现一个MapReduce实战案例 1>.自定义Mapper package cn.org.yinzhengjie.mapreduce; import org.apache.hadoo 阅读全文
posted @ 2020-03-18 12:16 JasonYin2020 阅读(259) 评论(0) 推荐(0) 编辑
摘要: Hadoop MapReduce概述 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.Hadoop MapReduce的设计目标 1>.什么是Hadoop MapReduce Hadoop MapReduce是一个分布式运算程序的编程框架,是用户开发"基于Hadoop的数据分析 阅读全文
posted @ 2020-03-17 23:34 JasonYin2020 阅读(683) 评论(0) 推荐(0) 编辑
摘要: Apache Hadoop集群缩容实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.黑名单退役 1>.在所有节点未退役之前,查看NameNode的WebUI 2>.编写黑名单的配置文件 [root@hadoop101.yinzhengjie.org.cn ~]# ech 阅读全文
posted @ 2020-03-17 21:22 JasonYin2020 阅读(291) 评论(0) 推荐(0) 编辑
摘要: Apache Hadoop HDFS高可用部署实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.Hadoop HA准备环境 1>.实验环境说明 本篇博客采用6台Linux发行版本为"CentOS Linux release 7.6.1810 (Core)"操作系统部署H 阅读全文
posted @ 2020-03-17 00:17 JasonYin2020 阅读(496) 评论(0) 推荐(0) 编辑
摘要: Apache Hadoop HDFS HA原理刨析 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.HDFS High Available概述 在Hadoop2.0之前,在HDFS集群中NameNode存在单点故障(SPOF)。所谓HA(全称High Available),即高 阅读全文
posted @ 2020-03-16 23:10 JasonYin2020 阅读(470) 评论(0) 推荐(0) 编辑
摘要: zookeeper客户端命令行操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.zookeeper的命令行基础操作 1>.连接到zookeeper服务器 [root@hadoop101.yinzhengjie.org.cn ~]# zkCli.sh /yinzhengjie 阅读全文
posted @ 2020-03-16 00:08 JasonYin2020 阅读(783) 评论(0) 推荐(0) 编辑
摘要: 生产环境中zookeeper分布式集群部署实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.zookeeper概述 1>.访问zookeeper的官网 官方地址: https://zookeeper.apache.org/ 2>.选择zookeeper的版本进行下载 二 阅读全文
posted @ 2020-03-15 23:12 JasonYin2020 阅读(502) 评论(0) 推荐(0) 编辑
摘要: zookeeper概述 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.zookeeper概述 1>.什么是zookeeper zookeeper是一个开源的分布式的,为分布式应用提供微服务的Apache项目,它是由之前雅虎公司开源的。 zookeeper从设计模式角度来理解: 阅读全文
posted @ 2020-03-15 06:44 JasonYin2020 阅读(289) 评论(0) 推荐(0) 编辑
摘要: web环境准备 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.配置Java环境 1>.下载JDK 博主推荐阅读: https://www.cnblogs.com/yinzhengjie/p/12199413.html 2>.解压JDK并创建相关符号链接 [root@tomca 阅读全文
posted @ 2020-03-15 01:17 JasonYin2020 阅读(179) 评论(0) 推荐(0) 编辑
摘要: GitLab的基础使用-常见的代码部署方式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.蓝绿部署 1>.什么是蓝绿部署 蓝绿部署指的是不停老版本代码(不影响上一个版本访问),而是在另外一套环境部署新版本然后进行测试,测试通过后将用户流量切到新版本。 优点: 业务无终端,升级 阅读全文
posted @ 2020-03-14 21:47 JasonYin2020 阅读(894) 评论(0) 推荐(0) 编辑
摘要: GitLab的基础使用-汉化配置 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.使用GitLab默认的中文支持 1>.如下图所示,登录成功后点击用户头像,选择"Settings" 2>.如下图所示,点击"Preferences" 3>.如下图所示,点击下拉菜单后,选择"简体中 阅读全文
posted @ 2020-03-14 06:32 JasonYin2020 阅读(4424) 评论(2) 推荐(1) 编辑
摘要: GitLab的基础使用-数据备份与恢复 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.GitLab的数据备份 1>.查看GitLab默认存储数据的目录 [root@gitlab201.yinzhengjie.org.cn ~]# ll /var/opt/gitlab/git- 阅读全文
posted @ 2020-03-13 23:27 JasonYin2020 阅读(387) 评论(0) 推荐(0) 编辑
摘要: Apache Hadoop集群扩容实战案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.搭建完全分布式集群 博主推荐阅读: https://www.cnblogs.com/yinzhengjie2020/p/12424192.html 二.为新节点安装Hadoop运行环境 阅读全文
posted @ 2020-03-13 21:39 JasonYin2020 阅读(287) 评论(0) 推荐(0) 编辑
摘要: HDFS参数调优总结 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.DataNode参数调优 1>.dfs.blockreport.incremental.intervalMsec 如上图所示,官方的默认值是0,意思是当datanode新写一个块时,会立即汇报给namenod 阅读全文
posted @ 2020-03-12 23:34 JasonYin2020 阅读(2001) 评论(0) 推荐(0) 编辑
摘要: NameNode和DataNode工作原理剖析 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.DataNode的工作原理 1>.查看数据节点存储数据的目录 系统中的数据块的位置并不是由NameNode维护的,而是以块列表的形式存储在DataNode中。在系统的正常操作期间,N 阅读全文
posted @ 2020-03-12 21:24 JasonYin2020 阅读(681) 评论(0) 推荐(0) 编辑
摘要: NameNode和SecondaryNameNode工作原理剖析 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.HDFS启动流程 1>.启动HDFS集群 关于集群的部署我这里就不罗嗦了,小白同学可以参考我之前的笔记。 启动HDFS集群,如下图所示,启动HDFS集群后,会自动生 阅读全文
posted @ 2020-03-12 01:02 JasonYin2020 阅读(546) 评论(0) 推荐(0) 编辑
摘要: HDFS的机架感知概述 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.网络拓扑结构 在本地网络中,两个节点被称为“彼此近邻”是什么意思?在海量数据处理中,其主要限制因素是节点之间数据的传输速率,即带宽稀缺。这里的想法是将两个节点之间的带宽作为距离的衡量标准。不用衡量节点之间的 阅读全文
posted @ 2020-03-11 23:55 JasonYin2020 阅读(824) 评论(0) 推荐(0) 编辑
摘要: HDFS的数据流之增删改查概述 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.HDFS上传(写入/增)流程 如上图所示,HDFS在做写入文件时流程大概如下所示: 1>.客户端通过Distributed FileSystem模块向NameNode请求上传文件,NameNode需 阅读全文
posted @ 2020-03-11 21:11 JasonYin2020 阅读(1189) 评论(0) 推荐(0) 编辑
摘要: HDFS的I/O流操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 上一篇笔记分享了Hdfs已经封装好的API,其实我们还可以采用IO流的方式实现数据的上传和下载。 一.利用IO流实现文件的上传 1>.查看NameNode的WebUI 2>.JAVA代码 package cn. 阅读全文
posted @ 2020-03-11 06:53 JasonYin2020 阅读(296) 评论(0) 推荐(0) 编辑
摘要: HDFS集群的API常见操作 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.环境配置 1>.自行配置Hadoop和Java环境 此步骤相对简单,略过。 2>.配置maven环境 <?xml version="1.0" encoding="UTF-8"?> <project x 阅读全文
posted @ 2020-03-11 00:19 JasonYin2020 阅读(621) 评论(0) 推荐(0) 编辑
摘要: HDFS集群中大数据运维常用的命令概述 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.HDFS集群常用命令 1>.查看hdfs集群某路径下的文件或目录 [root@hadoop101.yinzhengjie.org.cn ~]# hdfs dfs -ls / Found 4 阅读全文
posted @ 2020-03-10 23:12 JasonYin2020 阅读(1097) 评论(0) 推荐(0) 编辑
摘要: GitLab的基础使用-常用命令 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 git命令的基本使用参考我之前的笔记:https://www.cnblogs.com/yinzhengjie/p/9545646.html。 一.gitlab-backup 该命令用于数据备份恢复等操 阅读全文
posted @ 2020-03-09 21:41 JasonYin2020 阅读(1022) 评论(0) 推荐(0) 编辑
摘要: GitLab的基础使用-客户端克隆(Clone)代码的两种方式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.准备环境 博主推荐阅读: https://www.cnblogs.com/yinzhengjie2020/p/12446201.html 二.基于HTTP协议进行克隆 阅读全文
posted @ 2020-03-09 01:15 JasonYin2020 阅读(14234) 评论(0) 推荐(0) 编辑
摘要: GitLab的基础使用-创建项目(projects) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.准备环境 1>.创建项目组(groups) 博主推荐阅读: https://www.cnblogs.com/yinzhengjie2020/p/12439472.html 2> 阅读全文
posted @ 2020-03-09 01:00 JasonYin2020 阅读(5802) 评论(0) 推荐(0) 编辑
摘要: GitLab的基础使用-向已经创建的项目组中添加用户 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任。 一.创建项目组 博主推荐阅读: https://www.cnblogs.com/yinzhengjie2020/p/12439472.html 二.创建用户 博主推荐阅读: htt 阅读全文
posted @ 2020-03-08 22:07 JasonYin2020 阅读(4683) 评论(0) 推荐(0) 编辑