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 | いいえ |
| Sparkアプリケーションの名前。 |
file | Python、Java、およびScalaアプリケーションの場合ははい |
| Sparkアプリケーションのメインファイルの絶対パス。 メインファイルは、エントリポイントを含むJARパッケージ、またはPythonプログラムのエントリポイントとして機能する実行可能ファイルです。 重要 SparkアプリケーションのメインファイルをOSSに保存する必要があります。 OSSバケットは、AnalyticDB for MySQLクラスターと同じリージョンに存在する必要があります。 |
ファイル | いいえ |
| Sparkアプリケーションに必要なファイル。 これらのファイルは、ドライバおよびエグゼキュータプロセスの作業ディレクトリにダウンロードされます。 ファイルのエイリアスを設定できます。 例: 複数のファイルをコンマ (,) で区切ります。 説明
|
アーカイブ | いいえ |
| Sparkアプリケーションに必要な圧縮パッケージ。 パッケージはTAR.GZ形式でなければなりません。 パッケージは、Sparkプロセスの作業ディレクトリに解凍されます。 パッケージに含まれるファイルのエイリアスを設定できます。 例: 複数のパッケージをコンマ (,) で区切ります。 説明 Sparkアプリケーションに必要なすべての圧縮パッケージをOSSに格納する必要があります。 パッケージの解凍に失敗すると、ジョブは失敗します。 |
conf | はい |
| Sparkアプリケーションに必要な設定パラメーター。Apache Sparkのものと同様です。 パラメーターは |
Javaアプリケーションパラメータ
パラメーター | 必須 | 例 | 説明 |
args | いいえ |
| JARパッケージに必要なパラメーター。 複数のパラメーターはコンマ (,) で区切ります。 |
className | はい |
| Javaアプリケーションのエントリクラス。 |
瓶 | いいえ |
| Sparkアプリケーションに必要なJARパッケージの絶対パス。 複数のパスはコンマ (,) で区切ります。 Sparkアプリケーションが実行されると、JARパッケージがドライバおよびエグゼキュータJava仮想マシン (JVM) のクラスパスに追加されます。 重要
|
Scalaアプリケーションパラメーター
パラメーター | 必須 | 例 | 説明 |
className | はい |
| Scalaアプリケーションのエントリクラス。 |
瓶 | いいえ |
| Sparkアプリケーションに必要なJARパッケージの絶対パス。 複数のパスはコンマ (,) で区切ります。 Sparkアプリケーションが実行されると、JARパッケージがドライバおよびエグゼキュータJava仮想マシン (JVM) のクラスパスに追加されます。 重要
|
Pythonアプリケーションパラメーター
パラメーター | 必須 | 例 | 説明 |
pyFiles | はい |
| PySparkアプリケーションに必要なPythonファイル。 ファイルは、ZIP、PY、またはEGG形式である必要があります。 複数のPythonファイルが必要な場合は、ZIPまたはEGG形式のファイルを使用することを推奨します。 Pythonコードでは、Pythonファイルをモジュールとして参照できます。 複数のパッケージをコンマ (,) で区切ります。 説明 Sparkアプリケーションに必要なすべてのPythonファイルをOSSに保存する必要があります。 |