
spark
文章平均质量分 69
走向自由
追随自己内心的声音,走向自由。
展开
-
[SPARK-19680] OffsetOutOfRangeException 解决方案
当kafka中的数据丢失时,Spark程序消费kafka中数据的时候就可能会出现以下异常:Lost task 12.0 in stage 398.0 (TID 2311, localhost, executor driver): org.apache.kafka.clients.consumer.OffsetOutOfRangeException: Offsets out of range with no configured reset policy for partitions: {abc_.转载 2021-04-13 10:40:31 · 935 阅读 · 0 评论 -
Spark SQL 添加第三方依赖包
最近在使用spark sql 执行hive语句时碰到异常信息如下:Class org.openx.data.jsonserde.JsonSerDe not found Exception开始以为时hive环境有问题,把sql语句拿到hive环境单独跑没有问题,排除掉这项。若有问题,参考解决方案。https://www.it610.com/article/1282643683400761344.htm使用spark-submit --jar 提交掉时候已经引入了json-serde-.原创 2020-12-09 09:45:10 · 2197 阅读 · 0 评论 -
Kafka CommitFailedException
1.Exception:org.apache.kafka.clients.consumer.CommitFailedException: Commit cannot be completed since the group has already rebalanced and assigned the partitions to another member. This means that the time between subsequent calls to poll() was longer t原创 2020-10-13 10:33:36 · 882 阅读 · 0 评论 -
spark.streaming.concurrentJobs的值设定为多少合适?
最近,在spark streaming 调优时,发现个增加job并行度的参数spark.streaming.concurrentJobs,spark 默认值为1,当增加为2时(在spark-default中配置),如遇到处理速度慢 streaming application UI 中会有两个Active Jobs(默认值时为1),也就是在同一时刻可以执行两个批次的streaming job,下文分析这个参数是如何影响streaming 的执行的。参数引入在spark streaming 的JobSc转载 2020-10-12 18:31:36 · 620 阅读 · 0 评论 -
Spark Application, Job, Stage, Task
写得很好的一篇文章,学习下。原文:https://blog.youkuaiyun.com/qq_16146103/article/details/107591802由于 Spark 的懒执行, 在驱动程序调用一个action之前, Spark 应用不会做任何事情. 针对每个action, Spark 调度器就创建一个执行图(execution graph)和启动一个 Spark job 每个 job 由多个stages 组成, 这些 stages 就是实现最终的 RDD 所需的数据转换的步骤. ..转载 2020-10-12 17:34:35 · 1019 阅读 · 3 评论 -
Spark metrics整理
作者:lioversky链接:https://www.jianshu.com/p/e42ad9cb66a1概述spark使用metrics的包路径为:org.apache.spark.metrics,核心类:MetricsSystem。可以把Spark Metrics的信息报告到各种各样的Sink,比如HTTP、JMX以及CSV文件。Spark的Metrics系统目前支持以下的实例:○ master:Spark standalone模式的master进程;○ worker:Spark.转载 2020-09-18 17:03:13 · 906 阅读 · 0 评论 -
[Spark程序] 之 单节点cache方案探讨
最近在做一个分布式任务时,遇到一个需求:一个用户member,可以有多个登陆ip,并把这些ip加入到可信ip集合中。可信集合上限100,当超过100时,对已经存在的100个进行LRU(last recent unused)替换。方案设计思路:使用spark streaming 来接收用户登陆事件流,并把每个登陆ip写入到HBase的表(limit_control)中。该表以member作为key,ip作为column family,然后具体的ip值作为column,用户登陆时间作为time.原创 2020-05-24 18:33:11 · 299 阅读 · 0 评论 -
Spark基础 之 Job, Stage, Partition, Task, Executor
最近在开发spark streaming 程序时对这些概念有了深刻的理解。在此总结下。我最近的 spark streaming 核心代码如下:stream.foreachRDD(rdd -> { try { // extract all activity events rdd.flatMap(record -> { String topic = record.topic(); TopicHandl原创 2020-05-24 18:08:24 · 1360 阅读 · 1 评论 -
Spark基础 之 Partition
本文是Spark知识总结帖,讲述Spark Partition相关内容。1 什么是PartitionSpark RDD 是一种分布式的数据集,由于数据量很大,因此要它被切分并存储在各个结点的分区当中。从而当我们对RDD进行操作时,实际上是对每个分区中的数据并行操作。图一:数据如何被分区并存储到各个结点 图二:RDD、Partition以及task的关系参考:htt...转载 2020-05-18 22:33:00 · 1417 阅读 · 0 评论 -
Spark Executor 内存管理
http://spark.apache.org/docs/latest/tuning.html#memory-management-overviewhttp://spark.apache.org/docs/latest/configuration.html#memory-managementhttps://www.jianshu.com/p/911a5fc967c5学习资料总结,感谢原作者的辛勤写作。统一内存管理Spark 1.6 之后引入的统一内存管理机制,与静态内存管理的区别在.转载 2020-05-10 22:48:55 · 302 阅读 · 0 评论 -
Spark SQL 连接 Hive
Spark version: 2.4.5Hive version: 3.1.2准备测试数据:> bin/hiveserver2> beeline -u jdbc:hive2://localhost:10000 -n rootcreate table default.member_phone as select '00001' as member_srl, '...原创 2020-03-18 22:45:49 · 399 阅读 · 0 评论 -
使用spark写数据到Hbase的三种方式
方式一:直接使用HBase Table的PUT方法import org.apache.hadoop.hbase.{HBaseConfiguration, TableName}import org.apache.hadoop.hbase.client.{ConnectionFactory, Put, Table}import org.apache.hadoop.hbase.util.B...原创 2018-09-06 17:44:52 · 12197 阅读 · 6 评论 -
Gradle 打包可执行jar 的两种方法
Submit Spark Job我们在提交spark job到集群时通常使用两种做法来处理依赖jar。方法一:仅提交job jar,dependency jar 通过单独一个一个上传到lib目录下引入。方法二:把dependency jar 和 job jar 一起打包成一个 fat jar。方法一优缺点:优点:占用带宽资源少,修改job 调试时传输量小,适合带宽少的情况...原创 2019-09-13 15:57:38 · 1878 阅读 · 0 评论 -
java.lang.IllegalArgumentException: Can not create a Path from a null string
在使用setAsNewAPIHadoopDataset写数据到Hbase时发生如下错误:java.lang.IllegalArgumentException: Can not create a Path from a null string at org.apache.hadoop.fs.Path.checkPathArg(Path.java:123)原创 2017-12-26 15:41:15 · 12139 阅读 · 0 评论 -
Spark job jar包冲突解决方案
最近在spark上部署程序使用logback发送日志到graylog2的过程中,碰到异常:java.lang.UnsatisfiedLinkError: org.xerial.snappy.SnappyNative.uncompressedLength(Ljava/lang/Object;II)I at org.xerial.snappy.SnappyNative.uncompressedLen...原创 2018-04-27 16:44:24 · 4054 阅读 · 1 评论 -
spark 发送日志到graylog
网上能搜到的方案都是,使用logback.xml去替换spark/conf/log4j.properties。但是我们的spark集群已经运行很长一段时间,进行全局替换,不太合适。当前spark环境默认使用的log4j1.*, 应用程序里默认日志是存储在spark.log 和stderr、stdout三个文件里,要进行日志统一搜索不太方便,所以最近准备把日志迁移到graylog2 服务器上。...原创 2018-04-27 17:33:07 · 1962 阅读 · 0 评论 -
java.lang.LinkageError: loader constraint violation when resolving method "org.slf4j.impl.StaticLogg
最近部署spark应用时抛出以下异常: Exception in thread "Driver" java.lang.LinkageError: loader constraint violation: when resolving method "org.slf4j.impl.StaticLoggerBinder.getLoggerFactory()Lorg/slf4j/ILoggerF...原创 2018-09-18 17:57:59 · 4208 阅读 · 0 评论 -
spark-submit --jars pseudo cluster 的jar依赖准备
本地hadoop环境提交job时经常碰到一大堆依赖需要引入的问题,又不想全部把依赖打包到代码里发布,比较好的选择则是 spark-submit --jar 选项。jar比较少的时候手动复制黏贴方式比较方便,jar依赖比较多时就很麻烦。于是想弄个脚本一步搞定,就有了下面的代码: 1. build.gradle里添加任务 sparkJars/** * write spark --ja...原创 2018-09-20 14:00:40 · 2536 阅读 · 0 评论 -
Spark access s3 exception Bad Request 400
最近使用spark2 访问s3a时报如下错误:Exception in thread "main" com.amazonaws.services.s3.model.AmazonS3Exception: Status Code: 400, AWS Service: Amazon S3, AWS Request ID: FD92FDC175C64AA2, AWS Error Code: nul...原创 2019-04-16 16:37:12 · 2261 阅读 · 0 评论 -
How to reuse database session object created in foreachPartition in Spark streaming/RDD ?
Design Patterns for using foreachRDDdstream.foreachRDDis a powerful primitive that allows data to be sent out to external systems. However, it is important to understand how to use this primitiv...原创 2019-04-24 14:47:39 · 136 阅读 · 0 评论 -
hadoop 集群上使用commons mail 发送邮件
最近使用commons mail进行发送HTML邮件时碰到一些问题,记录下解题思路。1. 发送HTML邮件import org.apache.commons.mail.HtmlEmail;... // Create the email message HtmlEmail email = new HtmlEmail(); email.setHostName("mai...原创 2019-05-27 11:02:11 · 646 阅读 · 0 评论 -
Spark依赖包加载顺序和冲突解决方案
Spark 依赖包来源我们知道Spark application运行加载依赖有三个地方:SystemClasspath -- Spark安装时候提供的依赖包 Spark-submit --jars 提交的依赖包 Spark-submit --config "spark.{driver/executor}.extraClassPath=someJar"提交的依赖包Spark...原创 2019-05-31 21:16:43 · 9912 阅读 · 3 评论 -
Spark Streaming 监控UI详解
本文作为学习总结,文中引用到其他作者很多知识,对原作者表示感谢。Table of ContentsSpark 基本概念Spark 监控的三个阶段Spark Driver 阶段Spark Executor阶段Spark Streaming阶段Spark 基本概念Jobjob是application的组成单位。 A job is triggered by an ac...原创 2019-09-13 14:29:09 · 2650 阅读 · 0 评论 -
File does not exist: hdfs://localhost:9000/user/someone/.sparkStaging/application_1512614402012_0009
最近学习spark,写了一个spark workcount 在本地pesudo-distributed hadoop上基于yarn 运行,碰到的问题如下,总结下供有相同问题的同仁参考。 spark 提交方式如下: spark-submit --class "com.my.WordCount" --master yarn --deploy-mode cluster build/...原创 2017-12-07 22:32:17 · 13304 阅读 · 2 评论