O AnalyticDB for MySQL utiliza o mesmo método de desenvolvimento para aplicações Spark em lote e streaming. Este tópico descreve as ferramentas de desenvolvimento disponíveis, os parâmetros de configuração e os parâmetros específicos de linguagem para aplicações Java, Scala e Python.
Pré-requisitos
Antes de começar, verifique se:
Você tem um cluster do AnalyticDB for MySQL
Você tem um bucket do Object Storage Service (OSS) na mesma região do cluster
Armazene todos os arquivos da aplicação — JARs, arquivos Python, dependências e pacotes compactados — no OSS.
Ferramentas de desenvolvimento
Use uma das seguintes ferramentas para desenvolver aplicações Spark em lote e streaming:
Configuração da aplicação
Configure as aplicações Spark no AnalyticDB for MySQL usando JSON. O exemplo a seguir mostra uma aplicação Java que lê dados do OSS, incluindo os parâmetros comuns (name, file, conf) e os parâmetros específicos para 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 obter detalhes sobre os parâmetros específicos de cada linguagem, consulte Parâmetros de aplicação Java, Parâmetros de aplicação Scala ou Parâmetros de aplicação Python.
Parâmetros comuns
|
Parâmetro |
Obrigatório |
Descrição |
Exemplo |
|
|
Não |
Nome da aplicação Spark. |
|
|
|
Sim (Java, Scala, Python) |
Caminho absoluto no OSS do arquivo principal da aplicação. Para Java e Scala, refere-se ao arquivo JAR com o ponto de entrada. Para Python, é o ponto de entrada executável. O bucket do OSS deve estar na mesma região do cluster. |
|
|
|
Não |
Caminhos no OSS de arquivos adicionais para baixe nos diretórios de trabalho do driver e do executor. Aceita aliases com |
|
|
|
Não |
Caminhos no OSS de pacotes compactados TAR.GZ para descompactar no diretório de trabalho do processo Spark. Aceita aliases com |
|
|
|
Sim |
Configuração do Spark no formato |
|
Parâmetros de aplicação Java
|
Parâmetro |
Obrigatório |
Descrição |
Exemplo |
|
|
Não |
Argumentos passados para o JAR. Separe vários argumentos com vírgulas. |
|
|
|
Sim |
Classe principal da aplicação Java. |
|
|
|
Não |
Caminhos absolutos no OSS de arquivos JAR adicionais incluídos nos classpaths da JVM (Java Virtual Machine) do driver e do executor durante a execução. O bucket do OSS deve estar na mesma região do cluster. Separe vários caminhos com vírgulas. |
|
Parâmetros de aplicação Scala
|
Parâmetro |
Obrigatório |
Descrição |
Exemplo |
|
|
Sim |
Classe principal da aplicação Scala. |
|
|
|
Não |
Caminhos absolutos no OSS de arquivos JAR adicionais incluídos nos classpaths da JVM do driver e do executor durante a execução. O bucket do OSS deve estar na mesma região do cluster. Separe vários caminhos com vírgulas. |
|
Parâmetros de aplicação Python
|
Parâmetro |
Obrigatório |
Descrição |
Exemplo |
|
|
Sim |
Caminhos no OSS de arquivos Python para a aplicação PySpark. Formatos aceitos: ZIP, PY ou EGG. Para múltiplos arquivos, use o formato ZIP ou EGG. Os arquivos Python podem ser importados como módulos no seu código. Separe vários caminhos com vírgulas. |
|