自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 收藏
  • 关注

原创 Hive基本概念

基于hadoop的数据仓库工具(本身不存储数据)本质是:将HQL转换为MR程序。

2023-06-05 15:38:57 66

原创 Yarn介绍

Yarn基础架构Yarn工作机制容量调度器多队列容量保证灵活性多租户

2023-06-02 11:03:40 71

原创 MapReduce介绍

分布式编程框架,用户直接操作业务逻辑,无需感知底层分布式实现。

2023-06-01 14:53:52 69

原创 HDFS介绍

它是一个文件系统,通过目录树的方式存储文件,分布式存储。

2023-05-30 16:36:08 74

原创 hadoop简单介绍

hadoop

2023-05-26 14:09:08 47

原创 G1 VS CMS

G1垃圾收集器和CMS垃圾收集器对比G1收集器gc过程:初始标记:用户线程等待(STW),标记gc roots初次和找到的root节点并发标记:用户线程和gc线程同时运行,标记其余可以达到gcroot的节点重新标记:STW,标记在并发标记中产生的垃圾筛选清除:STW,按照内存需求对每个需要gc的内存块进行gc特点:将内存划分为多个小的内存块,gc避免内存碎片吞吐量有限CMS收集器gc过程:初始标记:用户线程等待(STW),标记gc roots初次和找到的root节点并发标

2021-12-25 18:15:13 376

原创 OSI七层模型

应用层:网络服务和用户交互的接口。有一系列协议表示层:数据的表示。安全和压缩会话层:建立、管理、断开会话传输层:确定从那发送到哪网络层:确定具体的发送路线数据链路层:确定具体的发送方式物理层:建立维护和断开物理连接...

2021-03-21 20:58:59 63

原创 TCP和UDP的区别

TCP:安全(可靠),有链接,面向字节流,可传输大量数据,效率略低于UDPDUP:不安全,无连接,面向数据包,传输大小有限,传输速率快TCP可靠性:确认应答机制:发送端每发送一段消息,接收端都会传回一个ack响应表示接收到了发送端的消息超时重发机制:发送完数据后超过规定时间没有收到响应,将重新发送这个消息给接收端连接管理机:每次发送消息前,都会建立一条连接,之后再去发消息流量控制机制:接收端更具自己能收到数据的能力,返回给发送端每次要发送数据的条数拥塞控制机制:发送端探测出网络带宽,发送一

2021-03-20 00:09:50 170

原创 事务的四种隔离级别

前置概念脏读:一个事务在处理数据过程中,读到了其他事务提交的数据不可重复度:对数据库的某个数据,一个事务在范围内多次查询却返回了不同的结果,这是由于在查询过程中,数据被另外一个数据修改冰提交了(和脏读的区别,不可重复读读到的是已经提交的数据,脏读读到的是未提交的数据)幻读:是事务非独立执行时发生的一种现象。比如事务a从表中删除了“我是猪”的数据,但是事务b有插入了“我是猪”。这时a在进行查询就好像没有删除一样,出现了“幻觉”;幻读和不可重复读的区别:幻读是针对一批数据,而不可重复读针对一个数据有了这

2021-03-18 18:54:19 178

原创 MySQL事务的四大特性

原子型:一事务被视作不可分割的最小单元,整个事务的所有操作,要么全部提交成功,要么全面失败回滚,对一个事务来说不能只执行其中的一部分。一致性:数据库从一个状态转换到另一个状态,其中间状态不对外体现隔离性:一个事务所做的修改在其提交前对其他的事务不可见持久性:一旦数据提交则其所做的修改会永远保存到数据库中...

2021-03-18 17:39:12 138

原创 四种常见的线程池

newCacheThreadpool(可缓存线程池):先查看池中有没有以前建立的线程,如果有,就直接使用。如果没有,就建一个新的线程加入池中,缓存池子通常用于执行一些生存期很短的异步性任务newFixedThreadPool(int n):创建于一个可重用固定个数的线程池,以共享的无界队列的方式来运行这些线程池newScheduledThreadPool(int n):创建一个定长的线程池,支持定时及周期性任务执行newSingleTreadExecutor:创建一个单线程优化的线程池,他只会

2021-03-18 17:27:34 108

原创 JAVA集合的加载因子以及扩容问题

