spark on yarn与idea直连操作sql遇到的一些问题

先上代码

 SparkConf conf = new SparkConf().setAppName("programdept").setMaster("yarn-client")
               .set("yarn.resourcemanager.hostname", "10.100.200.11")
//                .set("spark.executor.instances","1")
//               .set("spark.executor.memory","3500M")
                .setJars(new String[]{"D:\\code\\sparkonyarn\\out\\artifacts\\sparkonyarn.jar"})
                .set("spark.yarn.preserve.staging.files","false")
                .set("spark.executor.extraClassPath"," /opt/cloudera/parcels/CDH-5.14.0-1.cdh5.14.0.p0.24/lib/hive/lib/*");

        JavaSparkContext sparkContext = new JavaSparkContext(conf);
        HiveContext hiveContext = new HiveContext(sparkContext.sc());
//      hiveContext.clearCache();

       hiveContext.sql("use oracle_table");
        DataFrame sql = hiveContext.sql("select count(1) from com_organization")
        sparkContext.close();
    }

其实就是一个很简单的需求,通过hive与spark集成从而来查询hive表中的数据

  • 首先你要把配置文件放入idea中
    cdh版spark on yarn与idea直连操作sql遇到的一些问题

  • 你的代码设置为spark on yarn模式,参考上方代码

  • 设置好你的包

  • 运行一直失败,参考日志
    cdh版spark on yarn与idea直连操作sql遇到的一些问题

  • 缺少某些包,接着把yarn site中设置相应的包
    cdh版spark on yarn与idea直连操作sql遇到的一些问题

  • 还差hive的包,通过上方的方式导入不行,就直接在代码中添加
    set(“spark.executor.extraClassPath”," /opt/cloudera/parcels/CDH-5.14.0-1.cdh5.14.0.p0.24/lib/hive/lib/*

  • 最终运行成功,在出现此种错的时候去翻看其他人的解决方法,而没有细分析自己的日志,导致做了很多无用功,自己出现问题自己先找好自己的

相关文章:

  • 2021-05-29
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-26
  • 2021-06-01
  • 2021-09-28
猜你喜欢
  • 2022-02-15
  • 2021-07-04
  • 2021-12-20
相关资源
相似解决方案