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

AnalyticDB:概要

最終更新日:Sep 29, 2024

AnalyticDB for MySQLは、Sparkバッチアプリケーションとストリーミングアプリケーションに同じ開発方法を提供します。 このトピックでは、Sparkアプリケーションの開発方法について説明します。

開発ツール

次のいずれかのツールを使用して、Sparkバッチアプリケーションとストリーミングアプリケーションを開発できます。

サンプルコード

次のサンプルコードは、Object Storage Service (OSS) に保存されているデータに基づいてSparkアプリケーションを開発する方法の例を示しています。 コードには、nameやconfなどの共通パラメーターと、Java、Scala、Pythonアプリケーションに固有のパラメーターが含まれています。 パラメーターはJSON形式で記述されます。

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

共通パラメータ

パラメーター

必須

説明

name

いいえ

"name": "spark-oss-test"

Sparkアプリケーションの名前。

file

Python、Java、およびScalaアプリケーションの場合ははい

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

Sparkアプリケーションのメインファイルの絶対パス。 メインファイルは、エントリポイントを含むJARパッケージ、またはPythonプログラムのエントリポイントとして機能する実行可能ファイルです。

    重要

    SparkアプリケーションのメインファイルをOSSに保存する必要があります。

    OSSバケットは、AnalyticDB for MySQLクラスターと同じリージョンに存在する必要があります。

ファイル

いいえ

"files":["oss://<testBucketName>/path/to/files_name1","oss://<testBucketName>/path/to/files_name2"]

Sparkアプリケーションに必要なファイル。 これらのファイルは、ドライバおよびエグゼキュータプロセスの作業ディレクトリにダウンロードされます。

ファイルのエイリアスを設定できます。 例: oss://<testBucketName>/test/test1.txt#test1 この例では、ファイルのエイリアスとしてtest1が使用されます。 指定できます。/test1または。/test1.txtファイルにアクセスします。

複数のファイルをコンマ (,) で区切ります。

説明
  • このパラメーターにlog4j.propertiesファイルを指定した場合、Sparkアプリケーションはlog4j.propertiesファイルをログ設定ファイルとして使用します。

  • Sparkアプリケーションに必要なすべてのファイルをOSSに保存する必要があります。

アーカイブ

いいえ

"archives":["oss://<testBucketName>/path/to/archives","oss://<testBucketName>/path/to/archives"]

Sparkアプリケーションに必要な圧縮パッケージ。 パッケージはTAR.GZ形式でなければなりません。 パッケージは、Sparkプロセスの作業ディレクトリに解凍されます。

パッケージに含まれるファイルのエイリアスを設定できます。 例: oss:// testBucketName/test/test1.tar.gz#test1 この例では、ファイルのエイリアスとしてtest1が使用されます。 たとえば、test2.txtはtest1.tar.gzパッケージに含まれるファイルです。 を指定してファイルにアクセスできます。/test1/test2.txtまたは。/test1.tar.gz/test2.txtです。

複数のパッケージをコンマ (,) で区切ります。

説明

Sparkアプリケーションに必要なすべての圧縮パッケージをOSSに格納する必要があります。 パッケージの解凍に失敗すると、ジョブは失敗します。

conf

はい

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

Sparkアプリケーションに必要な設定パラメーター。Apache Sparkのものと同様です。 パラメーターはkey: value形式である必要があります。 複数のパラメーターはコンマ (,) で区切ります。 Apache Sparkの設定パラメーターとは異なる設定パラメーター、またはAnalyticDB for MySQLに固有の設定パラメーターについては、「Sparkアプリケーション設定パラメーター」をご参照ください。

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

パラメーター

必須

説明

args

いいえ

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

JARパッケージに必要なパラメーター。 複数のパラメーターはコンマ (,) で区切ります。

className

はい

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

Javaアプリケーションのエントリクラス。

いいえ

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

Sparkアプリケーションに必要なJARパッケージの絶対パス。 複数のパスはコンマ (,) で区切ります。 Sparkアプリケーションが実行されると、JARパッケージがドライバおよびエグゼキュータJava仮想マシン (JVM) のクラスパスに追加されます。

重要
  • Sparkアプリケーションに必要なすべてのJARパッケージをOSSに保存する必要があります。

  • OSSバケットは、AnalyticDB for MySQLクラスターと同じリージョンに存在する必要があります。

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

パラメーター

必須

説明

className

はい

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

Scalaアプリケーションのエントリクラス。

いいえ

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

Sparkアプリケーションに必要なJARパッケージの絶対パス。 複数のパスはコンマ (,) で区切ります。 Sparkアプリケーションが実行されると、JARパッケージがドライバおよびエグゼキュータJava仮想マシン (JVM) のクラスパスに追加されます。

重要
  • Sparkアプリケーションに必要なすべてのJARパッケージをOSSに保存する必要があります。

  • OSSバケットは、AnalyticDB for MySQLクラスターと同じリージョンに存在する必要があります。

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

パラメーター

必須

説明

pyFiles

はい

"pyFiles":["oss://<testBucketName>/path/to/pyfiles","oss://<testBucketName>/path/to/pyfiles"]

PySparkアプリケーションに必要なPythonファイル。 ファイルは、ZIP、PY、またはEGG形式である必要があります。 複数のPythonファイルが必要な場合は、ZIPまたはEGG形式のファイルを使用することを推奨します。 Pythonコードでは、Pythonファイルをモジュールとして参照できます。 複数のパッケージをコンマ (,) で区切ります。

説明

Sparkアプリケーションに必要なすべてのPythonファイルをOSSに保存する必要があります。