在spark里面,内存管理有两块组成,一部分是JVM的堆内内存(on-heap memory),这部分内存是通过spark dirver参数executor-memory以及spark.executor.memory来进行指定; 另外一部分是堆外内存(off-heap memory),堆外内存默认是 ...
分类:
Web程序 时间:
2018-06-04 11:37:29
阅读次数:
186
介绍 最近在工作中使用到了DirectBuffer来进行临时数据的存放,由于使用的是堆外内存,省去了数据到内核的拷贝,因此效率比用ByteBuffer要高不少。之前看过许多介绍DirectBuffer的文章,在这里从源码的角度上来看一下DirectBuffer的原理。 用户态和内核态 Intel的 ...
分类:
其他好文 时间:
2018-04-22 21:40:24
阅读次数:
251
一、前述 Spark中调优大致分为以下几种 ,代码调优,数据本地化,内存调优,SparkShuffle调优,调节Executor的堆外内存。 二、具体 1、代码调优 1、避免创建重复的RDD,尽量使用同一个RDD 2、对多次使用的RDD进行持久化 如何选择一种最合适的持久化策略? 默认情况下,性能最 ...
分类:
其他好文 时间:
2018-03-01 23:38:47
阅读次数:
199
Description 有N堆石子,除了第一堆外,每堆石子个数都不少于前一堆的石子个数。两人轮流操作每次操作可以从一堆石子中移走任意多石子,但是要保证操作后仍然满足初始时的条件谁没有石子可移时输掉游戏。问先手是否必胜。 有N堆石子,除了第一堆外,每堆石子个数都不少于前一堆的石子个数。两人轮流操作每次 ...
分类:
其他好文 时间:
2018-02-23 22:27:46
阅读次数:
150
在跳一跳这样一个小的游戏里面,如果一个用户看到里面有一堆外挂得了很高的分,对其他一些每天在练习,试图把自己的水平提高,而打一个高分的人就很不公平,他可能就没有动力继续去练习,继续超越自己个人的最高分数。所以这样一个行为,外挂行为其实会破坏整个系统的规则,并且让规则立即变得失效。 ...
分类:
微信 时间:
2018-01-19 14:19:16
阅读次数:
285
尽管Java对象的内存分配可以选择在堆外进行,但是不可否认这仅仅只是为了降低GC回收频率以及提升GC回收效率的一种辅助手段,所以Java堆仍然是分配/存储对象实例的主要区域。JVM中包含三种引用类型: 1、类类型; 2、数组类型; 3、接口类型; 这些引用类型的值分别由类实例、数组实例、和接口的派生 ...
分类:
其他好文 时间:
2017-12-31 16:05:02
阅读次数:
125
入口ByteBuffer.allocateDirect public static ByteBuffer allocateDirect(int capacity) { return new DirectByteBuffer(capacity); } DirectByteBuffer构造函数 Dire ...
分类:
编程语言 时间:
2017-11-02 15:51:40
阅读次数:
182
集中的HDFS缓存管理,该机制可以让用户缓存特定的hdfs路径,这些块缓存在堆外内存中。namenode指导datanode完成这个工作。Centralized cache management in HDFS has many significant advantages.Explicit pin... ...
分类:
系统相关 时间:
2017-08-30 23:42:15
阅读次数:
328
【BZOJ1115】[POI2009]石子游戏Kam Description 有N堆石子,除了第一堆外,每堆石子个数都不少于前一堆的石子个数。两人轮流操作每次操作可以从一堆石子中移走任意多石子,但是要保证操作后仍然满足初始时的条件谁没有石子可移时输掉游戏。问先手是否必胜。 有N堆石子,除了第一堆外, ...
分类:
其他好文 时间:
2017-08-26 11:30:13
阅读次数:
114
多年前我自学的时候是很茫然,上网问问题,总是一堆外行的人说很难啊,你需要这样需要那样,不然就是,一堆人说一些空话,多看多写,买好书,我很无语,除了这些就没有自己的一些想法吗? 首先很多人认为学JAVA要C的基础,但是实际上不用,学开车,我不想先学骑自行车,没有必要。 第一阶段: 1. JAVA语法和 ...
分类:
编程语言 时间:
2017-08-16 20:27:28
阅读次数:
153