美文网首页
FPGrowth算法实践问题总结

FPGrowth算法实践问题总结

作者: Anan_楠 | 来源:发表于2019-02-28 11:22 被阅读0次

    前言

    前段时间开始接触大数据相关分布式框架,对Hadoop和Spark的运行机制有了初步了解。在此基础上,我进行了一次关于FPGrowth关联规则算法的简单实践,此文章是对实践过程中所遇问题的总结归纳。
    另:GitHub实践项目地址:https://github.com/NAMZseng/Spark_FPGrowth


    Q1

    Spark 2.x版本无1.x版本中的lib文件夹

    从 2.x版本开始,原有的lib目录下的整个大jar包(lib/spark-assembly-*jar)已经分散到各个小的jar包从,放置在jars/目录下。

    Q2

    每次提交spark任务到yarn的时,出现 Neither spark.yarn.jars nor spark.yarn.archive is set

    • Reason:
      因为没有设置spark.yarn.jars,所以每次提交任务到yarn,yarn都会把$SPARK_HOME/jars打包成zip文件上传到hdfs对应的用户目录,这样对任务的顺利执行没有太大影响,但因为每次都需要上传,所以会降低任务执行的效率。
    • Solution:
      将spark.yarn.jars上传到hdfs中,并指定其为公共依赖包
      • hdfs dfs -mkdir /root/spark_jars
      • hdfs dfs -put $SPARK_HOME/jars/*  /root/spark_jars/
      • 在spark-default.conf中添加 spark.yarn.jars hdfs:///root/spark_jars/*

    Q3

    spark-submit 提交任务时,出现NoClassDefFoundError

    Q4

    提交任务时,出现beyond the 'VIRTUAL' memory limit. 2.2 GB of 2.1 GB virtual memory used

    • Reason:
      为YARN的虚拟内存计算方式导致。若用户程序申请的内存为1GB,YARN根据此值乘以一个比例(默认为2.1)得出申请的虚拟内存的值2.1GB,当YARN计算的用户程序所需虚拟内存值大于计算出来的值时,就会报出以上错误。
    • solution1:在yarn.site.xml修改yarn.nodemanager.vmem-pmem-ratio值(默认为2.1)
    • solution2: 将yarn.nodemanager.vmem-check-enabled的值改为false,即不检查VM的值

    Q5

    提交任务时,出现Remote RPC client disassociated. Likely due to containers exceeding thresholds, or network issues. Check driver logs for WARN messages

    • minSupport或minConfidence设置太大,spark运行时内存不足。
    • 应根据数据选取合适置信参数

    相关文章

      网友评论

          本文标题:FPGrowth算法实践问题总结

          本文链接:https://www.haomeiwen.com/subject/zxacuqtx.html