Skip to content

Backend Site Posts

Spark Streaming(一) 基础知识介绍

本文介绍流处理的概念,流处理引擎环境和Apache Spark Streaming概述。 流处理 批数据处理是指通过固定的输入数据集运行计算逻辑,并在结束时产生结果。这意味着处理将在到达数据集末尾时停止。 相比之下,流处理是关于通过无界数据集运行计算逻辑,因此处理是连续且长时间运行的。 虽然批处理数据与流数据的区别主要在于有限性,但由于流数据的无界数据性质、实时数据的传入顺序、 数据到达的不同速率以及面对机器故障时对正确性和低延迟的期望,流数据处理要比批数据处理复杂得多,也更具挑战性。 流处理的挑战 流数据处理有它自己的一组独特的挑战,这些挑战是处理连续和无界数据的结果。…

SparkSQL 高级篇(一) 聚合操作

聚合操作 聚合操作是大数据分析过程中一个常用的操作,用来分析汇总数据,或者生成汇总报告。 聚合通常需要对整个数据集或一个或多个列进行某种形式的分组,然后对每个组应用聚合函数,如求和、计数或求平均值。Spark提供了许多常用的聚合函数。这里介绍下基本的聚合函数和分组聚合操作函数。 首先创建一个用于demo的DataFram val flight_summary = spark.read.format(“csv”).option(“header”,”true”) .option(“inferSchema”,”true”).load(“flight-summary.csv”) flight_summary.count()…

Spark SQL(一) 如何创建DataFrames

Spark SQL包含两个主要的部分,第一部分是DataFrames和Datasets, 第二部分是Catalyst optimizer. DataFrames和Datasets是结构性API的展示,定义了操作结构化数据的高层次API, 而Catalyst optimizer则是在背后对处理数据的逻辑进行优化,以加速处理数据的速度。 结构化数据通常有确定的格式,比如文本类数据格式CSV, XML, JSON。还有二进制数据:Avro,…

Spark RDD(三) 键值对RDD相关的转换和动作操作

本篇文章主要介绍和key/value pair RDD相关的转换(transformation)和动作(action)操作。 键值对RDD和普通RDD不同,在普通RDD中,一行数据代表一个单独的值,比如一个整数或者一个字符串。 而键值对RDD中一行数据是一个元组,在元组中第一个元素是key值,第二个元素值vaule值。 key和value的类型可以是简单类型也可以是负责的object或者另一个元组的结合。 如何创建一个key/value pair RDD呢? val…

Author Copyriht by BackendSite