java.lang.NoSuchMethodError: org.apache.spark.sql.SQLContext.sql(Ljava/lang/String;)Lorg/apache/spark/sql/Dataset;
这是因为代码中调用的是spark2.0的接口,但是提交任务采用的是spark-submit(spark1的提交指令,spark2的提交指令是spark2-submit)方式导致;
再后来通过spark2-submit进行提交,但是发现爆了一个ClassNotFound(Config)的异常,根据堆栈找地方,发现是一个Configure类的初始化,和开发人员以沟通,原来是提交包的时候没有全量提交;Config是在config-1.2.1.jar中,所以运行环境没有该jar包导致。
spark运行日志其实是在yarn的日志中,在cloudera中选择YARN->菜单中选择Web UI->ResourceManager Web UI->点击ID列,进入到详情页面,在最下面点击logs链接即可看到日志。
但是注意:

dataframe.rdd.map(r => XXX)
在scala中map引用函数里面打日志,但是始终都没有打出来,但是map前面的日志却可以在控制台通过println打印出来。
我一直觉得很奇怪。后来才知道这是因为map执行是在各个节点中进行,并没有在提交代码的进程中;所以你在当前线程下看不到日志;
后来我又到YARN下面查看日志也没有看到println出来的日志,这是怎么回事?因为输入到日志文件的都是log4j类输出到配置文件配置的日志文件中;println是输出到控制台,我们知道tail方式看日志是无法看到println打出的日志的。
java.io.IOException: Cannot run program "/etc/hadoop/conf.cloudera.yarn/topology.py" (in directory "
首先确认你本地是否有这个文件;
然后,spark2-submit的时候,添加--master yarn(spark2是yarn,网上讲是yarn-cluster,难道是spark1吗),说明此次任务提交是给YARN(相对应的是提交给spark自己,这是spark alone模式);
  第三种情况,添加完后该异常仍然出现,后来看到另外一种情况是文件没有权限,后来topology文件添加了cloudera-scm权限后搞定(我的情况是文件root权限)。其实对于已经存在文件报一些异常比如无法读取,不存在,很可能就是因为权限问题。org.apache.spark.sql.AnalysisException: Call From s1/192.168.156.105 to s1:8020 failed on connection exception: java.net.ConnectException: 拒绝连接; For more details see:  http://wiki.apache.org/hadoop/ConnectionRefused
但凡是出现此类异常就说明了你所请求的服务ip端口不存在或者错误;我碰到的问题就是hdfs的metastore服务部署在A机器,但是代码中hdfs://B机器ip:8020,导致了此异常;登录A机器lsof -i:8020可以看到hdfs用户进行;但是登录B机器却无法发现hdfs用户进程内容。
数据不对
对于Not In的处理,切记:转化为join的形式为Left Join(left_outer)!

spark提交异常日志分析的更多相关文章

  1. 网站开发进阶(八)tomcat异常日志分析及处理

    tomcat异常日志分析及处理 日志信息如下: 2015-10-29 18:39:49 org.apache.coyote.http11.Http11Protocol pause 信息: Pausin ...

  2. 基于Spark的网站日志分析

    本文只展示核心代码,完整代码见文末链接. Web Log Analysis 提取需要的log信息,包括time, traffic, ip, web address 进一步解析第一步获得的log信息,如 ...

  3. 使用Spark进行搜狗日志分析实例——map join的使用

    map join相对reduce join来说,可以减少在shuff阶段的网络传输,从而提高效率,所以大表与小表关联时,尽量将小表数据先用广播变量导入内存,后面各个executor都可以直接使用 pa ...

  4. 使用Spark进行搜狗日志分析实例——统计每个小时的搜索量

    package sogolog import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...

  5. 使用Spark进行搜狗日志分析实例——列出搜索不同关键词超过10个的用户及其搜索的关键词

    package sogolog import org.apache.hadoop.io.{LongWritable, Text} import org.apache.hadoop.mapred.Tex ...

  6. Spark Streaming揭秘 Day31 集群模式下SparkStreaming日志分析(续)

    Spark Streaming揭秘 Day31 集群模式下SparkStreaming日志分析(续) 今天延续昨天的内容,主要对为什么一个处理会分解成多个Job执行进行解析. 让我们跟踪下Job调用过 ...

  7. 苏宁基于Spark Streaming的实时日志分析系统实践 Spark Streaming 在数据平台日志解析功能的应用

    https://mp.weixin.qq.com/s/KPTM02-ICt72_7ZdRZIHBA 苏宁基于Spark Streaming的实时日志分析系统实践 原创: AI+落地实践 AI前线 20 ...

  8. Spark Streaming揭秘 Day30 集群模式下SparkStreaming日志分析

    Spark Streaming揭秘 Day30 集群模式下SparkStreaming日志分析 今天通过集群运行模式观察.研究和透彻的刨析SparkStreaming的日志和web监控台. Day28 ...

  9. 024 关于spark中日志分析案例

    1.四个需求 需求一:求contentsize的平均值.最小值.最大值 需求二:请各个不同返回值的出现的数据 ===> wordCount程序 需求三:获取访问次数超过N次的IP地址 需求四:获 ...

随机推荐

  1. iOS使用正则匹配限制输入密码格式

    1.代码实现"密码至少为9位,并需包含大写字母.小写字母.数字或特殊字符等三种" 返回0.1.2为格式不正确,返回4为密码格式正确 -(int)checkIsHaveNumAndL ...

  2. oschina git服务, 如何生成并部署ssh key

    1.如何生成ssh公钥 你可以按如下命令来生成 sshkey: ssh-keygen -t rsa -C "xxxxx@xxxxx.com" # Generating public ...

  3. iOS 蓝牙开发之(CoreBlueTooth)

    CoreBlueTooth 简介: 可用于第三方的蓝牙交互设备 设备必须支持蓝牙4.0 iPhone的设备必须是4S或者更新 iPad设备必须是iPad mini或者更新 iOS的系统必须是iOS 6 ...

  4. 【译】用 Chart.js 做漂亮的响应式表单

    数据包围着我们.虽然搜索引擎和其他应用都对基于文本方式表示的数据偏爱有加,但人们发现可视化是更容易理解的一种方式.今年初,SitePoint 发表了 Aurelio 的文章< Chart.js简 ...

  5. socket编程python+c

    python版: server: def socket_loop_server_function(): HOST = '192.168.56.1' PORT = 21567 sk = socket.s ...

  6. Js拼接html并给onclick传多个参数

    return '<a id="" class="ace_button" href="#" onclick="showItem ...

  7. 从 零开始 无差错 装好nginx+PHP

    由于这两天 一直有人追问 nginx为何报错,为何php没装好啥的,大多原因是 : 1.编译与yum混合安装,导致很多包的路径不对,进而报错 2.yum源比较旧,导致 与新版本的php不匹配 3.安装 ...

  8. centOS-64位通过YUM源安装nginx

    第一步:在 /etc/yum.repos.d/ 目录下,建立名叫nginx.repo的软件源配置文件.        文件 nginx.repo 的内容是: [nginx] name=nginx re ...

  9. python-2 什么是函数

    函数是什么? 定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可 特性: 减少重复代码 使程序变的可扩展 使程序变得易维护 形参变量只有在被调用时才 ...

  10. php生成随机密码的自定义函数

    php生成随机密码的自定义函数 生成一个随机密码的函数,生成的密码为小写字母与数字的随机字符串,长度可自定义. 复制代码代码如下: <?php /*  * php自动生成新密码自定义函数(带实例 ...