- 博客(11)
- 资源 (1)
- 收藏
- 关注
原创 Spark tungsten shuffle过程
1. ShuffleMapTask的runTask()方法 override def runTask(context: TaskContext): MapStatus = { // Deserialize the RDD using the broadcast variable. val deserializeStartTime = System.currentTimeMil
2016-07-19 11:01:24
954
原创 Spark tungsten shuffle
Tungsten的内存管理机制 内存管理必然涉及寻址,在介绍Tungsten的内存管理机制之前,我们先来看看内存地址的表示方式。 memory地址的表示方式在不同的内存管理模式中是不同的,这里我们考虑2种内存管理模式。第一种是off-heap模式,可以理解为是独立于JVM托管的heap之外利用c-style的malloc从os分配到的memory。这类memory不再由JVM
2016-07-18 22:03:47
601
原创 Spark shuffle write过程
1. ShuffleMapTask的runTask()方法 override def runTask(context: TaskContext): MapStatus = { // Deserialize the RDD using the broadcast variable. val deserializeStartTime = System.currentTimeMilli
2016-07-14 15:42:06
2067
原创 Spark Shuffle Read过程
1. ShuffledRDD的compute()方法 override def compute(split: Partition, context: TaskContext): Iterator[(K, C)] = { val dep = dependencies.head.asInstanceOf[ShuffleDependency[K, V, C]] SparkEnv.g
2016-07-12 17:29:37
2603
原创 字符与数字的相互转化
str(num); # 将数字转化位字符串 import string; string.atoi(str); # 将字符串转化位整数 string.atof(str); # 将字符串转化位小数
2011-12-05 17:21:55
401
原创 操作系统的判断
import os; if os.name == "nt": # windows blabla; elif os.name == "posix": # linux blabla;
2011-12-04 17:17:53
593
原创 读取大文件
通常读取文件的方法是: for line in open('myfile','r').readlines() 但问题是会将整个文件读入内存,所以对于大文件此方法不适合。 下面的方法会一行一行地读取文件: import fileinput for lin
2011-09-06 15:08:24
264
原创 range 与 xrange 的区别
在 Python 中,range 和 xrange 均可以用来做迭代的范围,不过 range 返回的是 list,而 xrange 则返回一个 xrange object。 for x in range(1000): will generate a list
2011-09-03 15:04:04
449
转载 6 Lessons From Dropbox - One Million Files Saved Every 15 Minutes
Dropbox saves one million files every 15 minutes, more tweets than even Twitterers tweet. That mind blowing statistic was revealed by Ria
2011-09-01 12:51:47
421
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
2