自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 资源 (1)
  • 收藏
  • 关注

原创 Java新建对象属性过多

背景:有时候根据业务需要,一个对象中有多个属性(参数),一般这个时候可以采用构造方法在新建对象的时候将所有属性进行赋值,或者在新建对象后通过set方法将属性一个一个赋值。但无论采用哪种方式,都会导致代码看上去不美观,不便于维护。最近正好在手动造一些轮子,于是就学习总结了一个通用的build类,用于新建拥有多个属性的对象。一、直接上代码,复制即用。import java.util.ArrayList;import java.util.List;import java.util.function.C.

2021-01-25 21:54:47 1102 1

原创 shell脚本学习

文章目录一、注释二、变量(一)变量类型:(二)变量的常用操作:(三)字符串变量的操作:(四)数组的操作:三、参数传递四、运算符(一)算数运算符:(二)数字关系运算符:(三)字符串运算符:(四)布尔运算符:(五)逻辑运算符:(六)文件运算符:五、执行相关(一)算数运算:(二)逻辑判断:六、输出命令七、流程控制八、函数九、退出脚本一、注释单行注释:#多行注释: :<<EOF … EOF 或 :<<! … ! (注意,:<< 标识多行注释开始,并指定一个标识符作为开始结

2020-07-06 22:55:40 201

原创 Navicat远程连接MySQL

一、开启远程连接服务器端开启MySQL远程连接:MySQL开启远程连接二、配置连接信息新建MySQL连接:输入常规配置信息:输入SSH配置信息:测试连接:...

2020-03-16 15:00:46 250

原创 CentOs7安装mysql5.7

一、安装MySQL下载MySQL官方Yum源:wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm使用Yum安装:yum -y install mysql57-community-release-el7-10.noarch.rpm安装MySQL服务,由于CentOs7...

2020-03-16 14:56:42 103

原创 【Hadoop学习】_28Haoop企业优化

文章目录一、MapReduce跑得慢的原因二、MapReduce优化方法(一)数据输入(二)Map阶段(三)Reduce阶段(四)I/O阶段(五)数据倾斜问题**(六)常用的调优参数**三、HDFS小文件优化方法一、MapReduce跑得慢的原因MapReduce程序效率的瓶颈在于两点:计算机性能CPU、内存、磁盘健康、网络。I/O操作优化(1)数据倾斜(2)Map和Redu...

2020-02-14 16:10:52 83

原创 【Hadoop学习之Yarn】_27Yarn资源调度器

文章目录一、Yarn基本架构二、Yarn工作机制三、job提交全过程四、资源调度器五、任务的推测执行Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作平台,而MapReduce等运算程序则相当于运行于操作系统之上的应用程序。一、Yarn基本架构Yarn主要由ResourceManager、NodeManager、ApplicationMaster、Con...

2020-02-14 15:31:23 127

原创 【Hadoop学习之MapReduce】_26MR之数据压缩

文章目录一、概述二、MR支持的压缩编码三、压缩方式选择(一)Gzip压缩(二)Bzip2压缩(三)Lzo压缩(四)Snappy压缩四、压缩位置选择五、压缩参数配置六、压缩案例实操(一)数据流的压缩和解压缩(二)Map输出端采用压缩(三)Reduce输出端采用压缩一、概述​ 压缩技术能够有效减少底层存储系统(HDFS)读写字节数。压缩提高了网络带宽和磁盘空间的效率。在运行MR程序时,I/O操作...

2020-02-13 14:47:07 335

原创 【Hadoop学习之MapReduce】_25MR之数据清洗案例(ETL)

数据清洗(ETL):提取-转换-装载(Extract-Transform-Load)在运行核心业务MapReduce程序之前,往往要先对数据进行清洗,清理掉不符合用户要求的数据。清理的过程往往只需要运行Mapper程序,不需要运行Reduce程序。一、数据清洗案例实操——简单案例需求去除网站日志中字段长度小于等于11的日志信息。输入数据58.177.135.108 - - ...

2020-02-12 12:24:59 799

原创 【Hadoop学习之MapReduce】_24MR之计数器应用

Hadoop为每个作业维护若干内置计数器,以描述多项指标。例如,某些计数器记录已处理的字节数和记录数,使用户可监控已处理的输入数据量和已产生的输出数据量。一、计数器API采用枚举的方式统计计数enum MyCounter{MALFORORMED,NORMAL}//对枚举定义的自定义计数器加1context.getCounter(MyCounter.MALFORORMED).inc...

2020-02-12 12:23:34 109

原创 【Hadoop学习之MapReduce】_23MR之join的应用

