Spark 源码解读(五)SparkContext的初始化之创建和启动DAGScheduler DAGScheduler主要用于在任务正式提交给TaskSchedulerImpl提交之前做一些准备工作,包括:创建job,将DAG中的RDD划分到不同的Stage,提交Stage等等。SparkCont ...
分类:
其他好文 时间:
2020-07-07 23:39:16
阅读次数:
102
from pyspark.sql import SparkSession,Rowfrom pyspark.sql.types import StructField, StructType, StringType, IntegerType, LongType data = [('Alex','male ...
分类:
其他好文 时间:
2020-07-07 15:40:28
阅读次数:
55
1.分区的作用 RDD 使用分区来分布式并行处理数据, 并且要做到尽量少的在不同的 Executor 之间使用网络交换数据, 所以当使用 RDD 读取数据的时候, 会尽量的在物理上靠近数据源, 比如说在读取 Cassandra 或者 HDFS 中数据的时候, 会尽量的保持 RDD 的分区和数据源的分 ...
分类:
其他好文 时间:
2020-07-07 13:11:09
阅读次数:
164
1、Spark是什么 Spark是一个高性能内存处理引擎,它提供了基于RDD的数据抽象,能够灵活处理分布式数据集 2、Spark核心概念 RDD:弹性分布式数据集,它是一个只读的、带分区的数据集合,并支持多种分布式算子。由下面5部分构成: 一组partition 每个partition的计算函数 所 ...
分类:
其他好文 时间:
2020-07-06 19:30:48
阅读次数:
57
RDD(Resilient Distributed Dataset)叫做分布式数据集,是Spark中最基本的数据抽象,它代表一个可分区,不可变,里面的元素可并行计算的结合。RDD具有自动容错、位置感知性调度和可伸缩性。RDD允许用户在执行多个查询时显示地将工作集换存在内存中,后续的查询能够重用工作集 ...
分类:
其他好文 时间:
2020-07-06 16:20:23
阅读次数:
61
Spark 分组取Top N运算 大数据处理中,对数据分组后,取TopN是非常常见的运算。 下面我们以一个例子来展示spark如何进行分组取Top的运算。 1、RDD方法分组取TopN from pyspark import SparkContext sc = SparkContext() 准备数据 ...
分类:
其他好文 时间:
2020-07-06 16:11:05
阅读次数:
78
DAG : 整个计算链可以抽象为一个DAG(有向无环图) Spark 的 DAG 作用: 记录了RDD之间的依赖关系,即RDD是通过何种变换生成的, 如下图:RDD1是RDD2的父RDD,通过flatMap操作生成 借助RDD之间的依赖关系,可以实现数据的容错, 即子分区(子RDD)数据丢失后,可以 ...
分类:
其他好文 时间:
2020-07-05 17:29:07
阅读次数:
56
RDD概述 RDD:弹性分布式数据集,初学时,可以把RDD看做是一种集合类型(和Array,List类比) RDD的特点: ①有容错性,即数据丢失是可以恢复的 ②有分区机制,可以并行的处理RDD数据 创建RDD的2种方式: ①将一个普通的集合类型(Array或List) ②通过Spark读取外部存储 ...
分类:
其他好文 时间:
2020-07-05 15:15:06
阅读次数:
66
RDD加上结构,比如说类名,就可以变成DataFrame,DataFrame,将每一类同这一类的类名绑定在一起就可以称为DataSet. spark sql 就是来处理dataframe和dataset这样的结构数据的。 spark sql使用的时候需要提供spark session环境。 // S ...
分类:
数据库 时间:
2020-07-01 18:40:18
阅读次数:
60
利用字典构建dataframe。 from pyspark.sql import SparkSession,Row spark = SparkSession.builder.appName("get_app_category").enableHiveSupport().config("spark.d ...
分类:
其他好文 时间:
2020-06-30 14:51:17
阅读次数:
59