加载因子:存储数据的个数与最大存储量的比值(一般说内存因子就是比值的最大值)扩容:既比值达到了内存因子的最大值开始扩容ListArrayList:默认内存(10),加载因子(1),扩容*1.5,线程不安全Vector:默认内存(10),加载因子(10),扩容*2,线程安全SetHashSet:默认内存(16)为了更快的查找,加载因子(0.75),扩容*2,线程不安全MapHashMap:默认内存(16)为了更快的查找,加载因子(0.75),扩容*2,线程不安全HashTable:

2021-03-18 15:10:10 1029 1

原创 (TCP/IP)五层协议

应用层(HTTP,webSocket等)传输层(TCP/UDP)网络层(IP)数据链路层物理层

2021-03-17 20:59:55 134

原创 在浏览器中输入一个URL都发生了什么

浏览器查看本地缓存(cookie),如果请求资源在本地缓存中,直接将资源提供给客户端,否则进行查找浏览器解析URL获取协议、主机、端口等信息浏览器将信息包装成一个HTTP请求报文浏览器根据域名获取主机IP(DNS解析)根据目的IP判断和源IP是否在同一网段(根据子网掩码计算),在同一网段根据ARP协议找到MAC地址,否则进行第六部找网关MAC,将目的MAC改为网关MAC发送到网关网关将数据发送到公网(根据NAPT协议将局域网IP映射为公网IP),将源IP和MAC改为公..

2021-03-09 14:23:25 133

原创 二叉树的前、中、后序遍历的非递归实现

