Spark
文章平均质量分 93
九度-
资深数据研发工程师
展开
-
Hadoop和Spark区别,为什么Spark比Hadoop处理速度快?
h s 原理 (并行计算 MR原理) Hadoop作业称为Job,Job分为Map、Shuffle和Reduce阶段,MAP和Reduce的Task都基于JVM进程运行的。MAP阶段:从HDFS读取数据,split文件产生task,通过对应数量的map处理,map输出的每一个键值对通过key的hash值计算一个partition,数据通过环形缓冲区,sort、spill、merge生成data和...原创 2021-04-20 20:36:31 · 1775 阅读 · 0 评论 -
spark toDS() toDF()和import spark.implicits._ 报红,无法导入
因为是toDS() toDF() 从import spark.implicits._ 里面来的错误代码问题就出现在这里的spark上,这里的spark不是某个包下面的,而是SparkSession.builder()对应的变量值,下面是正确的写法...原创 2019-10-24 16:41:47 · 6388 阅读 · 0 评论 -
Spark Executor内存管理
我们都知道 Spark 能够有效的利用内存并进行分布式计算,其内存管理模块在整个系统中扮演着非常重要的角色。为了更好地利用 Spark,深入地理解其内存管理模型具有非常重要的意义,这有助于我们对 Spark 进行更好的调优;在出现各种内存问题时,能够摸清头脑,找到哪块内存区域出现问题。首先我们知道在执行 Spark 的应用程序时,Spark 集群会启动 Driver 和 Executor 两种...转载 2019-10-23 21:00:27 · 3471 阅读 · 0 评论 -
Spark cache/persist区别和cache使用误区分析
Spark cache的用法及其误区:一、使用Cache注意下面三点(1)cache之后一定不能立即有其它算子,不能直接去接算子。因为在实际工作的时候,cache后有算子的话,它每次都会重新触发这个计算过程。(2)cache不是一个action,运行它的时候没有执行一个作业。(3)cache缓存如何让它失效:unpersist,它是立即执行的。persist是lazy级别的(没有计...原创 2018-01-11 17:59:00 · 21163 阅读 · 5 评论 -
Spark处理百亿规模数据优化实战
本优化是生产环境下用Spark处理百亿规模数据的一些优化实战,并成功将程序的速度提升一倍(涉及到敏感信息本文在2018-07-04号将其删除,阅读上可能显得不完整)下面介绍一些基本的优化手段本文于2017-07-16号书写Spark任务优化本节主要从内存调优、高性能算子、数据结构优化、广播大变量和小表调优、动态并行度调优、Spark文件切分策略调优来介绍Spark处理大规模数据的一...原创 2018-07-24 11:15:33 · 20183 阅读 · 9 评论 -
百亿条数据复杂业务场景下通用归因模型设计实现
1 背景互联网流量应用的一个重要方面是计算各页面、入口的转化,深度洞察用户行为轨迹,数据驱动精细化运营,对一些大公司来说也是如此。如何建设公司级统一口径转化导流分析数据,满足多个业务对转化数据的需求,为公司各业务部门提供转化分析数据(各入口或者页面带来的商家、活动页、预定、订单),基于此我们设计了转化归因来满足业务需求。归因又叫挂单:用户打开某一APP,在浏览N个页面之后,遇到有下单意向的...原创 2019-10-23 10:50:21 · 2390 阅读 · 0 评论 -
Spark Shuffle的fetch操作、数据存储、文件个数、排序算法和Hadoop的区别
Spark Shuffle的fetch操作、数据存储、文件个数、排序算法和Hadoop的区别原创 2017-09-07 19:52:40 · 2156 阅读 · 0 评论 -
Spark的Action执行、 Transformation转换、Controller控制三种操作类型的使用
Spark的Action执行、 Transformation转换、Controller控制三种操作类型的使用原创 2017-11-28 21:18:30 · 3726 阅读 · 0 评论 -
spark 读取ORC文件时间太长(计算Partition时间太长)且产出orc单个文件中stripe个数太多问题解决方案
1、背景: 控制上游文件个数每天7000个,每个文件大小小于256M,50亿条+,orc格式。查看每个文件的stripe个数,500个左右,查询命令:hdfs fsck viewfs://hadoop/nn01/warehouse/…….db/……/partition_date=2017-11-11/part-06999 -files -blocks;stripe个数查看命令...原创 2017-11-23 16:37:49 · 11957 阅读 · 9 评论 -
spark2.2错误 java.lang.UnsupportedOperationException: No Encoder found for org.apache.spark.sql.Row解决
spark2.2错误 java.lang.UnsupportedOperationException: No Encoder found for org.apache.spark.sql.Row解决办1、错误描述:Exception in thread "main" java.lang.UnsupportedOperationException: No Encoder found for...原创 2017-10-11 16:41:56 · 14624 阅读 · 2 评论 -
Spark统一内存管理:UnifiedMemoryManager
@DT大数据梦工厂Spark统一内存管理:UnifiedMemoryManager,内存管理图:Spark静态内存管理:StaticMemoryManager请看:http://blog.csdn.net/aijiudu/article/details/77885953一、统一内存管理:Execution和Storage之间是软边界,任一方都可以从另一方借用内存。Execution...原创 2017-09-19 17:39:09 · 2205 阅读 · 0 评论 -
Spark静态内存管理:StaticMemoryManager
MemoryManager将堆空间静态分区为不相交的区域。分别通过spark.shuffle.memoryFraction和spark.storage.memoryFraction来确定执行和存储区域的大小 。这两个区域是完全分离的,使得两者都不能从另一个借用内存。例如Executor的可用Heap大小是10G,实际上Spark只能使用90%,也就是9G的大小,是由spark.storag...原创 2017-09-07 20:00:58 · 858 阅读 · 0 评论 -
Spark cache和persist使用场景和区别、广播和累加器使用方式和原理
spark广播、累加器和RDD持久化对spark广播、累加器和RDD持久化的介绍,并且通过代码实战演示原创 2017-02-19 21:02:28 · 5782 阅读 · 0 评论