spark
风_间
不积跬步无以至千里
展开
-
spark小案例——sparkstreaming消费Kafka
使用sparkstreaming消费Kafka的数据,实现word count依赖<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-streaming-kafka-0-10_2.12</artifactId> <version>3.0.0</version></dependency><depe原创 2021-10-12 12:23:29 · 1465 阅读 · 0 评论 -
spark小案例——RDD,sparkSQL
分别使用RDD和SparkSQL两种方式解决相同的数据分析问题;项目数据项目需求使用RDD和SQL两种方式对数据清洗清洗需求如下:统计每个店铺分别有多少商品统计每个店铺的总销售额统计每个店铺销售额最高的前三商品,输出内容包括:店铺名,商品名和销售额其中销售额为0的商品不进行统计计算,例如:如果某个店铺销售为 0则不进行统计 。涉及到的pom依赖 <properties> <scala.version>2.12.10</scala.versio原创 2021-10-10 14:09:00 · 1529 阅读 · 0 评论 -
spark小案例——RDD,broadcast
RDD小案例object RDD01 { def main(args: Array[String]): Unit = { val sparkConf: SparkConf = new SparkConf().setMaster("local[*]").setAppName("RDD01") val sc: SparkContext = new SparkContext(sparkConf) //从集合中创建RDD,spark提供了两个方法,parallelize和makeRD原创 2021-10-10 10:40:08 · 907 阅读 · 0 评论 -
spark案例——wordcount
local本地模式添加pom依赖<properties> <scala.version>2.12.0</scala.version> </properties><dependencies> <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-library</arti原创 2021-10-09 10:49:59 · 601 阅读 · 0 评论 -
spark优化
1 Spark参数优化Executor端的内存主要分为三块:第一块就是让Task执行我们自己编写的代码时使用,默认占用总内存的20%;第二块是让task通过shuffle过程拉取上一个stage的task的输出后,进行聚合等操作时使用,默认也是占用总内存的20%;第三块是让RDD持久化时使用,默认占用总内存的60%。1.1 num-executors参数建议:一般每个Spark作业的运行一般设置50~100个左右的Executor进程比较合适,设置太多和太少都不合适,太少的话,无法有效充分利用集原创 2021-09-20 16:06:24 · 825 阅读 · 0 评论 -
Spark常见问题整理--面试前必看
一、job、stage、Task之间的关系是什么?一个job可以包含多个stage一个stage包含多个task二、job、stage、Task之间的关系是什么?每提交一个任务,就会创建一个job,即调用action算子的时候会创建job【当调用算子之后返回值不是RDD类型的就可以归为Action算子】根据宽依赖和窄依赖划分stage,如果是宽依赖,就新增一个stageTask数量实际上就是分区的数量三、什么是宽依赖、窄依赖?如果一个父RDD分区被多个子RDD的分区使用,就原创 2021-09-20 16:00:42 · 1069 阅读 · 0 评论
分享