MAPREDUCE服务 MRS-编包并运行Spark应用:运行“通过JDBC访问Spark SQL”样例程序

时间:2024-06-19 14:14:15

运行“通过JDBC访问Spark SQL”样例程序

  1. 在工程目录下执行mvn package命令生成jar包,在工程目录target目录下获取,比如:FemaleInfoCollection.jar
  2. 将生成的Jar包(如CollectFemaleInfo.jar)拷贝到Spark运行环境下(即Spark客户端),如“/opt/female”。开启Kerberos认证的安全集群下把从准备Spark应用开发用户中获取的user.keytab和krb5.conf文件拷贝到Spark客户端conf目录下,如:/opt/client/Spark/spark/conf;未开启Kerberos认证集群可不必拷贝user.keytab和krb5.conf文件。
  3. 运行“通过JDBC访问Spark SQL”样例程序(Scala和Java语言)。

    • 在Spark任务运行过程中禁止重启HDFS服务或者重启所有DataNode实例,否则可能会导致任务失败,并可能导致JobHistory部分数据丢失。
    • 运行程序时可根据需要选择运行模式:
      • --deploy-mode client:driver进程在客户端运行,运行结果在程序运行后直接输出。
      • --deploy-mode cluster:driver进程在Yarn的ApplicationMaster(AM)中运行,运行结果和日志在Yarn的WebUI界面输出。

    进入Spark客户端目录,使用java -cp命令运行代码。

    java -cp ${SPARK_HOME}/jars/*:${SPARK_HOME}/conf:/opt/female/SparkThriftServerJavaExample-*.jar com.huawei.bigdata.spark.examples.ThriftServerQueriesTest ${SPARK_HOME}/conf/hive-site.xml ${SPARK_HOME}/conf/spark-defaults.conf

    普通集群需要注释掉安全配置部分代码,详情请参见22

    上面的命令行中,您可以根据不同样例工程,最小化选择其对应的运行依赖包。样例工程对应的运行依赖包详情,请参见1

support.huaweicloud.com/devg-mrs/mrs_06_0213.html