![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Spark
江南阁
不忘初心
展开
-
Spark Streaming--1 文件默认数据源
文件数据流:能够读取所有HDFS API兼容的文件系统文件,通过fileStream方法进行读取 Spark Streaming 将会监控 dataDirectory 目录并不断处理移动进来的文件,记住目前不支持嵌套目录。文件需要有相同的数据格式 文件进入 dataDirectory的方式需要通过移动或者重命名来实现。 一旦文件移动进目录,则不能再修改,即便修改了也不会读取...原创 2019-01-02 17:18:40 · 191 阅读 · 0 评论 -
Spark集群安装
集群角色两个Master(类似于Hadoop中的yarn ,ResourceManager),多个worker安装步骤1. 解压[root@master Spark]# tar -zxvf spark-2.2.2-bin-hadoop2.7.tgz2. 修改文件名[root@master conf]# mv spark-env.sh.template spark-env...原创 2018-12-27 18:58:25 · 113 阅读 · 0 评论 -
Spark Streaming--Update
例如各大商城实时显示数据的案例:package com.jiangnan.sparkimport org.apache.spark.SparkConfimport org.apache.spark.streaming.{Seconds, StreamingContext}object TestStreamUpdate extends App { //配置对象 val con...原创 2019-01-02 17:18:21 · 133 阅读 · 0 评论 -
Spark SQL--商品订单案例
需求统计所有订单中每年的销售单数、销售总额 统计每年最大金额订单的销售额 统计每年最畅销货品(哪个货品销售额amount在当年最高,哪个就是最畅销货品)我们首先需要在scala里连接hive,然后创建这三个表,导入数据。创建以及导入数据与操作Hive一致。在Spark SQL中,可以完全接管Hive,一切操作都可以在spark中实现。主要是将Hive的一个配置文件hive-site....原创 2019-01-04 15:29:50 · 1331 阅读 · 0 评论 -
Spark RDD-DataFrame-DataSet三者异同
三者的共性RDD、DataFrame、Dataset全都是spark平台下的分布式弹性数据集,为处理超大型数据提供便利 三者都有惰性机制,在进行创建、转换,如map方法时,不会立即执行,只有在遇到Action如foreach时,三者才会开始遍历运算,极端情况下,如果代码里面有创建、转换,但是后面没有在Action中使用对应的结果,在执行时会被直接跳过. 三者都会根据spark的内存情况自动...原创 2019-01-04 15:28:34 · 761 阅读 · 0 评论 -
Spark SQL--UDAF函数
需求:需要通过继承 UserDefinedAggregateFunction 来实现自定义聚合函数。案例:计算一下员工的平均工资弱类型聚合函数:package com.jiangnan.sparkimport org.apache.spark.SparkConfimport org.apache.spark.sql.{Row, SparkSession}import org.apa...原创 2018-12-27 18:57:22 · 301 阅读 · 0 评论 -
Spark SQL--执行模式
DSL风格语法scala> val peopleDF = rdd.map{x => val strs=x.split(",");People(strs(0),strs(1).trim.toInt)}.toDFpeopleDF: org.apache.spark.sql.DataFrame = [name: string, age: int]scala> peopleDF...原创 2019-01-04 15:32:56 · 394 阅读 · 0 评论 -
Spark RDD--数据类型转换
将RDD,DataFrame,DataSet之间进行互相转换RDD -》 DataFrame 直接手动转换 scala> val people = spark.read.json("/opt/apps/Spark/spark-2.2.2-bin-hadoop2.7/examples/src/main/resources/people.json")people: org.ap...原创 2019-01-04 15:32:07 · 9143 阅读 · 0 评论 -
Spark Streaming--背压机制
背压机制默认情况下,Spark Streaming通过Receiver以生产者生产数据的速率接收数据,计算过程中会出现batch processing time > batch interval的情况,其中batch processing time 为实际计算一个批次花费时间, batch interval为Streaming应用设置的批处理间隔。这意味着Spark Streaming的...原创 2019-01-21 16:05:53 · 2336 阅读 · 0 评论 -
Spark--Storm 对比
对比对比点 Storm Spark Streaming 实时计算模型 纯实时,来一条数据,处理一条数据 准实时,对一个时间段内的数据收集起来,作为一个RDD,再处理 实时计算延迟度 毫秒级 秒级 吞吐量 低 高 事务机制 支持完善 支持,但不够完善 健壮性 / 容错性 ZooKeeper,Acker,非常强...原创 2018-12-27 18:58:53 · 151 阅读 · 0 评论 -
Spark Streaming--开窗函数over()
over()开窗函数 在使用聚合函数后,会将多行变成一行,而开窗函数是将一行变成多行; 并且在使用聚合函数后,如果要显示其他的列必须将列加入到group by中,而使用开窗函数后,可以不使用group by,直接将所有信息显示出来。 开窗函数适用于在每一行的最后一列添加聚合函数的结果。 开窗函数作用 为每条数据显示聚合信息.(聚合函数() over()) ...原创 2019-01-02 17:17:52 · 1984 阅读 · 0 评论 -
Spark RDD--2 计算日志相关数据
需求:日志格式:IP 命中率 响应时间 请求时间 请求方法 请求URL 请求协议 状态吗 响应大小 referer 用户代理1、计算每一个IP的访问次数(114.55.227.102,9348) 2、计算每一个视频访问的IP数视频:141081.mp4 独立IP数:2393 3、统计每小时CDN的流量00时 CDN流量=14G 计算方案:(注释部分为分布执行,未注释部...原创 2019-01-04 15:30:41 · 345 阅读 · 0 评论 -
Spark RDD--1 WordCount
简单的WordCount用scala编写(用的本地模式)package com.jiangnan.sparkimport org.apache.spark.rdd.RDDimport org.apache.spark.{SparkConf, SparkContext}object ScalaWordCount { def main(args: Array[String]): U...原创 2019-01-04 15:31:34 · 409 阅读 · 0 评论 -
Spark Streaming--3 Spark 与 Kafka集成
引入jar包依赖<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-streaming-kafka-0-10_2.11</artifactId> <version>${spark.version}</versio...原创 2019-01-02 17:19:11 · 392 阅读 · 0 评论 -
Spark Streaming--2 自定义数据源
通过继承Receiver,并实现onStart、onStop方法来自定义数据源采集。需要自己开一个sockect,,然后输入内容。nc -lk master 8888package com.jiangnan.sparkimport java.io.{BufferedReader, InputStreamReader}import java.net.Socketimport o...原创 2019-01-02 17:18:54 · 628 阅读 · 2 评论 -
Spark运行问题
问题一ERROR storage.DiskBlockObjectWriter: Uncaught exception while reverting partial writes to file /hadoop/application_1415632483774_448143/spark-local-20141127115224-9ca8/04/shuffle_1_1562_27java...转载 2019-09-10 11:03:44 · 602 阅读 · 0 评论