

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Traitement des données à l'aide de la commande `dataprocessing`
<a name="machine-learning-api-dataprocessing"></a>

Vous utilisez la commande Neptune ML `dataprocessing` pour créer une tâche de traitement de données, vérifier son statut, l'arrêter ou répertorier toutes les tâches de traitement de données actives.

## Création d'une tâche de traitement de données à l'aide de la commande Neptune ML `dataprocessing`
<a name="machine-learning-api-dataprocessing-create-job"></a>

Une commande Neptune ML `dataprocessing` typique pour créer une nouvelle tâche ressemble à ceci :

------
#### [ AWS CLI ]

```
aws neptunedata start-ml-data-processing-job \
  --endpoint-url https://your-neptune-endpoint:port \
  --input-data-s3-location "s3://(S3 bucket name)/(path to your input folder)" \
  --id "(a job ID for the new job)" \
  --processed-data-s3-location "s3://(S3 bucket name)/(path to your output folder)"
```

Pour plus d'informations, consultez [start-ml-data-processing-job](https://docs.aws.amazon.com/cli/latest/reference/neptunedata/start-ml-data-processing-job.html) dans le manuel de référence des AWS CLI commandes.

------
#### [ SDK ]

```
import boto3
from botocore.config import Config

client = boto3.client(
    'neptunedata',
    endpoint_url='https://your-neptune-endpoint:port',
    config=Config(read_timeout=None, retries={'total_max_attempts': 1})
)

response = client.start_ml_data_processing_job(
    inputDataS3Location='s3://(S3 bucket name)/(path to your input folder)',
    id='(a job ID for the new job)',
    processedDataS3Location='s3://(S3 bucket name)/(path to your output folder)'
)

print(response)
```

------
#### [ awscurl ]

```
awscurl https://your-neptune-endpoint:port/ml/dataprocessing \
  --region us-east-1 \
  --service neptune-db \
  -X POST \
  -H 'Content-Type: application/json' \
  -d '{
        "inputDataS3Location" : "s3://(S3 bucket name)/(path to your input folder)",
        "id" : "(a job ID for the new job)",
        "processedDataS3Location" : "s3://(S3 bucket name)/(path to your output folder)"
      }'
```

**Note**  
Cet exemple suppose que vos AWS informations d'identification sont configurées dans votre environnement. Remplacez *us-east-1* par la région de votre cluster Neptune.

------
#### [ curl ]

```
curl \
  -X POST https://your-neptune-endpoint:port/ml/dataprocessing \
  -H 'Content-Type: application/json' \
  -d '{
        "inputDataS3Location" : "s3://(S3 bucket name)/(path to your input folder)",
        "id" : "(a job ID for the new job)",
        "processedDataS3Location" : "s3://(S3 bucket name)/(path to your output folder)"
      }'
```

------

Une commande pour lancer un retraitement incrémentiel ressemble à ceci :

------
#### [ AWS CLI ]

```
aws neptunedata start-ml-data-processing-job \
  --endpoint-url https://your-neptune-endpoint:port \
  --input-data-s3-location "s3://(S3 bucket name)/(path to your input folder)" \
  --id "(a job ID for this job)" \
  --processed-data-s3-location "s3://(S3 bucket name)/(path to your output folder)" \
  --previous-data-processing-job-id "(the job ID of a previously completed job to update)"
```

Pour plus d'informations, consultez [start-ml-data-processing-job](https://docs.aws.amazon.com/cli/latest/reference/neptunedata/start-ml-data-processing-job.html) dans le manuel de référence des AWS CLI commandes.

------
#### [ SDK ]

```
import boto3
from botocore.config import Config

client = boto3.client(
    'neptunedata',
    endpoint_url='https://your-neptune-endpoint:port',
    config=Config(read_timeout=None, retries={'total_max_attempts': 1})
)

response = client.start_ml_data_processing_job(
    inputDataS3Location='s3://(S3 bucket name)/(path to your input folder)',
    id='(a job ID for this job)',
    processedDataS3Location='s3://(S3 bucket name)/(path to your output folder)',
    previousDataProcessingJobId='(the job ID of a previously completed job to update)'
)

print(response)
```

------
#### [ awscurl ]

```
awscurl https://your-neptune-endpoint:port/ml/dataprocessing \
  --region us-east-1 \
  --service neptune-db \
  -X POST \
  -H 'Content-Type: application/json' \
  -d '{
        "inputDataS3Location" : "s3://(S3 bucket name)/(path to your input folder)",
        "id" : "(a job ID for this job)",
        "processedDataS3Location" : "s3://(S3 bucket name)/(path to your output folder)",
        "previousDataProcessingJobId" : "(the job ID of a previously completed job to update)"
      }'
```

