Spark
学习·笔记
一个专属于自己的隐秘地方,在那里我们可以远离压力与忧虑,可以放松自我
展开
-
Spark中的小案例(RNG S8 失败后的微博评论)
rng_comment.txt文件中的数据说明字段字段含义index数据idchild_comment回复数量comment_time评论时间content评论内容da_v微博个人认证like_status赞pic图片评论urluser_id微博用户iduser_name微博用户名vip_rank微博会...原创 2020-04-24 11:42:55 · 3338 阅读 · 0 评论 -
Structured Streaming介绍、整合Kafka、整合MySQL
Spark StreamingSpark Streaming针对实时数据流,提供了一套可扩展、高吞吐、可容错的流式计算模型。Spark Streaming接收实时数据源的数据,切分成很多小的batches,然后被Spark Engine执行,产出同样由很多小的batchs组成的结果流。本质上,这是一种micro-batch(微批处理)的方式处理不足在于处理延时较高(无法优化到秒以下的数量级...原创 2020-04-20 10:50:47 · 5337 阅读 · 0 评论 -
StructuredStreaming_练习题(读取文件、Spark SQL)
1、使用Structured Streaming读取Socket数据,把单词和单词的反转组成 json 格式写入到当前目录中的file文件夹中代码块:package com.czxy.StructuredStreaming_0417import org.apache.spark.SparkContextimport org.apache.spark.sql.streaming.{Proc...原创 2020-04-20 09:41:24 · 5689 阅读 · 0 评论 -
Spark on Kafka Receiver 和 Direct Kafka手动维护偏移量
常用命令#启动kafka/export/servers/kafka/bin/kafka-server-start.sh -daemon /export/servers/kafka/config/server.properties#停止kafka/export/servers/kafka/bin/kafka-server-stop.sh#查看topic信息/export/se...原创 2020-04-20 09:08:11 · 5782 阅读 · 0 评论 -
Spark Streaming的Word Count
Spark Streaming的Word Count需求&准备图解首先在linux服务器上安装nc工具nc是netcat的简称,原本是用来设置路由器,我们可以利用它向某个端口发送数据yum install -y nc启动一个服务端并开放9999端口,等一下往这个端口发数据nc -lk 9999发送数据代码package cn.itcast.streaming...原创 2020-04-20 08:58:23 · 4755 阅读 · 0 评论 -
Spark Streaming 简介、原理 、DStream相关操作
Spark Streaming介绍官网:http://spark.apache.org/streaming/概述:Spark Streaming是一个基于Spark Core之上的实时计算框架,可以从很多数据源消费数据并对数据进行实时的处理,具有高吞吐量和容错能力强等特点Spark Streaming的特点1.易用可以像编写离线批处理一样去编写流式程序,支持java/scala/p...原创 2020-04-20 08:43:06 · 4833 阅读 · 0 评论 -
Spark_SQL自定义函数 UDF UDAF UDTF
自定义函数分类类似于hive当中的自定义函数, spark同样可以使用自定义函数来实现新的功能。spark中的自定义函数有如下3类1.UDF(User-Defined-Function) 输入一行,输出一行2.UDAF(User-Defined Aggregation Funcation) 输入多行,输出一行3.UDTF(User-Define...原创 2020-04-20 08:21:40 · 4947 阅读 · 0 评论 -
Spark_Spark On Hive
概述●官网http://spark.apache.org/docs/latest/sql-data-sources-hive-tables.html●Hive查询流程及原理执行HQL时,先到MySQL元数据库中查找描述信息,然后解析HQL并根据描述信息生成MR任务Hive将SQL转成MapReduce执行速度慢使用SparkSQL整合Hive其实就是让SparkSQL去加载Hive 的...原创 2020-04-17 11:14:19 · 4700 阅读 · 0 评论 -
saprk _ 开窗函数
基础概念●介绍开窗函数的引入是为了既显示聚集前的数据,又显示聚集后的数据。即在每一行的最后一列添加聚合函数的结果。开窗用于为行定义一个窗口(这里的窗口是指运算将要操作的行的集合),它对一组值进行操作,不需要使用 GROUP BY 子句对数据进行分组,能够在同一行中同时返回基础行的列和聚合列。●聚合函数和开窗函数聚合函数是将多行变成一行,count,avg…开窗函数是将一行变成多行;聚...原创 2020-04-17 11:11:08 · 4451 阅读 · 0 评论 -
Spark SQL_sql查询 RDD、DF、DS之间相互转化 Spark SQL完成WordCount 多数据源交互
创建DataFrame/DataSetSpark会根据文件信息尝试着去推断DataFrame/DataSet的Schema,当然我们也可以手动指定,手动指定的方式有以下几种:第1种:指定列名添加Schema第2种:通过StructType指定Schema第3种:编写样例类,利用反射机制推断Schema指定列名添加Schemapackage cn.itcast.sql import ...原创 2020-04-17 11:07:10 · 4786 阅读 · 0 评论 -
Spark SQL的简介_体验
Spark SQL 简介Spark SQL官方介绍●官网http://spark.apache.org/sql/Spark SQL是Spark用来处理结构化数据的一个模块。Spark SQL还提供了多种使用方式,包括DataFrames API和Datasets API。但无论是哪种API或者是编程语言,它们都是基于同样的执行引擎,因此你可以在不同的API之间随意切换,它们各有各的特点...原创 2020-04-17 11:03:48 · 4735 阅读 · 0 评论 -
Spark_读取小文件 数据写入MySQL并读取_spark-HadoopAPI SequenceFile对象文件 数据写入hbase并读取
RDD数据源普通文本文件sc.textFile("./dir/*.txt")如果传递目录,则将目录下的所有文件读取作为RDD。文件路径支持通配符。但是这样对于大量的小文件读取效率并不高,应该使用wholeTextFilesdef wholeTextFiles(path: String, minPartitions: Int = defaultMinPartitions): RDD[(S...原创 2020-04-17 10:50:24 · 4816 阅读 · 0 评论 -
Spark_RDD累加器和广播变量
RDD累加器和广播变量在默认情况下,当Spark在集群的多个不同节点的多个任务上并行运行一个函数时,它会把函数中涉及到的每个变量,在每个任务上都生成一个副本。但是,有时候需要在多个任务之间共享变量,或者在任务(Task)和任务控制节点(Driver Program)之间共享变量。为了满足这种需求,Spark提供了两种类型的变量:1.累加器accumulators:累加器支持在所有不同节点之间...原创 2020-04-17 10:44:20 · 4681 阅读 · 0 评论 -
Spark原理
基本概念http://spark.apache.org/docs/latest/cluster-overview.html●名词解释1.Application:指的是用户编写的Spark应用程序/代码,包含了Driver功能代码和分布在集群中多个节点上运行的Executor代码。2.Driver:Spark中的Driver即运行上述Application的Main()函数并且创建Spa...原创 2020-04-17 10:38:21 · 4662 阅读 · 0 评论 -
Spark_RDD宽窄依赖关系
宽窄依赖●两种依赖关系类型RDD和它依赖的父RDD的关系有两种不同的类型,即宽依赖(wide dependency/shuffle dependency)窄依赖(narrow dependency)●图解●如何区分宽窄依赖窄依赖:父RDD的一个分区只会被子RDD的一个分区依赖宽依赖:父RDD的一个分区会被子RDD的多个分区依赖(涉及到shuffle)●面试题:子RDD的一个...原创 2020-04-17 10:33:51 · 4735 阅读 · 0 评论 -
Spark_DAG的生成和划分Stage
DAG介绍●DAG是什么DAG(Directed Acyclic Graph有向无环图)指的是数据转换执行的过程,有方向,无闭环(其实就是RDD执行的流程)原始的RDD通过一系列的转换操作就形成了DAG有向无环图,任务执行时,可以按照DAG的描述,执行真正的计算(数据被操作的一个过程)●DAG的边界开始:通过SparkContext创建的RDD结束:触发Action,一旦触发Actio...原创 2020-04-17 10:32:49 · 4712 阅读 · 0 评论 -
RDD容错机制Checkpoint
RDD容错机制Checkpoint●持久化的局限持久化/缓存可以把数据放在内存中,虽然是快速的,但是也是最不可靠的;也可以把数据放在磁盘上,也不是完全可靠的!例如磁盘会损坏等。●问题解决Checkpoint的产生就是为了更加可靠的数据持久化,在Checkpoint的时候一般把数据放在在HDFS上,这就天然的借助了HDFS天生的高容错、高可靠来实现数据最大程度上的安全,实现了RDD的容错和高...原创 2020-04-17 10:28:18 · 4696 阅读 · 0 评论 -
spark_RDD的持久化_缓存
RDD的持久化/缓存在实际开发中某些RDD的计算或转换可能会比较耗费时间,如果这些RDD后续还会频繁的被使用到,那么可以将这些RDD进行持久化/缓存,这样下次再使用到的时候就不用再重新计算了,提高了程序运行的效率持久化/缓存API详解●persist方法和cache方法RDD通过persist或cache方法可以将前面的计算结果缓存,但是并不是这两个方法被调用时立即缓存,而是触发后面的ac...原创 2020-04-17 10:25:52 · 4679 阅读 · 0 评论 -
Spark基础练习题(RDD)
题目如下????1、创建一个1-10数组的RDD,将所有元素*2形成新的RDD2、创建一个10-20数组的RDD,使用mapPartitions将所有元素*2形成新的RDD3、创建一个元素为 1-5 的RDD,运用 flatMap创建一个新的 RDD,新的 RDD 为原 RDD 每个元素的 平方和三次方 来组成 1,1,4,8,9,27…4、创建一个 4 个分区的 RDD数据为Array(10,...原创 2020-04-08 19:51:13 · 12075 阅读 · 1 评论 -
Spark的算子练习题
Spark的算子练习题读取文件的数据test.txt一共有多少个小于20岁的人参加考试?一共有多少个等于20岁的人参加考试?一共有多少个大于20岁的人参加考试?一共有多个男生参加考试?一共有多少个女生参加考试?12班有多少人参加考试?13班有多少人参加考试?语文科目的平均成绩是多少?数学科目的平均成绩是多少?英语科目的平均成绩是多少?单个人平均成绩是多少?12班平均成绩...转载 2020-04-08 19:42:44 · 5438 阅读 · 0 评论 -
Spark的安装部署
安装部署之前,先来看看为什么要安装它这个版本!!!我们安装的是 Spark2.2.0目前企业中使用最多的稳定版使用Apache版还是CDH版?1.Apache版直接下载官方编译好的基于Apache Hadoop的Spark即可2.自己下载Spark源码基于CDH Hadoop重新编译因为CDH5.14版 Spark基于Spark1.6版本较低,且为了推广自家的Impala对Spark ...原创 2020-04-08 14:30:51 · 4919 阅读 · 0 评论 -
Spark介绍
Spark1、什么是Spark是基于内存的用于大规模数据处理(离线计算、实时计算、快速查询)的统一分析引擎。也是一个生态系统。2、官网http://spark.apache.orghttp://spark.apachecn.orgSpark特点● 速度之快与Hadoop的MapReduce相比,Spark基于内存的运算要快100倍以上,基于硬盘的运算也要快10倍以上。Spark...原创 2020-04-08 14:11:00 · 5750 阅读 · 0 评论