自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 Spark的Shuffle过程

shuffle原理:Shuffle是MapReduce框架中的一个特定的phase,介于Map phase和Reduce phase之间,当Map的输出结果要被Reduce使用时,输出结果需要按key哈希,并且分发到每一个Reducer上去,这个过程就是shuffle。shuflle描述着数据从map task到reduce task输入的这段过程,如果在分布式的情况下,reduce task...

2018-02-12 00:39:41 2488

原创 Spark中stage的划分

如下为Spark中划分stage的源码: DAGScheduler将Job分解成具有前后依赖关系的多个stageDAGScheduler是根据ShuffleDependency划分stage的stage分为ShuffleMapStage和ResultStage;一个Job中包含一个ResultStage及多个ShuffleMapStage一个stage包含多个tasks,task的个...

2018-02-12 00:31:30 922

原创 Hadoop中Staging(客户端缓存)机制

客户端创建文件的请求其实并没有立即发送给 NameNode,事实上,在刚开始阶 段 HDFS 客户端会先将文件数据缓存到本地的一个临时文件。应用程序的写操作被透明地重定向到这个临时文件。当这个临时文件累积的数据量超过一个数据块的大小, 客户端才会联系 NameNode。 NameNode 将文件名插入文件系统的层次结构中,并且 分配一个数据块给它。然后返回 DataNode 的标识符和目标数据块...

2018-02-12 00:29:07 1616 2

原创 Hadoop中datanode故障问题

当向datanode写数据的过程中发现datanode存在故障时,namenode会重新分配一个datanode个pipline进行写操作,这个datanode如果故障了,这上面的block没有了,其他datanode上还有这个block的备份,不过现在该block在系统中的总备份数为2,(坏了一个),下次hdfs使到该块时,会检测到该块的备份数为2,会重新备份让replication数达到3...

2018-02-12 00:27:45 2847

原创 python 文件的读写

打开文件:形式如下f=open('/tmp/hello','w')open(路径+文件名,读写模式),注意路径中可能含有转义字符比如”\t”,要在路径名前加r读写模式:r只读,r+读写,w新建(会覆盖原有文件),a追加,b二进制文件.常用模式如:’rb’,’wb’,’r+b’等等,读写模式的类型有: rU 或 Ua 以读方式打开, 同时提供通用换行符支持 (PEP ...

2018-02-12 00:04:39 183

原创 【leetcode】687. Longest Univalue Path

原题链接: Longest Univalue Path 求一条最长的路径,使得这条路径上节点的值都相同。 解题思路如下:遍历二叉树中的每一个节点,计算以该节点为root点的满足题意的路径长度,取所有长度中最常的即可。这道题要注意的是,计算路径时,只有在root节点处允许分叉,从root往下延伸的节点不允许分叉(root以下产生分叉则不属于一条路径了),所以函数 findlongestp...

2018-02-11 20:47:33 335

原创 python中的文件迭代操作

文件的迭代相当于对文件中的内容进行遍历和操作: 1.用read方法,每次读取一定量的字节数,对读到的字节数进行process: 两种方法遍历: (1)f = open(filename) char = f.read(1) while char: process(char) char= f.read(1) f.closef.read(1)每执行一次,...

2018-02-09 13:35:34 3077

原创 深入理解HDFS

HDFS写数据流程客户端将数据写入HDFS的流程图如下: 流程如下:使用HDFS提供的客户端Client, 向远程的Namenode发起RPC请求 Namenode会检查要创建的文件是否已经存在, 创建者是否有权限进行操作, 成功则会为文件创建一个记录, 否则会让客户端抛出异常; 当客户端开始写入文件的时候, 客户端会将文件切分成多个packets, 并在内部以数据队列“dat...

2018-02-09 13:13:16 16969

原创 Spark架构图详解

Spark架构架构图如下: Spark结构主要分为四个部分: 1. 用来提交作业的Client程序:client是什么呢,比如spark中提交程序的shell窗口,宏观上讲,是一台提交程序的物理机。负责将打包好的spark程序提交到集群中,提交完程序这个客户端客户端程序还发挥什么作用呢?yarn-client模式下,客户端提交程序后,在该客户端上又运行着一个driver程序,这个cl...

2018-02-09 12:57:34 19198 1

原创 Spark 介绍以及相关概念

Spark起源:Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。Spark是UC Berkeley 加州大学伯克利AMP lab (加州大学伯克利分校的AMP实验室)所开源的类Hadoop MapReduce的通用并行框架,Spark,拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是Job中间输出结果可以保存在内存中,从而不再需要读写H...

2018-02-09 10:33:07 1362

原创 python list倒序输出中的一些问题

我们可以使用Python的切片操作来完成list的倒序操作,比如:a=['a','b','c','d','e','f']print(a[ : :-1])可以得到如下结果:['f', 'e', 'd', 'c', 'b', 'a']下面来看看如下操作: (1)a=['a','b','c','d','e','f']print(a[ 4: :-1])结果:['e

2018-02-01 17:07:13 4773

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除