
spark基础
luoyunfan6
LuoYunfan
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
spark消费kafka数据,并把偏移量保存在redis
实现功能:从kafka读取某一主题,消费者组的偏移量基于读出的offset,创建kafka读取流程把各个分区的偏移量 保存到redis。import Kafka010.Utils.{MyKafkaUtils, RedisUtilsDemo}import org.apache.kafka.clients.consumer.ConsumerRecordimport org.ap...原创 2019-12-26 20:13:28 · 1212 阅读 · 0 评论 -
spark structured streaming和spark streaming
https://blog.csdn.net/asd136912/article/details/88320740原创 2019-11-18 18:53:39 · 294 阅读 · 1 评论 -
spark的安装配置
Spark运行模式Local 多用于本地测试,如在eclipse,idea中写程序测试等。Standalone是Spark自带的一个资源调度框架,它支持完全分布式。YarnHadoop生态圈里面的一个资源调度框架,Spark也是可以基于Yarn来计算的。Mesos资源调度框架。spark集群的安装基本条件:同步时间、免密登录、关闭防火墙、安装JDK1.81.上传安装包到...原创 2019-11-17 18:04:02 · 318 阅读 · 0 评论 -
SparkStreaming窗口函数
窗口函数的应用中有三个时间的参数。1、批次时间val ssc = new StreamingContext(conf,Milliseconds(5000))2、窗口大小时间(Second(15))val windowWc =pairs.reduceByKeyAndWindow((a:Int,b:Int)=>(a+b),Seconds(15),Seconds(10))...原创 2019-11-17 17:14:40 · 559 阅读 · 0 评论 -
SparkStreaming过滤黑名单数据简单案例
根据自己制定的规则,判断出黑名单ip,保存起来。在后续产生的数据中,与黑名单数据进行比对,进行筛选。import org.apache.spark.SparkContextimport org.apache.spark.rdd.RDDimport org.apache.spark.sql.SparkSessionimport org.apache.spark.storage.Sto...原创 2019-11-17 14:22:58 · 694 阅读 · 0 评论 -
SparkStreaming对接kafka的两种方式
第一种:receiver方式。1、receiver不停地从kafka拉取数据,n秒钟(程序设置的)拉取产生一批数据2、这种方式偏移量zookeeper帮我们管理,灵活性差这种方式有缺点: receiver从Kafka中获取的数据都存储在Spark Executor的内存中,某个时间段内拉去的数据可能会大于某台机器executor分配的内存数量,部分数据会溢出丢失。 针对这一问题...原创 2019-11-17 13:33:11 · 808 阅读 · 0 评论 -
SparkStreaming关于Driver进程的高可用问题
SparkStreaming程序一旦启动之后,除非我们手动停止,否则会一直处于运行的状态。Driver只是一个简单的进程,在程序运行过程中,有可能挂掉,此时SparkStreaming应用会停止运行。所以实现Driver的HA就有必要(如果使用的Client模式就无法实现Driver HA ,这里针对的是cluster模式)。准备一段代码package spark.SparkStre...原创 2019-11-16 21:31:19 · 473 阅读 · 0 评论 -
SparkCoreSqlStreaming联合使用案例
需求:实时统计所有商品销售量的top3(不同厂商同一商品)测试数据:001 mi moblie002 mi moblie003 mi moblie004 mi moblie005 huawei moblie006 huawei moblie007 huawei moblie008 Oppo moblie009 Oppo moblie010 uniqlo colthi...原创 2019-11-16 19:03:50 · 325 阅读 · 0 评论 -
关于SparkStreaming的checkpoint问题
在流式运行程序运行时,必须全天24小时的运行,因此我们必须应对与应用程序逻辑无关的故障(例如系统故障,JVM崩溃等)为此,Spark Streaming需要将足够的信息检查点指向容错存储系统,以便可以从故障中恢复。检查点有两种类型的数据。1、元数据检查点---将定义流计算的信息保存到HDFS等容错存储中。这用于从运行流应用程序的驱动程序的节点的故障中恢复。元数据包括: ...原创 2019-11-16 18:00:01 · 769 阅读 · 0 评论 -
SparkStreaming整合mysql
测试过程:1.向虚拟机mini1的7777端口发送一个个的单词信息2.Streaming程序接受7777端口的数据,并做处理。3.将DStream[(String, Int)]转化成RDD写入到mysql程序如下:package spark.SparkStreaming.fileimport java.sql.DriverManagerimport org.apache.spar...原创 2019-11-16 09:13:35 · 751 阅读 · 1 评论 -
SparkStreaming读取hdfs文件
package spark.SparkStreaming.fileimport org.apache.spark.SparkContextimport org.apache.spark.sql.SparkSessionimport org.apache.spark.streaming.{Seconds, StreamingContext}/** * Description:统计h...原创 2019-11-15 21:46:58 · 1681 阅读 · 0 评论 -
SparkStreaming对接kafka代码测试
receiver方式的代码测试package spark.SparkStreaming.testimport kafka.serializer.StringDecoderimport org.apache.kafka.common.serialization.StringDeserializerimport org.apache.spark.storage.StorageLevelim...原创 2019-11-15 21:01:56 · 373 阅读 · 0 评论 -
Spark之textFile切片详解
textFilespark所有基于文件的输入方法,都支持目录读取、压缩文件、和通配符, 比如:textFile("/my/directory")textFile("/my/directory/*.txt")textFile("/my/directory/*.gz")该方法还采用可选的第二个参数来控制文件的分区数,分区规则可以参考源码。首先按住crtl,鼠标左键点击进入textF...原创 2019-11-08 21:11:37 · 3766 阅读 · 1 评论 -
SparkOnHive
一、第一种使用内置的hive(一般来说不会用)1.先启动spark集群2.进入到spark-shell3.在spark-shell下操作hivespark.sql("show tables").show 查询所有hive的表spark.sql("CREATE TABLE IF NOT EXISTS src (key INT,value STRING)") 创建表spark.sql("L...原创 2019-11-08 19:28:38 · 675 阅读 · 0 评论 -
SparkSql的输入输出
SparkSQL的输入和输出SparkSQL的输入写法一:SparkSession对象.read.json(“路径”)SparkSession对象.read.jdbc(“路径”)SparkSession对象.read.csv(“路径”)SparkSession对象.read. parquet(“路径”) Parquet格式经常在Hadoop生态圈中被使用,它也支持Spark SQL的全...原创 2019-11-08 14:31:59 · 1123 阅读 · 0 评论 -
SparkStreaming------实现简单的wordcount
每五秒计算一次mini1:8888(mini1是虚拟机ip映射名称)收到的数据可以用nc命令模拟产生数据:在mini1上执行nc -lk 8888import org.apache.spark.streaming.{Seconds, StreamingContext}import org.apache.spark.{SparkConf, SparkContext}object St...原创 2019-11-05 21:32:32 · 1115 阅读 · 0 评论 -
SparkSql------自定义函数UDF和UDAF
UDF测试数据{"name":"aaa", "age":20}{"name":"bbb", "age":30, "facevalue":80}{"name":"ccc", "age":28, "facevalue":80}{"name":"ddd", "age":28, "facevalue":90}案例(scala语言)import org.apache.spark....原创 2019-11-05 17:52:19 · 206 阅读 · 0 评论 -
SparkSql------两种操作数据的方式(DSL和SQL)
测试数据{"name":"aaa", "age":20}{"name":"lbbb", "age":30, "facevalue":80}{"name":"ccc", "age":28, "facevalue":80}{"name":"ddd", "age":28, "facevalue":90}DSL风格语法import org.apache.spark.sql.{Dat...原创 2019-11-05 17:41:36 · 1617 阅读 · 0 评论 -
SparkSql------RDD、DataFrame、DataSet之间的相互转化
在老的版本中,SparkSQL提供两种SQL查询起始点,一个叫SQLContext,用于Spark自己提供的SQL查询,一个叫HiveContext,用于连接Hive的查询,SparkSession是Spark最新的SQL查询起始点,实质上是SQLContext和HiveContext的组合,所以在SQLContext和HiveContext上可用的API在SparkSession上同样是可以使用...原创 2019-11-05 17:23:51 · 551 阅读 · 0 评论 -
SparkSql------RDD、DataFrame、DataSet
RDDRDD是一个懒执行的不可变的可以支持Functional(函数式编程)的并行数据集合。RDD的最大好处就是简单,API的人性化程度很高。RDD的劣势是性能限制,它是一个JVM驻内存对象,这也就决定了存在GC的限制和数据增加时Java序列化成本的升高。DataFrame简单来说DataFrame是RDD+Schema的集合什么是Schema?之前我们学习过MySQL...原创 2019-11-05 15:57:16 · 349 阅读 · 0 评论 -
Spark算子总结
参考:https://blog.csdn.net/fortuna_i/article/details/81170565https://www.cnblogs.com/alexzhang92/p/10750740.htmlTransformation1.mapmap的输入变换函数应用于RDD中所有元素,而mapPartitions应用于所有分区。区别于mapPartitions主要在于调用...原创 2019-11-02 14:25:20 · 424 阅读 · 0 评论 -
SparkStreaming整合flume
有两种方式,一种是push的方式flume主动推数据给sparkstreaming有个弊端是一个sparkstream只能和一个flume对接<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-streaming...原创 2019-10-29 21:30:29 · 150 阅读 · 0 评论