04 2019 档案
摘要:优化口诀: 全值匹配我最爱,最左前缀要遵守; 带头大哥不能死,中间兄弟不能断; 索引列上少计算,范围之后全失效; Like百分写最右,覆盖索引不写星; 不等空值还有or,索引失效要少用; VAR引号不可丢,SQL高级也不难! “全值匹配我最爱” “带头大哥不能死”,火车头可以单独跑,车厢不能单独跑
阅读全文
摘要:针对于java1.8版本,JVM的系统架构 类加载机制: 堆内存结构图: 面试题:一个对象从创建到销毁经历了什么? 1、new一个对象时,在堆内存中开辟一块空间。 2、给开辟的空间分配一个地址。 3、把对象的所有非静态成员加载到所开辟的空间下。 4、所有的非静态成员加载完成之后,对所有非静态成员变量
阅读全文
摘要:3个售票员,卖30张票 package com.javase.thread; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; class Ticket { private
阅读全文
摘要:累加器(accumulator)是Spark中提供的一种分布式的变量机制,其原理类似于mapreduce,即分布式的改变,然后聚合这些改变。累加器的一个常见用途是在调试时对作业执行过程中的事件进行计数。 Spark内置的提供了Long和Double类型的累加器。下面是一个简单的使用示例,在这个例子中
阅读全文
摘要:ROW_NUMBER,RANK(),DENSE_RANK() 先了解这三个之间的区别: Rank():1,2,2,4,5(一般用这个较多,不会影响总排名) Dense_rank():1,2,2,3,4,5(会影响最终排名) Row_number():1,2,3,4,5,6(按照行数显示) 语法格式:
阅读全文
摘要:Spark内部执行机制 1.1 内部执行流程 如下图1为分布式集群上spark应用程序的一般执行框架。主要由sparkcontext(spark上下文)、cluster manager(资源管理器)和▪executor(单个节点的执行进程)。其中cluster manager负责整个集群的统一资源管
阅读全文