大数据
qq_35248703
这个作者很懒,什么都没留下…
展开
-
Spark 中OOM的现象、原因、解决方案和总结
出现OMM的现象出现这种情况的大约有两个情况:1、map执行内存溢出2、shuffle后内存溢出map执行中内存溢出代表了所有map类型的操作。包括:flatMap,filter,mapPatitions等。shuffle后内存溢出的shuffle操作包括join,reduceByKey,repartition等操作。spark中的内存spark在一个Executor中的内存分为三部分:1、execution块,shuffle的数据也会先缓存在这个内存中,满了再写入磁盘中、排序、map的过程原创 2020-07-23 19:07:23 · 4118 阅读 · 0 评论 -
Spark在yarn集群上运行
先上结论:1、用户通过spark-submit脚本提交应用。2、spark-submit脚本启动Driver,调用用户定义的main()函数,创建SparkContext。3、Driver向RM申请运行资源4、RM为驱动器程序启动Executor,Executor启动后向Driver反向注册自己5、Driver将job切分成一个或多个stage,再将stage分成多个task,根据数据所在的位置将task分配给合适的Executor执行6、在Executor执行的时,会将计算的中间结果数据存储在原创 2020-07-23 09:28:15 · 342 阅读 · 0 评论 -
spark中的血统
为什么会有血统?Lineage定义Lineage:用来记录不同RDD之间的依赖关系。RDD在Lineage方面主要分为两种:窄依赖和宽依赖。那什么是窄依赖和宽依赖呢?窄依赖:父RDD中的每个分区最多被子RDD的一个分区使用。宽依赖:父RDD中的每个分区被子RDD中的多个分区使用。血统解决了什么问题?在spark的容错机制中,当一个节点宕机了,进行容错恢复时,对窄依赖来讲:计算时只要把丢失的父RDD相应的分区重新计算即可,其他分区不用计算,不依赖于其他的节点。例如:图1,如果RDD_1中原创 2020-07-21 16:00:32 · 829 阅读 · 0 评论 -
Flink之时间语义与Wartermark
时间语义与Wartermark时间语义乱序数据的处理水位线(Watermark)三级目录时间语义Event Time:事件创建的时间Ingestion Time:数据进入Flink的时间Processing Time: 执行操作算子的本地系统时间,与机器相关在代码中设置EventTime//从调用时刻开始给env创建的每一个stream追加时间特征env.setStreamTimeCharacteristic(TimeCharacteristic.EventTime)乱序数据的处理当Fl原创 2020-06-10 14:52:18 · 200 阅读 · 0 评论 -
Flink之window
窗口分配器Flink提供了通用的windowAssigner1、滚动窗口(tumblingwindow)2、滑动窗口(slidingwindow)3、会话窗口(sessionwindow)4、全局窗口(globalwindow)创建不同类型的窗口滚动时间窗口:.timeWindow(Time.second(15))滑动时间窗口:.timeWindow(Time.second(15), Time.second(5))会话窗口:.window(EventTimeSessionWindows.w原创 2020-06-02 15:16:32 · 108 阅读 · 0 评论 -
Hive之DDL
一、创建数据库1、创建数据库,并指定数据库在HDFS中存放的位置create database if not exists db_hive2 location '/db_hive2.db';2、查询数据库1)、显示数据库show databases;2)、过滤显示查询数据库show databases like 'db_hive*';3、查看数据库1)、显示数据库信息de...原创 2020-06-02 09:55:30 · 161 阅读 · 0 评论 -
Hadoop之企业优化
MapReduce跑的慢的原因MapReduce程序效率的瓶颈在于两点:1、计算机性能cpu、内存、网络、磁盘健康2、I/O操作优化(1)、数据倾斜(2)、Map和Reduce数设置不合理(3)、Map运行时间太长,导致Reduce等待时间太久(4)、小文件过多(5)、大量的不可切分的超大文件(6)、溢写次数过多(7)、Mager次数过多等MapRedeuce的优化方法M...原创 2020-04-04 21:36:29 · 116 阅读 · 0 评论 -
Yarn资源调度器
Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等的运算程序则相当于运行于操作系统之上的应用程序。Yarn组成部分:1、ResourceManager(RM)主要作用如下:(1)处理客户端请求(2)监控NodeManager(3)启动或监控ApplicatoneMaster(4)资源的分配与调度2、NodeManage...原创 2020-04-04 20:03:25 · 110 阅读 · 0 评论 -
hadoop之压缩
压缩策略和原则1、压缩是提高Hadoop运行效率的优化策略。通过对Mapper和Reduce运行过程的数据压缩,以减少磁盘I/O,以提高MR程序的运行速度。注意:采用压缩技术减少了磁盘I/O,但也给CPU的运算增加了负担,所以压缩技术运用的当能提高性能,但运用不当也会降低性能。压缩的基本原则:(1)、运算密集型的JOb,少用压缩技术(2)、I/O密集型的JOb,多用压缩技术2、MR支...原创 2020-04-04 17:09:44 · 87 阅读 · 0 评论 -
Hadoop之组成部分
Hadoop组成(面试重点)原创 2020-03-25 20:40:32 · 151 阅读 · 0 评论