摘要:
一.hashShuffle 在早期的spark中,其shuffle的机制是hashShuffle。在hashShuffle的过程中,每一个shuffleMapTask都会为每一个reduceTask创建一个bucket缓存,shuffleMapTask会对处理后的数据进行partitioner操作( 阅读全文
摘要:
一.RDD是什么 RDD是Spark提供的核心抽象,全称为Resillient Distributed Dataset,即弹性分布式数据集。 在spark的源码里面我们可以看到,rdd是被abstract所修饰的,他是一个抽象类,它代表一个不可变,可分区,里面的元素可并行计算的集合。 而在spark 阅读全文
摘要:
在java中,synchornized和reentrantLock大家肯定很熟悉,但是有些场景,我们一个线程可能需要同时争夺多个资源,这个时候,Semaphore就可以满足这种需求,并且做到限流的效果。 import java.util.Random; import java.util.concur 阅读全文
摘要:
CountDownLatch是juc包里面的一个计数器,用户可以为他设置一个初始值,并调用他的await()方法使当前线程转变为阻塞状态,直到CountDownLatch计数完毕。 Enum是java中的枚举,当程序运行过程中需要根据一定的对应关系去获取一些数据的时候,通过数据库去拿这些数据是非常消 阅读全文
摘要:
java基础----值的传递 阅读全文
摘要:
一.arraylist和vector的异同 相同: 1.他们的底层都是通过数组实现的。 2.在内存中,元素与元素之间不能存有间隔,也就是说,它们都需要申请一个连续的内存空间去存放数据。 3.数组通过下标能快速定位到元素,因此查询能力比较强大,但是如果是插入或者删除元素,在插入或删除的位置往后的元素都 阅读全文
摘要:
一.什么是cas CAS的全称是Compare-And-Swap,他是一条CPU并发原语。 java中的CAS,都是通过unsafe类实现的,其主要的操作是,当一个线程从主内存拿到一个变量到自己工作内存,并经过计算处理,准备写回主内存的时候,会首先比对当前主内存的变量指向的内存地址里面的值,与期望值 阅读全文
摘要:
一.volatile是什么 如果用一句话概括volatile的话,那volatile其实就是java虚拟机提供的轻量级的同步机制。它具有一下三个特点: 1.保证可见性 2.不保证原子性(因为不保证原子性,所以他是轻量级的) 3.禁止指令重排 二.保证可见性 首先,我们先看看下面的代码 import 阅读全文
摘要:
Hbase的体系结构及其作用 阅读全文
摘要:
无 阅读全文