文章目录一、Reduce join的应用(一)join的主要工作(二)Reduce join案例实操(三)总结二、Map join的应用(一)Map join详解(二)Map join案例实操一、Reduce join的应用(一)join的主要工作Map端的主要工作:为来自不同表或文件的key/value对,打标签以区别不同来源的记录。然后用连接字段作为key,其余部分和新加的标志作为va...

2020-02-12 11:18:19 127 1

原创 【Hadoop学习之MapReduce】_22MR之OutputFormat数据输出

一、OutputFormat接口实现类OutputFormat是MapReduce输出的基类,所有实现MapReduce输出都实现了OutputFormat接口。文本输出TextOutputFormat默认的输出格式是TextOutputFormat,它把每条记录写为文本行。它的键和值可以是任意类型,因为TextOutputFormat调用toString()方法把它们转换为字符串。...

2020-02-11 14:12:53 100

原创 【Hadoop学习之MapReduce】_21MR之MapTask和ReduceTask工作机制

MapTask和ReduceTask工作机制合起来即为MapReduce工作机制一、MapTask工作机制Read阶段:MapTask通过用户编写的RecordReader,从输入InputSplit中解析出一个个key/value;Map阶段:该节点主要是将解析出的key/value交给用户编写map()函数处理,并产生一系列新的key/value;Collect收集阶...

2020-02-11 11:41:39 170

原创 【Hadoop学习之MapReduce】_20MR之分区和排序

一、Shuffle机制Map方法之后,Reduce方法之前的数据处理过程称之为Shuffle(多称为洗牌)二、Partition分区(一)Partition分区详解默认Partition分区为HashPartitionerpublic class HashPartitioner<K, V> extends Partitioner<K, V> { pub...

2020-02-10 17:48:24 247

原创 【Hadoop学习之MapReduce】_19MR工作流程

流程详解:上面的流程是整个MapReduce最全工作流程,但是Shuffle过程只是从第7步开始到第16步结束,具体Shuffle过程详解,如下:1)MapTask收集我们的map()方法输出的kv对,放到内存缓冲区中2)从内存缓冲区不断溢出本地磁盘文件,可能会溢出多个文件3)多个溢出文件会被合并成大的溢出文件4)在溢出过程及合并的过程中,都要调用Partitioner进行分区和...

2020-02-09 16:14:41 178

原创 【Hadoop学习之MapReduce】_18MR之InputFormat数据输入

文章目录一、切片与MapTask并行度决定机制二、Job提交流程源码三、FileInputFormat切片机制(一)FileInputFormat切片机制(二)FileInputFormat切片源码解析(input.getSplits(job))(三)案例分析(四)FileInputFormat切片大小的参数配置四、CombineTextInputFormat切片机制五、CombineTextIn...

2020-02-09 15:10:18 1601

原创 【Hadoop学习之MapReduce】_17Hadoop序列化

文章目录一、序列化概述(一)什么是序列化(二)为什么要序列化(三)为什么不用Java的序列化(四)Hadoop序列化特点二、自定义bean对象实现序列化接口(Writable)三、序列化案例实操(一)序列化案例分析(二)编写程序(三)运行程序一、序列化概述(一)什么是序列化​ 序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储到磁盘(持久化)和网络传输。​ 反序列...

2020-02-07 16:13:16 243

原创 【Hadoop学习之MapReduce】_16MR之WordCount案例实操

