- 博客(14)
- 收藏
- 关注
原创 spark基础知识点
1 缓存及缓存级## 标题别缓存的方法有两个cache和persist缓存有两个方法cache和persist, 通过源码可以看出cache调用了persist, 所以这两个方法运行的效率可以看做是一样的在persist方法中需要传入StorageLevel这个对象StorageLevel对象中可以指定缓存的数据存入到内存中, 磁盘中, 堆外缓存中, 是否关闭序列化, 以及副本数量存储级别的选择MEMORY_ONLY > MEMORY_ONLY_SER > MEMORY_AND_
2020-09-12 13:51:52 650
原创 kafka原理及副本策略详解
kafka原理图解segment:一个partition里有多个segment,默认大小为1G,生命周期默认为168天,而segment由多个index文件和log文件组成,index文件是存的索引位置,log文件存的是真实数据。副本策略数据同步kafka在0.8版本前没有提供Partition的Replication机制,一旦Broker宕机,其上的所有Partition就都无法提供...
2019-03-06 11:25:48 704
原创 groupByKey与reduceByKey区别
用spark所写的程序中shuffer操作非常耗时,所以会有专门针对这个shuffer的优化,来提高效率,但是有时你必须进行一些带有shuffer的操作的算子,比如groupByKey和reduceByKey。这两个都是针对于元祖(key,value)类型的数据进行重排与聚合操作。groupByKey:它是将RDD中相同的key值得数据(value)合并成为一序列,只能输出相同key值得序列。...
2019-02-22 20:57:42 815
原创 虚拟机连接MobaXterm显示Connection time out
第一种:当你所有的都是配置正确的,查看服务是不是手动 改为自动你可能这些配置好了,还会出现这个问题:你电脑关机后,虚拟机连接MobaXterm还会报这个错误,查看服务还是手动启动这些事你的360,金山等杀毒软件引起的,将这些卸载就OK了。第二种情况:编辑虚拟网络编辑器:将图中标红处匹配到你虚拟机的配置的信息在nat设置中配置网关在网络适配器中点击Vmnet8在这里配置相对应...
2019-01-17 19:08:43 11440 1
原创 HDFS的写入流程及副本复制策略(图解)
步骤补充:1.向namenode发送请求上传文件 然后在namenode里会进行检查是否存在该文件,权限问题 通过则给一个输出流对象2.建立好pipeline管道后,客户端先把文件写入缓存中,达到一个块的大小时,会与第一个datanode建立连接开始流式的传输数据,这个datanode会一小部分一小部分的(4k)接受数据然后写入本地仓库,同时把这些数据传输到第二个datanode上;第二个...
2018-12-16 22:57:52 3310
原创 HDFS的读流程
1.客户端向namenode发送RPC调用,请求读取文件数据,namenode检查文件是否存在,如果存在则获取文件的元信息(blockid和对应datanode列表)返回给客户端2.客户端收到元数据信息选取最近的一个datanode节点,一次读取每个数据块,客户端首先要检查文件是否损坏,如果损坏,客户端会选取另外的datanode请求3.客户端与datanode之间建立socket连接,传输...
2018-12-15 17:59:04 145
原创 zookeeper分布式锁的实现原理
在zk集群上先创建永久性节点server,所有要访问资源的客户端在永久节点server下注册临时有序的节点,并且监听自己前一个节点。序列号最小ed获得锁可以访问资源,访问结束,断开连接,注册的临时节点被删除,他的下一个节点通过监听知道。...
2018-12-15 17:44:58 168
原创 job提交(yarn)过程
客户端将向resourcemanager上传jar包2.resourcemanager将jobid,存储路径及相关信息告诉给客户端3.客户端将相关资源上传到返回的路径上(HDFS上),上传完后返回resourcemanager上传成功,4.resourcemanager将job拉近队列中(FIFO队列支持先进先出)等待nodemanager领取job(有三个调度器:容量调度器,资源调度器,...
2018-12-15 16:22:45 671
原创 hive面试题
1 hive表关联查询,如何解决数据倾斜的问题?倾斜原因:map输出数据按key Hash的分配到reduce中,由于key分布不均匀、业务数据本身的特、建表时考虑不周、等原因造成的reduce 上的数据量差异过大。1)、key分布不均匀;2)、业务数据本身的特性;3)、建表时考虑不周;4)、某些SQL语句本身就有数据倾斜;如何避免:对于key为空产生的数据倾斜,可以对其赋予一...
2018-12-13 14:21:03 523
原创 mapReduce流程的可干预组件
1.combiner:相当于一个reduce,在map端后,可以大大的减少IO2.partition:分区,默认是根据key的hash值%reduce的数量,自定义分区是继承Partitioner类,重写getPartition()分区的方法,自定义分区可以有效的解决数据倾斜问题3.group:分组,继承WritableComparetor类,重写compare()方法,自定义分组(就是定义r...
2018-12-13 10:25:12 407
原创 mapReduce的shuffle流程
1.经过切片之后的数据进入map端,然后将数据处理。2.将数据拉取到环形缓冲区,大小默认为100M,当达到80%的时候,进行溢写到本地磁盘,剩下的20%进行继续拉取数据。3.在环形缓冲区将数据写出前,对数据进行快速排序,及分区处理。4.经过上面处理后的数据合并为一个大的文件并进行归并排序,5.当有一个maptask执行完毕后,reducetask启动。将归并排序后的数据拉取到reduce...
2018-12-06 18:07:52 291
原创 namenode和datanode的启动过程及安全模式相关
Namenode(1) 加载镜像文件,还原checkpoint时间节点前的元数据(包含目录结构,文件大小,块数据的大小和id),不包含快的存储位置(2)加载edits文件,还原checkpoint时间节点到集群停止的元数据,不包含块的存储位置。(到这里namenode还原就缺少块的存储位置)(3)blockreprot阶段,datanode启动,向namenode汇报自己所管理块及id,na...
2018-12-05 14:38:39 732
原创 hadoop的hive调优
这里写自定义目录标题**)hive的调优1.Fetch 抓取2.本地模式3.表的优化4.数据倾斜(准确来说是处理数据倾斜才是调优)5.并行执行6.严格模式7.jvm重用8.推测执行9. 执行计划10.虚拟列11.压缩总结:欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居...
2018-12-03 21:31:03 195
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人