**Note**  
Cet exemple suppose que vos AWS informations d'identification sont configurées dans votre environnement. Remplacez *us-east-1* par la région de votre cluster Neptune.

------
#### [ curl ]

```
curl \
  -X POST https://your-neptune-endpoint:port/ml/dataprocessing \
  -H 'Content-Type: application/json' \
  -d '{
        "inputDataS3Location" : "s3://(S3 bucket name)/(path to your input folder)",
        "id" : "(a job ID for this job)",
        "processedDataS3Location" : "s3://(S3 bucket name)/(path to your output folder)",
        "previousDataProcessingJobId" : "(the job ID of a previously completed job to update)"
      }'
```

------

**Paramètres de création d'une tâche `dataprocessing`**
+ **`id`** : (*facultatif*) identifiant unique de la nouvelle tâche.

  *Type* : string. *Valeur par défaut* : un UUID généré automatiquement.
+ **`previousDataProcessingJobId`** : (*facultatif*) ID de tâche d'une tâche de traitement de données terminée, exécutée sur une version antérieure des données.

  *Type* : string. *Valeur par défaut* : *aucune*.

  *Remarque* : Utilisez-le pour le traitement incrémentiel des données, afin de mettre à jour le modèle quand les données du graphe ont changé (mais pas quand les données ont été supprimées).
+ **`inputDataS3Location`**— (*Obligatoire*) L'URI de l'emplacement Amazon S3 où vous souhaitez qu' SageMaker AI télécharge les données nécessaires à l'exécution de la tâche de traitement des données.

  *Type* : string.
+ **`processedDataS3Location`**— (*Obligatoire*) L'URI de l'emplacement Amazon S3 où vous souhaitez qu' SageMaker AI enregistre les résultats d'une tâche de traitement de données.

  *Type* : string.
+ **`sagemakerIamRoleArn`**— (*Facultatif*) L'ARN d'un rôle IAM pour l'exécution de l' SageMaker IA.

  *Type* : string. *Remarque* : Il doit être répertorié dans le groupe de paramètres de votre cluster de bases de données, sinon une erreur se produira.
+ **`neptuneIamRoleArn`**— (*Facultatif*) Le nom de ressource Amazon (ARN) d'un rôle IAM que l' SageMaker IA peut assumer pour effectuer des tâches en votre nom.

  *Type* : string. *Remarque* : Il doit être répertorié dans le groupe de paramètres de votre cluster de bases de données, sinon une erreur se produira.
