Todos los productos
Search
Centro de documentos

AnalyticDB:Introducción al desarrollo de aplicaciones Spark

Última actualización: Sep 04, 2026

AnalyticDB for MySQL utiliza el mismo método de desarrollo para aplicaciones por lotes y aplicaciones de streaming de Spark. Este tema describe las herramientas de desarrollo disponibles, los parámetros de configuración y los parámetros específicos del lenguaje para aplicaciones en Java, Scala y Python.

Requisitos previos

Antes de empezar, asegúrese de que:

  • Cuenta con un clúster de AnalyticDB for MySQL

  • Tiene un bucket de Object Storage Service (OSS) en la misma región que el clúster

Todos los archivos de la aplicación (JAR, archivos Python, dependencias y paquetes comprimidos) deben almacenarse en OSS.

Herramientas de desarrollo

Puede utilizar una de las siguientes herramientas para desarrollar aplicaciones por lotes y aplicaciones de streaming de Spark:

Configuración de la aplicación

Las aplicaciones Spark en AnalyticDB for MySQL se configuran mediante JSON. El siguiente ejemplo muestra una aplicación Java que lee datos de OSS, e incluye los parámetros comunes (name, file, conf) y los parámetros específicos de Java (args, className).

{
  "args": ["args0", "args1"],
  "name": "spark-oss-test",
  "file": "oss://<testBucketName>/jars/test/spark-examples-0.0.1-SNAPSHOT.jar",
  "className": "com.aliyun.spark.oss.SparkReadOss",
  "conf": {
    "spark.driver.resourceSpec": "medium",
    "spark.executor.resourceSpec": "medium",
    "spark.executor.instances": 2,
    "spark.adb.connectors": "oss"
  }
}

Para obtener detalles sobre los parámetros específicos de cada lenguaje, consulte Parámetros de aplicaciones Java, Parámetros de aplicaciones Scala o Parámetros de aplicaciones Python.

Parámetros comunes

Parameter

Required

Description

Example

name

No

Nombre de la aplicación Spark.

"name": "spark-oss-test"

file

Sí (Java, Scala, Python)

Ruta absoluta en OSS del archivo principal de la aplicación. Para Java y Scala, corresponde al archivo JAR que contiene el punto de entrada. Para Python, es el punto de entrada ejecutable. El bucket de OSS debe encontrarse en la misma región que el clúster.

"file": "oss://<testBucketName>/jars/test/spark-examples-0.0.1-SNAPSHOT.jar"

files

No

Rutas en OSS de archivos adicionales que se descargarán a los directorios de trabajo del driver y los executors. Admite alias mediante # (por ejemplo, oss://<testBucketName>/test/test1.txt#test1 permite acceder al archivo como ./test1 o ./test1.txt). Separe varias rutas con comas. Si incluye log4j.properties, Spark lo utilizará como archivo de configuración de registros.

"files": ["oss://<testBucketName>/path/to/file1", "oss://<testBucketName>/path/to/file2"]

archives

No

Rutas en OSS de paquetes comprimidos TAR.GZ que se descomprimirán en el directorio de trabajo del proceso Spark. Admite alias mediante # (por ejemplo, oss://testBucketName/test/test1.tar.gz#test1 hace que test2.txt sea accesible dentro del paquete como ./test1/test2.txt o ./test1.tar.gz/test2.txt). Separe varias rutas con comas. Si un paquete no se puede descomprimir, el trabajo fallará.

"archives": ["oss://<testBucketName>/path/to/archive1.tar.gz", "oss://<testBucketName>/path/to/archive2.tar.gz"]

conf

Sí

Configuración de Spark en formato key: value, similar a Apache Spark. Separe varias entradas con comas. Para consultar los parámetros específicos de AnalyticDB for MySQL, véase Spark application configuration parameters.

"conf": {"spark.driver.resourceSpec": "medium", "spark.executor.resourceSpec": "medium", "spark.executor.instances": 2, "spark.adb.connectors": "oss"}

Parámetros de aplicaciones Java

Parameter

Required

Description

Example

args

No

Argumentos que se pasan al JAR. Separe varios argumentos con comas.

"args": ["args0", "args1"]

className

Sí

Clase principal de la aplicación Java.

"className": "com.aliyun.spark.oss.SparkReadOss"

jars

No

Rutas absolutas en OSS de archivos JAR adicionales que se agregan a los classpaths de la JVM (Java Virtual Machine) del driver y los executors durante la ejecución. El bucket de OSS debe estar en la misma región que el clúster. Separe varias rutas con comas.

"jars": ["oss://<testBucketName>/path/to/app.jar", "oss://testBucketName/path/to/lib.jar"]

Parámetros de aplicaciones Scala

Parameter

Required

Description

Example

className

Sí

Clase principal de la aplicación Scala.

"className": "com.aliyun.spark.oss.SparkReadOss"

jars

No

Rutas absolutas en OSS de archivos JAR adicionales que se agregan a los classpaths de la JVM del driver y los executors durante la ejecución. El bucket de OSS debe estar en la misma región que el clúster. Separe varias rutas con comas.

"jars": ["oss://<testBucketName>/path/to/app.jar", "oss://testBucketName/path/to/lib.jar"]

Parámetros de aplicaciones Python

Parameter

Required

Description

Example

pyFiles

Sí

Rutas en OSS de archivos Python para la aplicación PySpark. Formatos compatibles: ZIP, PY o EGG. Para varios archivos, utilice el formato ZIP o EGG. Los archivos Python pueden importarse como módulos en su código. Separe varias rutas con comas.

"pyFiles": ["oss://<testBucketName>/path/to/app.zip", "oss://<testBucketName>/path/to/lib.egg"]