数据湖探索 DLI-使用Spark作业访问DLI元数据:scala样例代码

时间:2025-01-26 10:41:54

scala样例代码

object DliCatalogTest {  def main(args:Array[String]): Unit = {    val sql = args(0)    val runDdl =Try(args(1).toBoolean).getOrElse(true)    System.out.println(s"sql is $sqlrunDdl is $runDdl")    val sparkConf = new SparkConf(true)    sparkConf          .set("spark.sql.session.state.builder","org.apache.spark.sql.hive.UQueryHiveACLSessionStateBuilder")      .set("spark.sql.catalog.class","org.apache.spark.sql.hive.UQueryHiveACLExternalCatalog")     sparkConf.setAppName("dlicatalogtester")    val spark = SparkSession.builder      .config(sparkConf)      .enableHiveSupport()      .config("spark.sql.extensions","org.apache.spark.sql.DliSparkExtension")      .appName("SparkTest")      .getOrCreate()    System.out.println("catalog is "+ spark.sessionState.catalog.toString)    if (runDdl) {      val df = spark.sql(sql).collect()    } else {      spark.sql(sql).show()    }    spark.close()  }}
support.huaweicloud.com/devg-dli/dli_09_0176.html