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. SpringBoot中的配置文件

    http://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html

  2. Mysql 学习1

      Mysql学习   一.数据库   1 数据库概念(了解) 1.1 什么是数据库 数据库就是用来存储和管理数据的仓库! 数据库存储数据的优先: 可存储大量数据: 方便检索: 保持数据的一致性.完整 ...

  3. centos 时区正确,时间不对

    centos6.5 里面 时区是 Asia/Shanghai ,但是 时间还是不对,在网上收集了如下做法:好像恢复了~~ (主要过程是:  查看各种设置,然后设置时间,最后更新本机时间,最后保持与时间 ...

  4. What is MEAN?

    MEAN.JS is a full-stack JavaScript open-source solution, which provides a solid starting point for M ...

  5. Function- 几个转换函数

    几个转换函数 SJIS_DBC_TO_SBC 全角转半角SJIS_SBC_TO_DBC 半角转全角 CLPB_IMPORT :从剪贴板导入internal tableCLPB_EXPORT : 从in ...

  6. 【python】将excel转成json

    excel格式如下: 转换后如下 {"BD": 1375.0, "BE": 829.0, "BF": 3.0, "BG" ...

  7. Django模型系统——ORM表结构对应关系

    对于数据库来说一般表结构只会有三种对应关系,分别是一对一.一对多和多对一,下面分别介绍: 1.一对多 何为一对多,例如一个学生只可能有一个班级,一个班级却又多个学生,班级表和学生表就是一对多的关系. ...

  8. onActivityResult方法不执行,什么原因?

    原因: public void OnOpenPlayersActivity(View view) {  Intent intent = new Intent();  intent.setClass(g ...

  9. 为什么下了android 4.1 的SDK后在本地用浏览器看api说明文档时,浏览器打开api的html文件很慢?试了好几款浏览器都一样。为什么?

    http://www.oschina.net/question/436724_61401 http://www.google.com/jsapi  他惹的祸 注释掉就可以了- <!-- < ...

  10. 获取android模拟器的IP地址

    http://blog.csdn.net/yjkwf/article/details/7244632 1.输入adb devices查看加载的设备 2.使用 adb -s [设备] [命令]执行命令 ...