すべてのプロダクト
Search
ドキュメントセンター

AnalyticDB:Spark アプリケーション開発の概要

最終更新日:Mar 29, 2026

AnalyticDB for MySQL では、Spark バッチアプリケーションおよびストリーミングアプリケーションの開発手法が同一です。本トピックでは、利用可能な開発ツール、構成パラメーター、および Java、Scala、Python 各言語向けの固有パラメーターについて説明します。

前提条件

開始する前に、以下の条件を満たしていることを確認してください。

  • AnalyticDB for MySQL クラスターが存在すること

  • OSS バケットがクラスターと同一リージョンに存在すること

すべてのアプリケーションファイル(JAR、Python ファイル、依存関係、圧縮パッケージなど)は OSS に格納する必要があります。

開発ツール

Spark バッチアプリケーションおよびストリーミングアプリケーションの開発には、以下のいずれかのツールを使用できます。

アプリケーション構成

AnalyticDB for MySQL の Spark アプリケーションは JSON 形式で構成します。以下の例は、OSS からデータを読み取る Java アプリケーションの構成であり、共通パラメーター(namefileconf)および Java 固有のパラメーター(argsclassName)を含みます。

{
  "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"
  }
}

各言語固有のパラメーターの詳細については、「Java アプリケーションパラメーター」、「Scala アプリケーションパラメーター」、または「Python アプリケーションパラメーター」をご参照ください。

共通パラメーター

パラメーター必須説明
nameいいえSpark アプリケーションの名前です。"name": "spark-oss-test"
fileはい(Java、Scala、Python)アプリケーションのメインファイルの絶対 OSS パスです。Java および Scala の場合、これはエントリポイントを含む JAR ファイルです。Python の場合、これは実行可能エントリポイントです。OSS バケットはクラスターと同一リージョンに存在する必要があります。"file": "oss://<testBucketName>/jars/test/spark-examples-0.0.1-SNAPSHOT.jar"
filesいいえドライバーおよびエグゼキュータの作業ディレクトリにダウンロードする追加ファイルの OSS パスです。# を使用したエイリアスに対応しています(例: oss://<testBucketName>/test/test1.txt#test1 と指定すると、ファイルは ./test1 または ./test1.txt としてアクセス可能になります)。複数のパスはカンマで区切ります。log4j.properties を含める場合、Spark はこれをログ構成ファイルとして使用します。"files": ["oss://<testBucketName>/path/to/file1", "oss://<testBucketName>/path/to/file2"]
archivesいいえTAR.GZ 圧縮パッケージの OSS パスです。これらのパッケージは Spark プロセスの作業ディレクトリに解凍されます。# を使用したエイリアスに対応しています(例: oss://testBucketName/test/test1.tar.gz#test1 と指定すると、アーカイブ内の test2.txt./test1/test2.txt または ./test1.tar.gz/test2.txt としてアクセス可能になります)。複数のパスはカンマで区切ります。パッケージの解凍に失敗した場合、ジョブは失敗します。"archives": ["oss://<testBucketName>/path/to/archive1.tar.gz", "oss://<testBucketName>/path/to/archive2.tar.gz"]
confはいApache Spark と同様の key: value 形式の Spark 構成です。複数のエントリはカンマで区切ります。AnalyticDB for MySQL 固有のパラメーターについては、「Spark アプリケーション構成パラメーター」をご参照ください。"conf": {"spark.driver.resourceSpec": "medium", "spark.executor.resourceSpec": "medium", "spark.executor.instances": 2, "spark.adb.connectors": "oss"}

Java アプリケーションパラメーター

パラメーター必須説明
argsいいえJAR に渡す引数です。複数の引数はカンマで区切ります。"args": ["args0", "args1"]
classNameはいJava アプリケーションのメインクラスです。"className": "com.aliyun.spark.oss.SparkReadOss"
jarsいいえランタイム時にドライバーおよびエグゼキュータの Java 仮想マシン(JVM)クラスパスに追加される追加 JAR ファイルの絶対 OSS パスです。OSS バケットはクラスターと同一リージョンに存在する必要があります。複数のパスはカンマで区切ります。"jars": ["oss://<testBucketName>/path/to/app.jar", "oss://testBucketName/path/to/lib.jar"]

Scala アプリケーションパラメーター

パラメーター必須説明
classNameはいScala アプリケーションのメインクラスです。"className": "com.aliyun.spark.oss.SparkReadOss"
jarsいいえランタイム時にドライバーおよびエグゼキュータの Java 仮想マシン(JVM)クラスパスに追加される追加 JAR ファイルの絶対 OSS パスです。OSS バケットはクラスターと同一リージョンに存在する必要があります。複数のパスはカンマで区切ります。"jars": ["oss://<testBucketName>/path/to/app.jar", "oss://testBucketName/path/to/lib.jar"]

Python アプリケーションパラメーター

パラメーター必須説明
pyFilesはいPySpark アプリケーション用の Python ファイルの OSS パスです。サポートされる形式は ZIP、PY、EGG です。複数のファイルを指定する場合は、ZIP または EGG 形式を使用してください。Python ファイルはコード内でモジュールとしてインポートできます。複数のパスはカンマで区切ります。"pyFiles": ["oss://<testBucketName>/path/to/app.zip", "oss://<testBucketName>/path/to/lib.egg"]