+ **`processingInstanceType`** : (*facultatif*) type d'instance ML utilisé lors du traitement des données. Sa mémoire doit être suffisamment grande pour contenir le jeu de données traité.

  *Type* : string. *Valeur par défaut* : le plus petit type d'instance `ml.r5` dont la mémoire est dix fois supérieure à la taille des données de graphe exportées sur le disque.

  *Remarque* : Neptune ML peut sélectionner le type d'instance automatiquement. Consultez [Sélection d'une instance pour le traitement des données](machine-learning-on-graphs-instance-selection.md#machine-learning-on-graphs-processing-instance-size).
+ **`processingInstanceVolumeSizeInGB`** : (*facultatif*) taille du volume de disque de l'instance de traitement. Les données d'entrée et les données traitées étant toutes stockées sur disque, la taille du volume doit être suffisante pour contenir les deux jeux de données.

  *Type* : entier. *Par défaut* : `0`.

  *Remarque* : Si ce paramètre n'est pas spécifié ou s'il est égal à 0, Neptune ML choisit automatiquement la taille du volume en fonction de la taille des données.
+ **`processingTimeOutInSeconds`** : (*facultatif*) délai d'expiration en secondes pour la tâche de traitement des données.

  *Type* : entier. *Valeur par défaut* : `86,400` (1 jour).
+ **`modelType`** : (*facultatif*) l'un des deux types de modèles actuellement pris en charge par Neptune ML : modèles de graphes hétérogènes (`heterogeneous`) et graphe de connaissances (`kge`).

  *Type* : string. *Valeur par défaut* : *aucune*.

  *Remarque* : Si ce paramètre n'est pas spécifié, Neptune ML choisit automatiquement le type de modèle en fonction des données.
+ **`configFileName`** : (*facultatif*) fichier de spécification de données qui décrit comment charger les données de graphe exportées à des fins d'entraînement. Ce fichier est automatiquement généré par la boîte à outils d'exportation Neptune.

  *Type* : string. *Par défaut* : `training-data-configuration.json`.
+ **`subnets`**— (*Facultatif*) Les IDs sous-réseaux du VPC Neptune.

  *Type* : liste de chaînes. *Valeur par défaut* : *aucune*.
+ **`securityGroupIds`**— (*Facultatif*) Le groupe de sécurité VPC. IDs

  *Type* : liste de chaînes. *Valeur par défaut* : *aucune*.
+ **`volumeEncryptionKMSKey`**— (*Facultatif*) La clé AWS Key Management Service (AWS KMS) utilisée par SageMaker AI pour chiffrer les données sur le volume de stockage attaché aux instances de calcul ML qui exécutent la tâche de traitement.

  *Type* : string. *Valeur par défaut* : *aucune*.
+ **`enableInterContainerTrafficEncryption`** : (*facultatif*) activez ou désactivez le chiffrement du trafic entre conteneurs dans les tâches d'entraînement ou de réglage des hyperparamètres.

  *Type* : booléen. *Valeur par défaut* : *True*.
**Note**  
Le paramètre `enableInterContainerTrafficEncryption` est disponible uniquement dans la [version 1.2.0.2.R3 du moteur](engine-releases-1.2.0.2.R3.md).
+ **`s3OutputEncryptionKMSKey`**— (*Facultatif*) La clé AWS Key Management Service (AWS KMS) utilisée par l' SageMaker IA pour chiffrer le résultat du travail de formation.

  *Type* : string. *Valeur par défaut* : *aucune*.

## Obtention du statut d'une tâche de traitement de données à l'aide de la commande Neptune ML `dataprocessing`
<a name="machine-learning-api-dataprocessing-get-job-status"></a>

Voici un exemple de commande Neptune ML `dataprocessing` pour obtenir le statut d'une tâche :

------
#### [ AWS CLI ]

```
aws neptunedata get-ml-data-processing-job \
  --endpoint-url https://your-neptune-endpoint:port \
  --id "(the job ID)"
```

Pour plus d'informations, consultez [get-ml-data-processing-job](https://docs.aws.amazon.com/cli/latest/reference/neptunedata/get-ml-data-processing-job.html) dans le manuel de référence des AWS CLI commandes.

------
#### [ SDK ]

```
import boto3
from botocore.config import Config

client = boto3.client(
    'neptunedata',
    endpoint_url='https://your-neptune-endpoint:port',
    config=Config(read_timeout=None, retries={'total_max_attempts': 1})
)

response = client.get_ml_data_processing_job(
    id='(the job ID)'
)

print(response)
```

------
#### [ awscurl ]

```
awscurl https://your-neptune-endpoint:port/ml/dataprocessing/(the job ID) \
  --region us-east-1 \
  --service neptune-db \
  -X GET
```

**Note**  
Cet exemple suppose que vos AWS informations d'identification sont configurées dans votre environnement. Remplacez *us-east-1* par la région de votre cluster Neptune.

------
#### [ curl ]

```
curl -s \
  "https://your-neptune-endpoint:port/ml/dataprocessing/(the job ID)" \
  | python -m json.tool
```

------

**Paramètres d'obtention du statut de la tâche `dataprocessing`**
+ **`id`** : (*obligatoire*) identifiant unique de la tâche de traitement de données.

  *Type* : string.
+ **`neptuneIamRoleArn`**— (*Facultatif*) L'ARN d'un rôle IAM qui permet à Neptune d'accéder SageMaker aux ressources AI et Amazon S3.

  *Type* : string. *Remarque* : Il doit être répertorié dans le groupe de paramètres de votre cluster de bases de données, sinon une erreur se produira.

## Arrêt d'une tâche de traitement de données à l'aide de la commande Neptune ML `dataprocessing`
<a name="machine-learning-api-dataprocessing-stop-job"></a>

Voici un exemple de commande Neptune ML `dataprocessing` permettant d'arrêter une tâche :

------
#### [ AWS CLI ]

```
aws neptunedata cancel-ml-data-processing-job \
  --endpoint-url https://your-neptune-endpoint:port \
  --id "(the job ID)"
```

Pour également nettoyer les artefacts Amazon S3, procédez comme suit :

```
aws neptunedata cancel-ml-data-processing-job \
  --endpoint-url https://your-neptune-endpoint:port \
  --id "(the job ID)" \
  --clean
```

Pour plus d'informations, consultez [cancel-ml-data-processing-job](https://docs.aws.amazon.com/cli/latest/reference/neptunedata/cancel-ml-data-processing-job.html) dans le manuel de référence des AWS CLI commandes.

------
#### [ SDK ]

```
import boto3
from botocore.config import Config

client = boto3.client(
    'neptunedata',
    endpoint_url='https://your-neptune-endpoint:port',
    config=Config(read_timeout=None, retries={'total_max_attempts': 1})
)

response = client.cancel_ml_data_processing_job(
    id='(the job ID)',
    clean=True
)

print(response)
```

------
#### [ awscurl ]

```
awscurl https://your-neptune-endpoint:port/ml/dataprocessing/(the job ID) \
  --region us-east-1 \
  --service neptune-db \
  -X DELETE
```

Pour également nettoyer les artefacts Amazon S3, procédez comme suit :

```
awscurl "https://your-neptune-endpoint:port/ml/dataprocessing/(the job ID)?clean=true" \
  --region us-east-1 \
  --service neptune-db \
  -X DELETE
```

**Note**  
Cet exemple suppose que vos AWS informations d'identification sont configurées dans votre environnement. Remplacez *us-east-1* par la région de votre cluster Neptune.

------
#### [ curl ]

```
curl -s \
  -X DELETE "https://your-neptune-endpoint:port/ml/dataprocessing/(the job ID)"
```

Ou encore :

```
curl -s \
  -X DELETE "https://your-neptune-endpoint:port/ml/dataprocessing/(the job ID)?clean=true"
```

------

**Paramètres d'arrêt de la tâche `dataprocessing`**
+ **`id`** : (*obligatoire*) identifiant unique de la tâche de traitement de données.

  *Type* : string.
+ **`neptuneIamRoleArn`**— (*Facultatif*) L'ARN d'un rôle IAM qui permet à Neptune d'accéder SageMaker aux ressources AI et Amazon S3.

  *Type* : string. *Remarque* : Il doit être répertorié dans le groupe de paramètres de votre cluster de bases de données, sinon une erreur se produira.
+ **`clean`** : (*facultatif*) cet indicateur spécifie que tous les artefacts Amazon S3 doivent être supprimés lorsque la tâche est arrêtée.

  *Type* : booléen. *Par défaut* : `FALSE`.

## Répertorier les tâches de traitement de données actives à l'aide de la commande Neptune ML `dataprocessing`
<a name="machine-learning-api-dataprocessing-list-jobs"></a>

Voici un exemple de commande Neptune ML `dataprocessing` permettant de répertorier les tâches actives :

------
#### [ AWS CLI ]

```
aws neptunedata list-ml-data-processing-jobs \
  --endpoint-url https://your-neptune-endpoint:port
```

Pour limiter le nombre de résultats :

```
aws neptunedata list-ml-data-processing-jobs \
  --endpoint-url https://your-neptune-endpoint:port \
  --max-items 3
```

Pour plus d'informations, consultez [list-ml-data-processing-jobs](https://docs.aws.amazon.com/cli/latest/reference/neptunedata/list-ml-data-processing-jobs.html) dans le manuel de référence des AWS CLI commandes.

------
#### [ SDK ]

```
import boto3
from botocore.config import Config

client = boto3.client(
    'neptunedata',
    endpoint_url='https://your-neptune-endpoint:port',
    config=Config(read_timeout=None, retries={'total_max_attempts': 1})
)

response = client.list_ml_data_processing_jobs(
    maxItems=3
)

print(response)
```

------
#### [ awscurl ]

```
awscurl https://your-neptune-endpoint:port/ml/dataprocessing \
  --region us-east-1 \
  --service neptune-db \
  -X GET
```

Pour limiter le nombre de résultats :

```
awscurl "https://your-neptune-endpoint:port/ml/dataprocessing?maxItems=3" \
  --region us-east-1 \
  --service neptune-db \
  -X GET
```

**Note**  
Cet exemple suppose que vos AWS informations d'identification sont configurées dans votre environnement. Remplacez *us-east-1* par la région de votre cluster Neptune.

------
#### [ curl ]

```
curl -s "https://your-neptune-endpoint:port/ml/dataprocessing"
```

Ou encore :

```
curl -s "https://your-neptune-endpoint:port/ml/dataprocessing?maxItems=3"
```

------

**Paramètres pour répertorier les tâches `dataprocessing`**
+ **`maxItems`** : (*facultatif*) nombre maximal d'éléments à renvoyer.

  *Type* : entier. *Par défaut* : `10`. *Valeur maximale autorisée* : `1024`.
+ **`neptuneIamRoleArn`**— (*Facultatif*) L'ARN d'un rôle IAM qui permet à Neptune d'accéder SageMaker aux ressources AI et Amazon S3.

  *Type* : string. *Remarque* : Il doit être répertorié dans le groupe de paramètres de votre cluster de bases de données, sinon une erreur se produira.