# スコアリングコード用のApache Spark API

> スコアリングコード用のApache Spark API - スコアリングコードJARをSparkクラスターに統合するライブラリである、スコアリングコード用のSpark
> APIの使用方法について説明します。

This Markdown file sits beside the HTML page at the same path (with a `.md` suffix). It summarizes the topic and lists links for tools and LLM context.

Companion generated at `2026-07-15T05:55:44.603020+00:00` (UTC).

## Primary page

- [スコアリングコード用のApache Spark API](https://docs.datarobot.com/ja/docs/api/code-first-tools/sc-apache-spark.html.md): Full documentation for this topic (Markdown sidecar).

## Sections on this page

- [PySpark API](https://docs.datarobot.com/ja/docs/api/code-first-tools/sc-apache-spark.html.md#pyspark-api): In-page section heading.
- [Spark Scala API](https://docs.datarobot.com/ja/docs/api/code-first-tools/sc-apache-spark.html.md#spark-scala-api): In-page section heading.
- [CSVファイルのスコアリング](https://docs.datarobot.com/ja/docs/api/code-first-tools/sc-apache-spark.html.md#score-a-csv-file): In-page section heading.
- [ランタイムでのモデルのロード](https://docs.datarobot.com/ja/docs/api/code-first-tools/sc-apache-spark.html.md#load-models-at-runtime): In-page section heading.
- [時系列スコアリング](https://docs.datarobot.com/ja/docs/api/code-first-tools/sc-apache-spark.html.md#time-series-scoring): In-page section heading.
- [廃止されたバッジ](https://docs.datarobot.com/ja/docs/api/code-first-tools/sc-apache-spark.html.md#deprecated-spark-libraries): In-page section heading.

## Documentation content

スコアリングコード用のSpark APIライブラリは、DataRobotのスコアリングコードJARをSparkクラスターに統合します。 これは、 [PySpark API](https://docs.datarobot.com/ja/docs/api/code-first-tools/sc-apache-spark.html.md#pyspark-api) および [Spark Scala API](https://docs.datarobot.com/ja/docs/api/code-first-tools/sc-apache-spark.html.md#spark-scala-api) として使用できます。

以前のバージョンでは、スコアリングコード用のSpark APIは、複数のライブラリで構成され、それぞれが特異なSparkバージョンをサポートしていました。 現在、1つのライブラリにより、サポート済みのすべてのSparkバージョンをサポートしています。 以下のSparkバージョンはこの機能をサポートしています。

- Spark 2.4.1以降
- Spark 3.x

> [!NOTE] 重要
> Sparkは、Scala 2.12用にコンパイルする必要があります。

使用非推奨Sparkバージョン固有のライブラリのリストについては、 [Deprecated Sparkライブラリ](https://docs.datarobot.com/ja/docs/api/code-first-tools/sc-apache-spark.html.md#deprecated-spark-libraries) のセクションを参照してください。

## PySpark API

スコアリングコード用のPySpark APIは、PyPIでリリースされた [datarobot-predict](https://pypi.org/project/datarobot-predict/) Pythonパッケージに含まれています。 PyPIプロジェクトの説明には、ドキュメントと使用例が含まれています。

## Spark Scala API

スコアリングコード用のSpark Scala APIは、 [scoring-code-spark-api](https://central.sonatype.com/artifact/com.datarobot/scoring-code-spark-api) としてMavenに公開されています。 詳細については、 [APIリファレンスのドキュメント](https://javadoc.io/doc/com.datarobot/scoring-code-spark-api_3.0.0/latest/com/datarobot/prediction/spark30/Predictors$.html) を参照してください。

Spark APIを使用する前に、SparkクラスパスにSpark APIを追加する必要があります。 `spark-shell` の場合、 `--packages` パラメーターを使用して、以下のように、Mavenから直接依存関係をロードします。

```
spark-shell --conf "spark.driver.memory=2g" \
     --packages com.datarobot:scoring-code-spark-api:VERSION \
     --jars model.jar 
```

### CSVファイルのスコアリング

以下の例では、CSVファイルをSpark DataFrameにロードして、スコアリングする方法を示しています。

```
import com.datarobot.prediction.sparkapi.Predictors

val inputDf = spark.read.option("header", true).csv("input_data.csv")

val model = Predictors.getPredictor()
val output = model.transform(inputDf)

output.show() 
```

### ランタイムでのモデルのロード

以下の例では、spark-shell `--jars` パラメーターを使用する代わりに、実行時にモデルのJARファイルをロードする方法を示しています。

**DataRobotから:**
`PROJECT_ID` 、 `MODEL_ID` 、および `API_TOKEN` を定義します。

```
val model = Predictors.getPredictorFromServer(
     "https://app.datarobot.com/projects/PROJECT_ID/models/MODEL_ID/blueprint","API_TOKEN") 
```

**HDFSファイルシステムから:**
モデルJARファイルおよび `MODEL_ID` へのパスを定義します。

```
val model = Predictors.getPredictorFromHdfs("path/to/model.jar", spark, "MODEL_ID") 
```


### 時系列スコアリング

以下の例では、非時系列スコアリングの場合と同様に、 `transform` メソッドで、時系列スコアリングを実行する方法を示しています。 さらに、 `TimeSeriesOptions` ビルダーを使用して、時系列パラメーターをカスタマイズできます。

`TimeSeriesOptions` ビルダーを介して時系列モデルに追加の引数を提供しない場合、 `transform` メソッドは、自動検出された予測ポイントの予測ポイントを返します。

```
val model = Predictors.getPredictor()
val forecastPointPredictions = model.transform(timeSeriesDf) 
```

予測ポイントを定義するには、以下の `buildSingleForecastPointRequest()` ビルダーメソッドを使用します。

```
import com.datarobot.prediction.TimeSeriesOptions

val tsOptions = new TimeSeriesOptions.Builder().buildSingleForecastPointRequest("2010-12-05")
val model = Predictors.getPredictor(modelId, tsOptions)
val output = model.transform(inputDf) 
```

過去の予測を返すには、以下の `buildForecastPointRequest()` ビルダーメソッドを使用して開始日付と終了日付を定義できます。

```
val tsOptions = new TimeSeriesOptions.Builder().buildForecastDateRangeRequest("2010-12-05", "2011-01-02") 
```

完全なリファレンスについては、 [TimeSeriesOptions javadoc](https://javadoc.io/doc/com.datarobot/datarobot-prediction/latest/com/datarobot/prediction/TimeSeriesOptions.Builder.html) を参照してください。

## 廃止されたバッジ

2.4.1以前のSparkバージョン、または2.12以前のScala用にコンパイルされたSparkのサポートは、使用非推奨となります。 必要に応じて、Maven Centralで公開されている使用非推奨のライブラリにアクセスできますが、それ以上の更新は行われません。

以下のライブラリは、使用非推奨となっています。

| 名前 | Sparkバージョン | Scalaバージョン |
| --- | --- | --- |
| scoring-code-spark-api_1.6.0 | 1.6.0 | 2.10 |
| scoring-code-spark-api_2.4.3 | 2.4.3 | 2.11 |
| scoring-code-spark-api_3.0.0 | 3.0.0 | 2.12 |
