Spark
文章平均质量分 55
应用 -> 理解 -> 深入
upupfeng
贵有恒,要坚持~~
展开
-
Spark处理hdfs文件时获取文件名
Spark处理hdfs文件时,获取所处理文件的文件名原创 2022-04-02 18:27:08 · 2632 阅读 · 0 评论 -
Spark读取gz文件时忽略报错的文件
背景业务需要解析HDFS上的大量文件,文件使用gzip压缩,使用Spark core来实现,代码如下:sparkContext.textFile(srcPath);运行过程中报Caused by: java.io.EOFException: Unexpected end of input stream的错,导致Spark程序直接退出,不能完成解析。这个错误的原因就是其中有一个gz文件有误,不能被读取,程序直接抛出错误。解决办法执行解析程序前,写程序/脚本去检测文件,将异常的文件移走。之原创 2022-03-08 13:03:59 · 1509 阅读 · 0 评论 -
Spark Streaming fileStream基于文件的流计算
通过Spark Streaming提供的fileStream来实时处理落在hdfs中的文件原创 2020-09-12 18:57:01 · 1113 阅读 · 0 评论 -
使用Java发送Socket消息到Spark Streaming
使用Java ServerSocket来发送Socket消息,在Spark Streaming中通过socketTextStream来接收消息。原创 2020-09-12 00:56:15 · 556 阅读 · 0 评论 -
Spark Streaming中的有状态计算
Spark Streaming中使用updateStateByKey和mapWithState算子来实现有状态计算原创 2020-09-06 19:54:57 · 1719 阅读 · 0 评论 -
Spark on Yarn运行时加载的jar包
记录下spark on yarn运行时会加载的jar包原创 2020-08-22 10:19:07 · 3724 阅读 · 0 评论 -
slf4j-log4j12版本问题导致的NullPointerException
问题描述项目中使用log4j将日志写入flume,用的是flume-ng-log4jappender包。由于项目是Spark项目,要将项目打包后,在集群中spark-submit提交。集群中已经有了log4j、slf4j、flume等相关包,所以相关依赖都没有打包进去,直接使用集群中的。spark-submit后报如下错:Failed to instantiate SLF4J LoggerFactoryReported exception:java.lang.NullPointerExcept原创 2020-08-21 18:57:42 · 2394 阅读 · 0 评论 -
Hadoop Shuffle阶段为什么要排序?Spark为什么采用Sort Shuffle?
Hadoop shuffle阶段为什么要排序?Spark Shuffle为什么从最初的Hash Shuffle改成了Sort Shuffle?原创 2020-08-15 16:52:36 · 3669 阅读 · 2 评论 -
Spark支持的Join类型、Join的3种实现
说一下的Spark Join的分类及基本实现机制原创 2020-08-15 00:02:52 · 3936 阅读 · 1 评论 -
Spark Shuffle实现
记录一下Spark中Shuffle的实现方法和历史变更。原创 2020-08-12 22:43:41 · 322 阅读 · 0 评论 -
Spark Streaming高吞吐、高可靠的一些优化
分享一些Spark Streaming在使用中关于高吞吐和高可靠的优化。原创 2020-07-31 20:09:34 · 390 阅读 · 0 评论 -
谈谈Hadoop MapReduce和Spark MR实现
谈谈什么是MapReduce?Spark中MR思想的实现?原创 2020-07-27 17:33:12 · 316 阅读 · 0 评论 -
Spark中Task数量的分析
本文主要说一下Spark中Task相关概念、RDD计算时Task的数量、Spark Streaming计算时Task的数量。Task作为Spark作业执行的最小单位,Task的数量及运行快慢间接决定了作业运行的快慢。开始先说明一下Spark作业的几个核心概念:Job(作业):Spark根据行动操作触发提交作业,以行动操作将我们的代码切分为多个Job。Stage(调度阶段):每个Jo...原创 2020-02-29 20:39:39 · 9063 阅读 · 7 评论 -
Spark作业执行流程源码解析
本文梳理一下Spark作业执行的流程。文章目录相关概念概述源码解析作业提交划分&提交调度阶段生成ResultStage提交ResultStage提交任务执行任务结果处理Spark作业和任务调度系统是其核心,通过内部RDD的依赖DAG,使得模块之间的调用和处理变得游刃有余。相关概念Job(作业):通过行动操作生成的一个或多个调度阶段Stage:根据依赖关系划分的多个任务集,称为...原创 2020-02-23 13:38:13 · 376 阅读 · 0 评论 -
Spark RDD基本概念、宽窄依赖、转换行为操作
本文介绍一下rdd的基本属性概念、rdd的转换/行动操作、rdd的宽/窄依赖。文章目录RDD概述RDD的内部代码先看看基本概念的代码:常用的函数/算子案例小总结转换、行动算子一些常见的行动操作宽、窄依赖一些常见的宽窄依赖ReferenceRDD:Resilient Distributed Dataset 弹性分布式数据集,是Spark中的基本抽象。RDD表示可以并行操作的元素的不变分区集...原创 2020-02-22 12:44:56 · 578 阅读 · 0 评论 -
Spark Streaming运行流程及源码解析(二)
Spark Streaming源码流程解析。文章目录写在前面开干启动流处理引擎StreamingContext的创建outputOperator算子注册StreamingContext的启动接收并存储数据Driver端ReceiverTracker的操作Executor端ReceiverSupervisor的操作开始接收数据、存储数据生成job、执行jobJobGenerator介绍生成jo...原创 2020-02-18 10:35:30 · 335 阅读 · 0 评论 -
Spark Streaming运行流程及源码解析(一)
Spark Streaming运行流程及源码解析(一)本系列主要描述Spark Streaming的运行流程,然后对每个流程的源码分别进行解析之前总听同事说Spark源码有多么棒,咱也不知道,就是疯狂点头。对Spark的使用也就是Spark Streaming使用的多一点,所以就拿Spark Streaming开涮。源码中的一些类这里先列举一些源码中的类,大家先预热一下。Stre...原创 2020-02-17 00:23:47 · 551 阅读 · 0 评论 -
Spark Streaming vs. Structured Streaming
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...原创 2019-12-22 11:23:13 · 476 阅读 · 0 评论 -
Spark Streaming checkpoint wal
简述Spark Streaming的应用一般是从上游接到数据,进行处理,然后将结果输出。这是一个流式的过程,持续不断的接收、持续不断的输出,流式过程中的每一个环节(输入、处理、输出)出错,都可能会造成数据的丢失,这在生产中是不能容忍的。这相当于是一个可靠性的问题,当出错时可以通过上游或者spark streaming自身来保证。上游一般是kafka、rocketmq等消息队列,队列都有偏移量...原创 2019-11-04 20:52:04 · 529 阅读 · 4 评论 -
Spark SQL读取JSON案例以及存在的坑
Spark可以读取JSON,将其转换为DataFrame ( DataFrame[Row] )Spark SQL可以自动推断JSON的schema,但是如果显式的提供模式可以避免额外的扫描需要注意是:如果是读取JSON文件,提供的json文件不是典型的JSON文件,而是每行属于合法的JSON,然后用分隔符分割,具体规则:http://jsonlines.org/官网Demo地址:http:/...原创 2019-08-20 22:34:45 · 4081 阅读 · 0 评论 -
spark rdd dataframe dataset
RDDRDD(Resilient Distribute Datasets)弹性分布式数据集,是spark的核心概念,表示分布式存储的只读集合,可以基于RDD进行数据的转换操作(map,filter等)Spark通过RDD的抽象概念,实现了分区计算存储、DAG、依赖等编程接口rdd介绍:https://www.infoq.cn/article/spark-core-rddRDD vs Dat...原创 2019-07-24 21:56:18 · 251 阅读 · 0 评论 -
Spark代码远程调试
在本地的IDEA调试 在集群中运行的Spark代码场景:写好的代码在本地可以跑通,但是到了集群中就有可能报错,只有通过远程的调试,才能了解为什么报错,进而修复存在的问题参考https://blog.csdn.net/l1212xiao/article/details/80854767准备远程调试时用到了JVM的一些参数-Xdebug -Xrunjdwp:transport=dt_sock...原创 2019-04-30 13:29:31 · 1711 阅读 · 0 评论 -
Spark
简介Spark是使用Scala语言编写、基于内存运算的大数据计算框架。以Spark core为核心,提供了Spark SQL、Spark Streaming、MLlib几大功能组件中文文档:https://spark.apachecn.org/#/github地址:https://github.com/apache/sparkSpark CoreSpark提供了多种资源调度框架,基于内...原创 2019-05-30 23:09:22 · 2852 阅读 · 0 评论 -
Spark Streaming消费Kafka Avro数据
场景上游数据同步mysql的binlog数据并推到kafka,我们作为下游需要将数据接过来,进行处理,之后存入对外提供服务的数据库中。方案使用Spark Streaming消费kafka实现近实时的效果,使用kafka低级api direct的方式,来接收数据direct 方式会周期性地查询Kafka,来获得每个topic+partition的最新的offset,从而定义每个batch的...原创 2019-06-22 12:34:48 · 2212 阅读 · 5 评论