- 博客(8)
- 收藏
- 关注
原创 Java反射总结
反射机制1>指的是可以于运行时加载,探知,使用编译器间完全未知的类。2>程序在运行状态中,可以动态加载一个只有名称的类,对于任意一个已加载的类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;String path = "com.shc.test.reflect.User";Class clazz = Class.forName(path);3&...
2018-03-29 13:26:16 352
原创 Spark执行流程
启动流程 我们写的spark程序,打成jar包,用spark-submit来提交; local模式:当我们的程序提交到集群上时,会加载并执行我们的jar包,并找到jar包中的main函数执行一遍,执行main函数所启动的这个进程名就是SparkSubmit,这个进程就是我们所说的Driver进程; cluster模式:会在集群中找到一台node,启动一个进程执行一遍我们提...
2018-03-18 11:23:03 1798 1
转载 Shuffle原理剖析与源码分析
文章转自:http://blog.csdn.net/github_36444580/article/details/78637355对比Spark与MR中的shuffle1.Shuffle是MapReduce框架中的一个特定的phase(时期),介于Map phase和Reduce phase之间,当Map的输出结果要被Reduce使用时,输出结果需要按key哈希,并且分发到每一个Reducer上...
2018-03-16 15:20:35 538
原创 Spark控制算子
Spark控制算子1. 控制算子分类Spark中控制算子也是懒执行的,需要Action算子触发才能执行,主要是为了对数据进行缓存。cache(),persist(),checkpoint()算子其中【cache () = persist()=persist(StorageLevel.Memory_Only)】以上算子都可以将RDD持久化,持久化的最小单位是partition。SparkConf c...
2018-03-16 15:04:35 526
原创 Spark宽窄依赖详解
1.宽窄依赖 图中左边是宽依赖,父RDD的4号分区数据划分到子RDD的多个分区(一分区对多分区),这就表明有shuffle过程,父分区数据经过shuffle过程的hash分区器(也可自定义分区器)划分到子RDD。例如GroupByKey,reduceByKey,join,sortByKey等操作。图右边是窄依赖,父RDD的每个分区的数据直接到子RDD的对应一个分区(一分区对一分区),例如1号到5号...
2018-03-16 14:55:29 23334 4
转载 Spark之pipeline机制
1、pipeline的产生 从一个现象说起,有一家咖啡吧生意特别好,每天来的客人络绎不绝,客人A来到柜台,客人B紧随其后,客人C排在客人B后面,客人D排在客人C后面,客人E排在客人D后面,一直排到店面门外。老板和三个员工首先为客人A准备食物:员工甲拿了一个干净的盘子,然后员工乙在盘子里装上薯条,员工丙再在盘子里放上豌豆,老板最后配上一杯饮料,完成对客人A的服务,送走客人A,下一位客人B开始被...
2018-03-16 14:19:43 2317
原创 Java中Volatile关键字
Java 内存模型中的可见性、原子性和有序性。可见性:可见性是指当一个线程修改了共享变量的值,其他线程能够立即得知这个修改。volatile、synchronized、final都可以实现可见性,synchronized可见性是由对一个变量执行unlock操作之前,必须先把此变量同步回主内存中(执行store、write操作)这条规则获得的,而final关键字的可见性是指:被final修饰的字段在...
2018-03-12 16:56:43 197
原创 Hive知识积累
Hive是构建在Hadoop HDFS上的一个数据仓库,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能,其本质是将SQL转换为MapReduce程序。数据仓库是一个面向主题的、集成的、不可更新的、随时间变化的数据集合,它用于支持企业或组织的决策分析处理。Hive的表其实就是HDFS的目录/文件。1.Hive的体系结构 Hive默认采用的是Derby数据库进行元数据的...
2018-03-10 11:02:45 503
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人