Spark
文章平均质量分 89
卡其色的夏日
大数据爱好者
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Spark性能优化
Spark性能优化 调优基本原则 基本概念和原则 首先,要搞清楚Spark的几个基本概念和原则,否则系统的性能调优无从谈起:每一台host上面可以并行N个worker,每一个worker下面可以并行M个executor,task们会被分配到executor上面去执行。Stage指的是一组并行运行的task,stage内部是不能出现shuffle的,因为shuffle的就像篱笆一样阻止了并行task的运行,遇到shuffle就意味着到了stage的边界。CPU的core数量..原创 2021-01-04 20:34:46 · 1261 阅读 · 0 评论 -
2.大数据技术之_第三章到第五章:SparkSQL数据源
第3章 SparkSQL数据源3.1 通用加载/保存方法3.1.1 手动指定选项Spark SQL的DataFrame接口支持多种数据源的操作。一个DataFrame可以进行RDDs方式的操作,也可以被注册为临时表。把DataFrame注册为临时表之后,就可以对该DataFrame执行SQL查询。Spark SQL的默认数据源为Parquet格式。数据源为Parquet文件时,Spark SQL可以方便的执行所有的操作。修改配置项spark.sql.sources.default,可修改默认原创 2020-08-19 13:23:59 · 419 阅读 · 0 评论 -
5.大数据技术之SparkCore_第三到五章:键值对RDD数据分区/读取保存/RDD编程进阶
Spark目前支持Hash分区和Range分区,用户也可以自定义分区,Hash分区为当前的默认分区,Spark中分区器直接决定了RDD中分区的个数、RDD中每条数据经过Shuffle过程属于哪个分区和Reduce的个数注意:(1)只有Key-Value类型的RDD才有分区的,非Key-Value类型的RDD分区的值是None(2)每个RDD的分区ID范围:0~numPartitions-1,决定这个值是属于那个分区的。3.1 获取RDD分区可以通过使用RDD的partitioner 属性来获原创 2020-08-19 12:26:09 · 316 阅读 · 0 评论 -
4.大数据技术之SparkCore_第二章:Action算子操作
2.4 Action2.4.1 reduce(func)案例1. 作用:通过func函数聚集RDD中的所有元素,先聚合分区内数据,再聚合分区间数据。2. 需求:创建一个RDD,将所有元素聚合得到结果(1)创建一个RDD[Int]scala> val rdd1 = sc.makeRDD(1 to 10,2)rdd1: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[85] at makeRDD at <consol原创 2020-08-19 12:16:48 · 710 阅读 · 0 评论 -
3.大数据技术之SparkCore_第二章:RDD编程
2.1 编程模型在Spark中,RDD被表示为对象,通过对象上的方法调用来对RDD进行转换。经过一系列的transformations定义RDD之后,就可以调用actions触发RDD的计算,action可以是向应用程序返回结果(count, collect等),或者是向存储系统保存数据(saveAsTextFile等)。在Spark中,只有遇到action,才会执行RDD的计算(即延迟计算),这样在运行时可以通过管道的方式传输多个转换。要使用Spark,开发者需要编写一个Driver程序,...原创 2020-08-19 12:12:37 · 407 阅读 · 0 评论 -
2.大数据技术之SparkCore_第一章:RDD概述
第1章 RDD概述1.1 什么是RDDRDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象。代码中是一个抽象类,它代表一个弹性的、不可变、可分区、里面的元素可并行计算的集合。1.2 RDD的属性一组分区(Partition),即数据集的基本组成单位; 一个计算每个分区的函数; RDD之间的依赖关系; 一个Partitioner,即RDD的分片函数; 一个列表,存储存取每个Partition的优先位置(prefe.原创 2020-08-19 12:03:03 · 194 阅读 · 0 评论 -
1.大数据技术之Spark基础
第1章 Spark概述 什么是Spark Spark是一种快速、通用、可扩展的大数据分析引擎,2009年诞生于加州大学伯克利分校AMPLab,2010年开源,2013年6月成为Apache孵化项目,2014年2月成为Apache顶级项目。项目是用Scala进行编写。 Spark内置模块 Spark Core:实现了Spark的基本功能,包含任务调度、内存管理、错误恢复、与存储系统交互等模块。Spark Core中还包含了对弹性分布式数据集(Resilient Distribu...原创 2020-08-19 12:00:38 · 558 阅读 · 0 评论
分享