前序遍历思路:模仿递归实现的栈帧结构先把根节点打印出来,然后右左子树分别入栈(为啥是右左不是左右?因为出栈的时候要左子树在右子树之前打印,右左刚好可以满足),直到栈为空。实现代码public static void preTraverse(TreeNode root) { Stack<TreeNode> stack = new Stack<>(); stack.push(root); while(!stack.isEmpty(

2021-03-08 20:27:27 161

原创 线程理解

1.线程和进程的区别进程是资源分配的最小单位,线程是系统调度运算的最小单位。线程共享同一个进程申请的内存线程的创建,切换,终止效率高于进程线程私有的资源有:1.线程ID每个线程都有自己的线程ID,这个ID在本进程中是唯一的。进程用此来标 识线程。2.寄存器组的值由于线程间是并发运行的,每个线程有自己不同的运行线索,当从一个线 程切换到另一个线程上时,必须将原有的线程的寄存器集合的状态保存,以便 将来该线程在被重新切换到时能得以恢复。3.线程的堆栈堆栈是保证线程

2020-12-28 19:40:49 242

原创 单例模式

1.什么是单例模式单例模式是指一个单一的类,这个类负责创建自己的对象,且只能有一个对象被创建,这个类还提供了唯一的访问这个类的唯一对象的方式,不嫩被实例化。2.单例模式的主要的解决的问题主要用于一个全局使用的类被频繁的创建和销毁,使用单例模式提高代码效率,节省系统资源3.应用场景要求生产唯一序列号。WEB 中的计数器,不用每次刷新都在数据库里加一次,用单例先缓存起来。创建的一个对象需要消耗的资源过多,比如 I/O 与数据库的连接等。4.单例模式的实现方法饿汉模式,线程安全:在内加载的

2020-12-28 19:02:08 163

原创 序列化和反序列化

序列化是指:将一个对象(编程语言中声明的类型,也可以是图片,视屏。。)转换成01序列。反序列化:就是讲01序列转化给一个对象。为什么要这样做呢?在网路传输过程中,信息是以电型号传输的,只有正负之分(对应的只认识01),将一个对象序列化有利于信息交互。...

2020-11-30 21:02:59 80

原创 web返回动态响应和静态响应的区别

web返回的响应‘何为响应,响应就是web服务器根据客户端的发给他请求的一系列内容做出的回应。静态响应当web服务器接收到这个请求后,从原来已有的资源中给你一个一成不变的内容,任何请求过来都会发送相同的内容,不会根据发起请求的对象不同做出不同的回应。动态响应当web服务器拿到这个请求后,根据请求的内容给他返回一个为他量身定做的回应(当然这个回应也可以和之前给别人的一样),主要是他自己在得到请求后,在服务端干了一些事,才返回给客户端。...

2020-11-30 20:53:47 1005

原创 七种常见排序的实现和比较

一. 七种常见的排序1.插入排序思想:将数组拆分成两段,一段有序,一段无序,将无序区间中的数依次拆入到有序区间中。示例图:实现代码:public void insertSort(int[] array) { //i 循环控制插入次数及要插入的数 for(int i = 0;i < array.length-1; i++) { //temp = 要拆入的数,从下标为1的位置开始是因为一个数的时候自然有序 int t

2020-11-13 13:16:37 404

原创 Java中的数据结构(队列和栈)

1.什么是队列?数据服从先进先出的的原则,只允许在后面插入队列,从前面出队列。2.什么是栈?数据服从先进后出的原则,只允许在栈顶插入和删除。3.具体实现Queue<Integer> queue = new LinkedList<>();Stack<Integer> stack = new Stack<>();4.含有的方法队列:queue.add();//插入一个元素queue.remove();//返回第一元素queue.peek()

2020-10-22 23:42:09 174

原创 Java中的数据结构(树)

1.什么是树?树是一组有限结点的集合,满足每个结点只有一个结点指向他,一个结点可以指向多个结点2.树的相关概念根:没有前驱结点(没有任何结点指向它)子节点:存在前驱结点的结点叶子结点:没有后继结点(不指向任何结点,一种特殊的子节点)兄弟结点:他们的前驱结点为同一个结点树的高度:从所有叶节点开始数高度到根节点,其中的最大值;也就是从结点x向下到某个叶结点最长简单路径中边的条数。树的深度(层):树根下中所有分支结点层数的最大值,递归定义。(树的高度-1)3. 二叉树(树的一种特殊形式)特点:

2020-10-22 17:05:36 374

原创 堆和优先级队列(Java)

堆1. 什么是堆?堆是树的一种形式,不同之处在于树上的结点可以随便,堆可以分为大堆和小堆,大堆:父结点的值一定大于两个子节点。小堆:父节点的值一定小于两个字结点。2.堆的内存方式?数组3.堆的实现小堆://对任意位置的结点进行调整(向下调整)public static void adjustDown(int[] array, int size, int index) { while (true) { // 1. 判断 index 是不是叶子

2020-10-21 18:27:34 173

原创 Java中的数据结构(线性表)

线性表1.什么是线性表?像a1,a2,a3…an这样的有限序列,成为线性表2.线性表的表示形式:①. 顺序表(ArrayList)②.链表(LinkedList)3.线性表接口提供的函数(List):4.在java中的关系

2020-10-14 17:24:08 204

原创 java重点语法对比(重写和重载,抽象类和接口)

重写和重载重写:1.函数名相同2.返回值相同3.参数个数及类型相同重写规则:重写的方法访问权限大于被重写方法,private修饰的方法不能被重写重载:1.函数名相同2.返回值可以不同3.参数个数和类型可以不同抽象类和接口抽象方法:abstract 修饰抽象类: 包含抽象方法的类。abstract修饰1.抽象类不可以被实例化。2.抽象类和普通类的区别在于多了一个抽象方法且不能被实例化3.如果一个普通类继承了抽象方法,那么这个类一定要重写抽象类中的抽象方法4.抽象方法一定要被重写

2020-08-12 21:50:16 148

原创 面向对象编程(java)基本语法

包包是组织类的一直种方式,使用包的主要目的是保证类的唯一性。一般情况下导入包的时候可以在class前加如下语句import java.long.Math也可以有这样的导入方法java.util.Data data = new java.util.Data()...

2020-08-12 21:34:37 191

原创 Java中的数据类型(对比c)

Java中的数据类型有两大类:基本类型和引用类型基本类型:byte short int long char boolean float double引用类型:数组 字符串 和一些自己定义的类;基本类型和引用类型的对比:1.基本类型直接调用,引用类型通过引用调用;2.基本类型在栈上开辟空间,引用类型在堆上开辟空间;3.通过方法调用基本类型后,其值不变,但是调用引用类型后值发生改变(函数不能对基本类型的值进行修改,但是可以修改引用类型的值)Java中的数据类型和c对比1.多了byte,boo

2020-07-22 22:27:21 282

原创 对于整形和浮点型在机算计中的存储

*整形整形:(char,int,unsigned char,unsigned int…)整形分为有符号整形和无符号整形。有符号整形有符号整形在计算机中直接存储他的原码(即将这个数转换为二级制数的二进制码)例如:unsigned int a = 0;a = 9;//a转换为9的二进制形式为 1001,故在计算机中的存储形式为: 1001因为这是int 型所以计算机开辟4个字节来存储,存储格式为:0000 0000 0000 0000 0000 0000 0000 1001如果a为ch

2020-05-27 15:42:35 272

空空如也

空空如也

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

TA关注的人

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