文章目录一、需求分析二、环境准备三、编写程序四、本地测试五、集群测试一、需求分析需求在给定的文本文件中统计输出每一个单词出现的总次数按照MapReduce编程规范,编写Mapper(1)将MapTask传给我们的文本内容先转换成String(2)根据空格将这一行切分成单词(3)将单词输出为<k,v>格式按照MapReduce编程规范,编写Reducer(1...

2020-02-07 12:41:30 343

原创 【Hadoop学习之MapReduce】_15MR常用数据序列化类型和编程规范

一、MapReduce常用数据序列化类型Java类型Hadoop Writable类型booleanBooleanWritablebyteByteWritableintIntWritablefloatFloatWritablelongLongWritabledoubleDoubleWritableStringTextma...

2020-02-06 16:16:37 310

原创 【Hadoop学习之MapReduce】_14MR的核心思想

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

2020-02-06 15:00:56 201

原创 【Hadoop学习之MapReduce】_13MR的优缺点

一、MapReduce的核心功能MapReduce是一个分布式运算程序的编程框架,是用户开发“基于Hadoop的数据分析应用”的核心框架。MapReduce的核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。二、MapReduce的优点易于编程它简单的实现一些接口,就可以完成一个分布式程序,这个分布式程序可以分布到大...

2020-02-06 12:57:00 515

原创 【Hadoop学习之HDFS】_12HDFS之DataNode

文章目录一、DataNode工作机制二、数据完整性三、掉线时限参数设置四、服役新数据节点五、退役旧数据节点(一)设置退役白名单(二)设置退役黑名单六、DataNode多目录配置(同NameNode配置)一、DataNode工作机制一个数据块在DataNode上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳DataNode启动...

2020-02-04 15:44:01 116

原创 【Hadoop学习之HDFS】_11HDFS之NN和2NN

文章目录一、NN与2NN的工作机制二、FsImage和Edits解析三、CheckPoint时间设置四、NameNode故障处理五、集群安全模式六、NameNode多目录配置一、NN与2NN的工作机制Fsimage:NameNode内存中元数据序列化后形成的文件。Edits:记录客户端更新元数据信息的每一步操作(可通过Edits运算出元数据)。NameNode启动时,先滚动Edits并生...

2020-02-04 12:20:23 378

原创 【Hadoop学习之HDFS】_10HDFS的数据流

一、HDFS写数据流程1. 文件写入流程客户端通过Distributed FileSystem模块向NameNode请求上传文件,NameNode检查目标文件是否已存在,父目录是否存在;NameNode返回是否可以上传;客户端请求第一个 Block上传到哪几个DataNode服务器上;NameNode返回3个DataNode节点,分别为dn1、dn2、dn3;;客户端通过FSDat...

2020-02-03 12:03:47 125

原创 【Hadoop学习之HDFS】_09HDFS的I/O流操作

文章目录一、HDFS文件上传二、HDFS文件下载三、HDFS定位文件读取一、HDFS文件上传 @Test public void putFileToHDFS() throws IOException, InterruptedException, URISyntaxException { // 1 获取文件系统 Configuration conf = ...

2020-02-02 16:17:20 119

原创 【Hadoop学习之HDFS】_08HDFS的API操作

文章目录一、HDFS文件上传1. 编写源代码,在`HdfsClient`类中添加方法2. 将`hdfs-site.xml`拷贝到项目的根目录下,验证参数的优先级3. 参数优先级二、HDFS文件下载三、HDFS文件夹删除四、HDFS文件名更改五、HDFS文件详情查看六、HDFS文件和文件夹判断一、HDFS文件上传1. 编写源代码,在HdfsClient类中添加方法 @Test p...

2020-02-02 15:10:08 82

原创 【Hadoop学习之HDFS】_07HDFS客户端环境准备

文章目录一、下载Hadoop jar包至非中文路径二、配置Hadoop环境变量三、创建一个Maven工程一、下载Hadoop jar包至非中文路径下载链接:https://hadoop.apache.org/releases.html解压至非中文路径二、配置Hadoop环境变量配置HADOOP_HOME环境变量配置Path环境变量三、创建一个Maven工程...

2020-02-02 11:35:55 266 2

原创 【Hadoop学习之HDFS】_06HDFS的shell操作

一、基本语法bin/hadoop fs 具体命令#或者bin/hdfs dfs 具体命令注意:其中dfs是fs的实现类二、命令大全[hadoop@SZMaster01 hadoop-2.8.3]$ bin/hadoop fsUsage: hadoop fs [generic options] [-appendToFile <localsrc> ... &...

2020-02-01 15:52:26 144 1

原创 【Hadoop学习之HDFS】_05HDFS文件块大小

一、HDFS文件块大小HDFS中的文件在物理上是分块(Block)存储的,块的大小可以通过配置参数(dfs.blocksize)来规定,默认大小在Hadoop2.x版本中为128M,老版本中是64M寻址时间为传输时间的1%时,为最佳状态二、为什么块大小不能设置太小,也不能设置太大?若HDFS的块设置太小,会增加寻址时间,程序一直在找块的开始位置;若HDFS的块设置太大,从磁盘传输数...

2020-02-01 12:31:09 194

原创 【Hadoop学习之HDFS】_04HDFS的优缺点

一、HDFS的优点高容错性数据自动保存多个副本,它通过增加副本的形式,提高容错性;某一个副本丢失以后,它可以自动回复,始终保持副本的数量。适合处理大数据数据规模:能够处理数据规模达到GB、TB、甚至PB级别的数据;文件规模:能够处理百万规模以上的文件数量,数量相当之大。可构建在廉价机器上,通过多副本机制,提高可靠性二、HDFS的缺点不适合低延时数据访问,比如毫...

2020-02-01 11:35:54 90

原创 【Hadoop学习】Hadoop集群分发脚本

一、scp(secure copy)安全拷贝scp定义:scp可以实现服务器与服务器之间的数据拷贝。基本语法:scp -r $pdir/$fname $user@hadoop$host:$pdir/$fname命令 递归 要拷贝的文件路径/名称 目的用户@主机:目的路径/名称二、rsync远程同步工具rsync主要用于备份和镜像。具有速度快、...

2020-01-31 14:25:27 116

原创 【Hadoop学习】_03Hadoop运行模式

一、本地运行模式​ 参考:http://dblab.xmu.edu.cn/blog/install-hadoop/二、伪分布运行模式​ 参考:http://dblab.xmu.edu.cn/blog/install-hadoop/三、完全分布式运行模式准备3台客户机(关闭防火墙、设置静态IP、设置主机名称)安装JDK并配置环境变量安装Hadoop并配置环境变量配置集...

2020-01-31 14:22:30 76

原创 【Hadoop学习】_02Hadoop运行环境搭建

一、虚拟机环境准备新建虚拟机修改虚拟机的静态IPVmware虚拟机下三种网络模式配置:https://blog.csdn.net/collection4u/article/details/14127671配置静态IP:https://www.codercto.com/a/52805.html修改主机名:https://blog.csdn.net/musicenchante...

2020-01-31 14:04:36 56

原创 【Hadoop学习】_01Hadoop的组成

一、Hadoop主要组件HDFS是Hadoop分布式文件系统,主要用于数据存储YARN是一种资源管理器,主要用于资源调度MapReduce主要用于计算Common是辅助工具二、HDFS架构概述NameNode(nn):存储文件的元数据,如文件名、目录结构、属性,以及每个文件的块列表和块所在的DataNode等DataNode(dn):存储文件块数据以及其校验和Secondry...

2020-01-31 11:31:12 171

原创 【Hadoop学习】_00Hadoop的优势(4高)

一、高可靠性​ Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失。二、高可扩展性​ 在集群间分配任务数据,可方便的扩展数以千计的节点。三、高效性​ 在MapReduce的思想下,Hadoop是并行工作的,以加快任务处理速度。四、高容错性​ 能够自动将失败的任务重新分配。...

2020-01-31 10:56:21 315

原创 【Python学习】Python数据科学基础案例

文章目录一、足球运动员分析二、Facebook营销组合分类一、足球运动员分析# 导入分析需要用到的库import numpy as npimport pandas as pdimport matplotlib as mplimport matplotlib.pyplot as pltmpl.rcParams["font.family"] = "SimHei"mpl.rcParam...

2019-10-18 16:26:00 258

原创 【Python学习】Python基础应用

一、文件的批量重命名1.判断是否是目录相对路径:从当前所在目录开始链接的路径(不是从根目录开始链接的路径)绝对路径:从根目录开始链接的路径import os# 判断是否是目录path = r'F:\MyDesktop\test'print(os.path.isdir(path))2.重命名文件os.rename(oldFilePath, newFilePath)3.遍历...

2019-10-17 11:16:08 120

原创 【Python学习】Python函数

一、函数的创建函数的作用:封装功能,方便调用函数的定义:''' 定义: def 函数名(参数列表): 语句 return 表达式 解释: def:函数关键字,表明定义一个函数 函数名:遵守标识符规则 ():参数列表的开始和结束,如果没有参数也不可以省略 ...

2019-10-16 10:54:21 128

原创 【Python学习】Python流程控制语句

一、顺序结构语句按照顺序依次执行二、选择结构if语句""" 语法格式: ...... if 表达式: 语句(代表多行代码) ...... 运行逻辑: 当程序执行到if语句时,首先计算“表达式”的值, 如果表达式的值为真,那么执行if语句中的“语句”,执行完“语句”则结...

2019-10-15 20:00:52 145

原创 【Python学习】Python数据结构

一、列表(list)列表用[]表示:li1 = [18, 19, 20, 21, 22]列表的本质为一种有序的集合创建列表# 创建空列表li2 = []li3 = list()print(li2)print(li3)# 创建带有初始元素的列表# 列表中的元素是可以不同的,但是一般相同li4 = [1, 2, 3, 4, 5, 'good', True]print...

2019-10-15 13:10:47 104

原创 【Python学习】Python基础

一、Python语法特点注释单行注释:#开头,注释快捷键ctrl+/# 注释多行注释:’’‘注释’’'或""“注释”""''' 第一种多行注释'''""" 第二种多行注释"""缩进:必须为四个空格,可以用tab键if 1: print('hello world!')二、保留字和标识符Python不区分保留字和关键字...

2019-10-14 18:27:16 105

javafx实现模拟电梯升降

本资源使用javafx实现模拟电梯升降演示,界面的话还可以,但是在算法上还需要优化。

2019-01-29

空空如也

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

TA关注的人

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