You need to enable JavaScript to run this app.
文档中心
E-MapReduce

E-MapReduce

复制全文
下载 pdf
Serverless Spark 作业:基于 Spark connect
连接 Spark Connect App 并提交作业
复制全文
下载 pdf
连接 Spark Connect App 并提交作业

Python Client

获取已有 Spark Connect App

以下示例用于连接一个已存在的 Spark Connect App,并查询其状态信息。

from emr_spark_connect import EMRSparkConnectSession, StaticCredentials
app = (
    EMRSparkConnectSession.builder
    .region("<region>")
    .credentials(StaticCredentials("<your-ak>", "<your-sk>"))
    .serverId("<connect-app-id>")
    .getOrCreateApp()
)
print(app.getServerId())
print(app.getStatus())
print(app.getTrackingUrl())

创建 SparkSession

以下示例用于连接指定的 Spark Connect App 并创建 SparkSession 执行一条 SQL 查询。

from emr_spark_connect import EMRSparkConnectSession, StaticCredentials

spark = (
    EMRSparkConnectSession.builder
    .region("<region>")
    .credentials(StaticCredentials("<your-ak>", "<your-sk>"))
    
    .serverId("<connect-app-id>")
    .getOrCreate()
)

spark.sql("select 'hello' as msg").show()
spark.stop()

参数说明

参数 / 方法

是否必填

说明

region("<region>")

是

指定地域信息。

credentials(StaticCredentials("<your-ak>", "<your-sk>"))

是

指定访问凭证,包含 Access Key 和 Secret Key。

serverId("<connect-app-id>")

连接已有 App 时必填

指定目标 Spark Connect App 的唯一标识,获取方式:

  • 通过控制台获取:在作业实例列表中,找到创建的 Spark Connect App,下方的 ID 即为唯一标识。

Image

  • 通过 SDK 获取:创建 Spark Connect App 时,创建完成后,Python 方式使用getServerId(),Java 方式使用 getConnectId(),请求 EMR Serverless Spark Connect 服务端获取 App ID。

getOrCreateApp()

是

创建或获取 Spark Connect App,返回 App 对象。

getOrCreate()

是

创建 SparkSession 并连接到指定的 Spark Connect App。

app.getServerId()

否

获取 Spark Connect App ID。

app.getStatus()

否

获取 App 状态。

app.getTrackingUrl()

否

获取 Tracking URL,通常用于跳转到作业/应用详情页或监控页面。

Java Client

获取已有 Spark Connect App

以下示例用于连接一个已存在的 Spark Connect App,并查询其状态信息。

import com.volc.emr.spark.connect.EMRSparkConnectSession;
import com.volc.emr.spark.connect.EMRSparkConnectProvider;
import com.volc.emr.spark.connect.StaticCredentials;
import com.volc.emr.spark.connect.SparkApp;
import org.apache.spark.sql.SparkSession;

public class SparkConnectJavaExample {
    public static void main(String[] args) {
        SparkApp app = EMRSparkConnectSession.builder()
                .region("<region>")
                .credentials(new StaticCredentials("<your-ak>", "<your-sk>"))
                .serverId("<connect-app-id>")
                .getOrCreateApp();
        
        System.out.println(app.getConnectId());
        System.out.println(app.getStatus());
        System.out.println(app.getTrackingUrl());
    }
}

创建 SparkSession

以下示例用于连接指定的 Spark Connect App,创建 SparkSession 并执行一条 SQL 查询。

import com.volc.emr.spark.connect.EMRSparkConnectSession;
import com.volc.emr.spark.connect.StaticCredentials;
import org.apache.spark.sql.SparkSession;

public class SparkConnectJavaExample {
    public static void main(String[] args) {
        SparkSession spark = EMRSparkConnectSession.builder()
                .region("<region>")
                .credentials(new StaticCredentials("<your-ak>", "<your-sk>"))
                
                .serverId("<connect-app-id>")
                .getOrCreate();

        spark.sql("select 'hello' as msg").show();
        spark.stop();
    }
}

参数说明

参数 / 方法

是否必填

说明

region("<region>")

是

指定地域信息。

credentials(StaticCredentials("<your-ak>", "<your-sk>"))

是

指定访问凭证,包含 Access Key 和 Secret Key。

serverId("<connect-app-id>")

连接已有 App 时必填

指定目标 Spark Connect App 的唯一标识,获取方式:

  • 通过控制台获取:在作业实例列表中,找到创建的 Spark Connect App,下方的 ID 即为唯一标识。

Image

  • 通过 SDK 获取:创建 Spark Connect App 时,创建完成后,Python 方式使用getServerId(),Java 方式使用 getConnectId(),请求 EMR Serverless Spark Connect 服务端获取 App ID。

getOrCreateApp()

是

创建或获取 Spark Connect App,返回 App 对象。

getOrCreate()

是

创建 SparkSession 并连接到指定的 Spark Connect App。

app.getServerId()

否

获取 Spark Connect App ID。

app.getStatus()

否

获取 App 状态。

app.getTrackingUrl()

否

获取 Tracking URL,通常用于跳转到作业/应用详情页或监控页面。

最近更新时间:2026.08.14 15:47:18
这个页面对您有帮助吗?
有用
有用
无用
无用