

Non aggiorniamo più il servizio Amazon Machine Learning né accettiamo nuovi utenti. Questa documentazione è disponibile per gli utenti esistenti, ma non la aggiorniamo più. Per ulteriori informazioni, consulta [Cos'è Amazon Machine Learning](https://docs.aws.amazon.com/machine-learning/latest/dg/what-is-amazon-machine-learning.html).

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Riferimento Amazon Machine Learning
<a name="amazon-machine-learning-reference"></a>

**Topics**
+ [Concessione ad Amazon ML delle autorizzazioni per leggere i dati da Amazon S3](granting-amazon-ml-permissions-to-read-your-data-from-amazon-s3.md)
+ [Concessione ad Amazon ML delle autorizzazioni per generare previsioni in Amazon S3](granting-amazon-ml-permissions-to-output-predictions-to-amazon-s3.md)
+ [Controllo dell'accesso alle risorse Amazon ML con IAM](controlling-access-to-amazon-ml-resources-by-using-iam.md)
+ [Prevenzione del confused deputy tra servizi](cross-service-confused-deputy-prevention.md)
+ [Gestione delle dipendenze nelle operazioni asincrone](dependency-management-of-asynchronous-operations.md)
+ [Verifica dello stato della richiesta](operation-request-status.md)
+ [Limiti di sistema](system-limits.md)
+ [Nomi e IDs per tutti gli oggetti](names-and-ids-for-all-objects.md)
+ [Durate degli oggetti](object-lifetimes.md)

# Concessione ad Amazon ML delle autorizzazioni per leggere i dati da Amazon S3
<a name="granting-amazon-ml-permissions-to-read-your-data-from-amazon-s3"></a>

 Per creare un oggetto origine dati dai dati di input in Amazon S3, è necessario concedere ad Amazon ML le autorizzazioni seguenti per la posizione S3 in cui i dati di input sono memorizzati: 
+  **GetObject**autorizzazione sul bucket e sul prefisso S3. 
+  **ListBucket**autorizzazione sul bucket S3. A differenza di altre azioni, **ListBucket**devono essere concesse le autorizzazioni a livello di bucket (anziché sul prefisso). Tuttavia, è possibile ampliare la portata dell'autorizzazione a un determinato prefisso utilizzando una clausola **Condition (Condizione)**. 

 Se si utilizza la console di Amazon ML per creare l'origine dati, queste autorizzazioni possono essere aggiunte al bucket per l'utente. Ti verrà richiesto di confermare se desideri aggiungerli man mano che completi i passaggi della procedura guidata. La seguente politica di esempio mostra come concedere l'autorizzazione ad Amazon ML per leggere i dati dalla posizione di esempio s3://*examplebucket*/*exampleprefix*, definendo l'**ListBucket**autorizzazione solo per il percorso di input. *exampleprefix* 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "machinelearning.amazonaws.com"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::examplebucket/exampleprefix/*",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012:*"
                }
            }
        },
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "machinelearning.amazonaws.com"
            },
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::examplebucket",
            "Condition": {
                "StringLike": {
                    "s3:prefix": "exampleprefix/*"
                },
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012:*"
                }
            }
        }
    ]
}
```

------

Per applicare questa policy ai dati, è necessario modificare l'istruzione di policy associata al bucket S3 in cui i dati sono archiviati. 

**Per modificare la policy delle autorizzazioni per un bucket S3 (tramite la console precedente)**

1. Accedi a Console di gestione AWS e apri la console Amazon S3 all'indirizzo. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

1. Selezionare il nome del bucket in cui sono archiviati i dati.

1. Scegli **Properties (Proprietà)**.

1. Scegliere **Edit bucket policy (Modifica policy bucket)**.

1. Inserire la policy riportata sopra, personalizzarla secondo le proprie esigenze, quindi scegliere **Save (Salva)**.

1. Scegli **Save** (Salva).



**Per modificare la policy delle autorizzazioni per un bucket S3 (tramite la nuova console)**

1. Accedi a Console di gestione AWS e apri la console Amazon S3 all'indirizzo. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

1. Selezionare il nome del bucket, quindi **Permissions (Autorizzazioni)**.

1. Scegli **Bucket Policy** (Policy del bucket).

1. Inserire la policy mostrata sopra, personalizzandola secondo le proprie esigenze.

1. Scegli **Save** (Salva).

# Concessione ad Amazon ML delle autorizzazioni per generare previsioni in Amazon S3
<a name="granting-amazon-ml-permissions-to-output-predictions-to-amazon-s3"></a>

 Per generare i risultati dell'operazione di previsione in batch in Amazon S3, è necessario concedere ad Amazon ML le seguenti autorizzazioni per la posizione dei risultati, che viene fornita come input dell'operazione Crea previsione in batch: 
+  **GetObject**autorizzazione sul bucket e sul prefisso S3. 
+  **PutObject**autorizzazione sul tuo bucket e prefisso S3. 
+  **PutObjectAcl**sul tuo bucket e prefisso S3. 
  +  Amazon ML necessita di questa autorizzazione per garantire di poter concedere l' bucket-owner-full-controlautorizzazione [ACL predefinita](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#canned-acl) al tuo account AWS, dopo la creazione degli oggetti. 
+  **ListBucket**autorizzazione sul bucket S3. A differenza di altre azioni, **ListBucket**devono essere concesse le autorizzazioni a livello di bucket (anziché sul prefisso). Tuttavia, è possibile ampliare la portata dell'autorizzazione a un determinato prefisso utilizzando una clausola **Condition (Condizione)**. 

 Se si utilizza la console di Amazon ML per creare la richiesta di previsione in batch, queste autorizzazioni possono essere aggiunte al bucket per l'utente. All'utente verrà richiesto di confermare se desidera aggiungerli al termine della procedura guidata. 

 La seguente politica di esempio mostra come concedere l'autorizzazione ad Amazon ML per scrivere dati nella posizione di esempio s3://examplebucket/exampleprefix, definendo l'**ListBucket**autorizzazione solo per il percorso di input exampleprefix e concedendo l'autorizzazione ad Amazon ML per impostare l'oggetto ACLs put sul prefisso di output: 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "machinelearning.amazonaws.com"
            },
            "Action": [
                "s3:GetObject",
                "s3:PutObject"
            ],
            "Resource": "arn:aws:s3:::examplebucket/exampleprefix/*",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012:*"
                }
            }
        },
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "machinelearning.amazonaws.com"
            },
            "Action": "s3:PutObjectAcl",
            "Resource": "arn:aws:s3:::examplebucket/exampleprefix/*",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012:*"
                }
            }
        },
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "machinelearning.amazonaws.com"
            },
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::examplebucket",
            "Condition": {
                "StringLike": {
                    "s3:prefix": "exampleprefix/*"
                },
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012:*"
                }
            }
        }
    ]
}
```

------

Per applicare questa policy ai dati, è necessario modificare l'istruzione di policy associata al bucket S3 in cui i dati sono archiviati. 

**Per modificare la policy delle autorizzazioni per un bucket S3 (tramite la console precedente)**

1. Accedi a Console di gestione AWS e apri la console Amazon S3 all'indirizzo. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

1. Selezionare il nome del bucket in cui sono archiviati i dati.

1. Scegli **Properties (Proprietà)**.

1. Scegliere **Edit bucket policy (Modifica policy bucket)**.

1. Inserire la policy riportata sopra, personalizzarla secondo le proprie esigenze, quindi scegliere **Save (Salva)**.

1. Scegli **Save** (Salva).



**Per modificare la policy delle autorizzazioni per un bucket S3 (tramite la nuova console)**

1. Accedi a Console di gestione AWS e apri la console Amazon S3 all'indirizzo. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

1. Selezionare il nome del bucket, quindi **Permissions (Autorizzazioni)**.

1. Scegli **Bucket Policy** (Policy del bucket).

1. Inserire la policy mostrata sopra, personalizzandola secondo le proprie esigenze.

1. Scegli **Save** (Salva).

# Controllo dell'accesso alle risorse Amazon ML con IAM
<a name="controlling-access-to-amazon-ml-resources-by-using-iam"></a>

AWS Identity and Access Management (IAM) ti consente di controllare in modo sicuro l'accesso ai servizi e alle risorse AWS per i tuoi utenti. Con IAM, puoi creare e gestire utenti, gruppi e ruoli AWS e utilizzare le autorizzazioni per consentire e negare il loro accesso alle risorse AWS. Utilizzando IAM con Amazon Machine Learning (Amazon ML), puoi controllare se gli utenti della tua organizzazione possono utilizzare risorse AWS specifiche e se possono eseguire un'attività utilizzando azioni API Amazon ML specifiche.

 IAM ti consente di: 
+  Creare utenti e gruppi all'interno dell'account AWS. 
+  Assegnare credenziali di sicurezza univoche a ciascun utente all'interno dell'account AWS 
+  Controllare le autorizzazioni di ciascun utente per eseguire attività utilizzando le risorse AWS 
+  Condividere facilmente le risorse AWS con gli utenti nell'account AWS 
+  Creare ruoli per l'account AWS e gestire le autorizzazioni assegnate loro per definire gli utenti o i servizi che possono utilizzarle 
+ È possibile creare ruoli in IAM e gestire le autorizzazioni per controllare quali operazioni possono essere eseguite dall'entità, o dal servizio AWS, che assume il ruolo. Puoi inoltre definire quale entità può assumere quel ruolo.



 Se l'organizzazione dispone già di identità IAM, è possibile utilizzarle per concedere le autorizzazioni per eseguire attività utilizzando le risorse AWS. 

Per ulteriori informazioni su IAM, consulta la [Guida per l'utente di IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/).

## Sintassi della politica IAM
<a name="policy-syntax"></a>

 Una policy IAM è un documento JSON costituito da una o più istruzioni. Ogni dichiarazione ha la seguente struttura: 

```
{
    "Statement":[{
        "Effect":"effect",
        "Action":"action",
        "Resource":"arn",
        "Condition":{
            "condition operator":{
                "key":"value"
            }
        }
    }]
}
```

 Una dichiarazione di policy include i seguenti elementi: 
+  **Effetto** controlla l'autorizzazione a utilizzare le risorse e operazioni API che saranno specificate successivamente nella dichiarazione. I valori validi sono `Allow` e `Deny`. Per impostazione predefinita, gli utenti IAM non dispongono dell'autorizzazione per l'utilizzo delle risorse e per operazioni API, pertanto tutte le richieste vengono rifiutate. Un `Allow` esplicito sostituisce l'impostazione predefinita. Un `Deny` esplicito sostituisce qualsiasi `Allows`. 
+  **Operazione**: l'operazione o le operazioni API specifiche per le quali si concede o si rifiuta l'autorizzazione. 
+  **Resource** (Risorsa): la risorsa che viene modificata dall'operazione. Per specificare una risorsa nella dichiarazione, si utilizza il suo ARN (Amazon Resource Name). 
+  **Condizione** (facoltativa): controlla quando la policy sarà applicata. 

 Per semplificare la creazione e la gestione delle policy IAM, puoi utilizzare AWS Policy Generator e IAM Policy Simulator. 

## Specificazione delle azioni delle policy IAM per Amazon ML MLAmazon
<a name="actions-for-amazon-ml"></a>

 In una dichiarazione sulla politica IAM, puoi specificare un'azione API per qualsiasi servizio che supporti IAM. Quando crei una dichiarazione di policy per le azioni API di Amazon ML, `machinelearning:` aggiungi il nome dell'azione API, come mostrato negli esempi seguenti: 
+ `machinelearning:CreateDataSourceFromS3`
+ `machinelearning:DescribeDataSources`
+ `machinelearning:DeleteDataSource`
+ `machinelearning:GetDataSource`

 Per specificare più operazioni in una sola istruzione, separarle con la virgola: 

```
"Action": ["machinelearning:action1", "machinelearning:action2"]
```

Puoi anche specificare più operazioni tramite caratteri jolly. Ad esempio, è possibile specificare tutte le operazioni il cui nome inizia con una determinata parola:

```
"Action": "machinelearning:Get*"
```

Per specificare tutte le azioni di Amazon ML, usa la wildcard \$1:

```
"Action": "machinelearning:*"
```

 Per l'elenco completo delle azioni dell'API Amazon ML, consulta l'[Amazon Machine Learning API Reference](https://docs.aws.amazon.com/machine-learning/latest/APIReference/). 

## Specificazione ARNs delle risorse Amazon ML nelle politiche IAM
<a name="amazon-resource-names-arns-for-amazon-ml"></a>

 Le dichiarazioni politiche IAM si applicano a una o più risorse. Specificate le risorse per le vostre politiche in base alle loro ARNs. 

 Per specificare le ARNs risorse di Amazon ML, utilizza il seguente formato: 

 "Resource": `arn:aws:machinelearning:region:account:resource-type/identifier `

 I seguenti esempi mostrano come specificare common ARNs.

 ID origine dati: `my-s3-datasource-id `

```
"Resource":
arn:aws:machinelearning:<region>:<your-account-id>:datasource/my-s3-datasource-id
```

 ID modello ML: `my-ml-model-id `

```
"Resource":
arn:aws:machinelearning:<region>:<your-account-id>:mlmodel/my-ml-model-id
```

 ID previsione batch: `my-batchprediction-id `

```
"Resource":
arn:aws:machinelearning:<region>:<your-account-id>:batchprediction/my-batchprediction-id
```

 ID valutazione: `my-evaluation-id `

```
"Resource": arn:aws:machinelearning:<region>:<your-account-id>:evaluation/my-evaluation-id
```

## Politiche di esempio per Amazon MLs
<a name="example-policies-for-amazon-ml"></a>

 **Esempio 1: permette agli utenti di leggere i metadati delle risorse di machine learning** 

La seguente politica consente a un utente o a un gruppo di leggere i metadati di origini dati, modelli ML, previsioni in batch e valutazioni eseguendo [DescribeDataSources](https://docs.aws.amazon.com/machine-learning/latest/APIReference/API_DescribeDataSources.html), [Descrivi MLModels [DescribeBatchPredictions[DescribeEvaluations](https://docs.aws.amazon.com/machine-learning/latest/APIReference/API_DescribeEvaluations.html)](https://docs.aws.amazon.com/machine-learning/latest/APIReference/API_DescribeBatchPredictions.html)](https://docs.aws.amazon.com/machine-learning/latest/APIReference/API_DescribeMLModels.html), [GetDataSource](https://docs.aws.amazon.com/machine-learning/latest/APIReference/API_GetDataSource.html), MLModel [GetBatchPrediction](https://docs.aws.amazon.com/machine-learning/latest/APIReference/API_GetBatchPrediction.html), [Get](https://docs.aws.amazon.com/machine-learning/latest/APIReference/API_GetMLModel.html) e [GetEvaluation](https://docs.aws.amazon.com/machine-learning/latest/APIReference/API_GetEvaluation.html)azioni sulle risorse specificate. Le autorizzazioni per le operazioni Descrivi\$1 non possono essere limitate a una specifica risorsa.

------
#### [ JSON ]

****  

```
{ "Version":"2012-10-17",		 	 	  "Statement": [ { "Effect": "Allow", "Action": [
    "machinelearning:Get*" ], "Resource": [
        "arn:aws:machinelearning:us-east-1:123456789012:datasource/S3-DS-ID1",
        "arn:aws:machinelearning:us-east-1:123456789012:datasource/REDSHIFT-DS-ID1",
        "arn:aws:machinelearning:us-east-1:123456789012:mlmodel/ML-MODEL-ID1",
        "arn:aws:machinelearning:us-east-1:123456789012:batchprediction/BP-ID1",
        "arn:aws:machinelearning:us-east-1:123456789012:evaluation/EV-ID1"
    ] }, { "Effect": "Allow", "Action": [ "machinelearning:Describe*" ], "Resource": [ "*" ] } ]
    }
```

------

 **Esempio 2: permette agli utenti di creare risorse di machine learning** 

 La policy seguente permette a un utente o a un gruppo di creare origini dati di machine learning, modelli ML, previsioni in batch e valutazioni eseguendo le operazioni `CreateDataSourceFromS3`, `CreateDataSourceFromRedshift`, `CreateDataSourceFromRDS`, `CreateMLModel`, `CreateBatchPrediction` e `CreateEvaluation`. Non è possibile limitare le autorizzazioni per tali operazioni a una risorsa specifica. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "machinelearning:CreateDataSourceFrom*",
                "machinelearning:CreateMLModel",
                "machinelearning:CreateBatchPrediction",
                "machinelearning:CreateEvaluation"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

 **Esempio 3: permette agli utenti di creare (ed eliminare) endpoint in tempo reale e di eseguire previsioni in tempo reale su un modello ML** 

 La policy seguente permette a utenti o gruppi di creare e cancellare endpoint in tempo reale e di eseguire previsioni in tempo reale per un determinato modello ML eseguendo le operazioni `CreateRealtimeEndpoint` `DeleteRealtimeEndpoint`e `Predict` su tale modello. 

------
#### [ JSON ]

****  

```
{ "Version":"2012-10-17",		 	 	  "Statement": [ { "Effect": "Allow", "Action": [
    "machinelearning:CreateRealtimeEndpoint", "machinelearning:DeleteRealtimeEndpoint",
    "machinelearning:Predict" ], "Resource": [
        "arn:aws:machinelearning:us-east-1:123456789012:mlmodel/ML-MODEL"
    ] } ] }
```

------

 **Esempio 4: permette agli utenti di aggiornare ed eliminare risorse specifiche** 

 La policy seguente permette a un utente o gruppo di aggiornare ed eliminare risorse specifiche nell'account AWS, fornendo l'autorizzazione per eseguire le operazioni `UpdateDataSource`, `UpdateMLModel`, `UpdateBatchPrediction`, `UpdateEvaluation`, `DeleteDataSource`, `DeleteMLModel`, `DeleteBatchPrediction` e `DeleteEvaluation` su tali risorse nel proprio account. 

------
#### [ JSON ]

****  

```
{ "Version":"2012-10-17",		 	 	  "Statement": [ { "Effect": "Allow", "Action": [
    "machinelearning:Update*", "machinelearning:DeleteDataSource", "machinelearning:DeleteMLModel",
    "machinelearning:DeleteBatchPrediction", "machinelearning:DeleteEvaluation" ], "Resource": [
        "arn:aws:machinelearning:us-east-1:123456789012:datasource/S3-DS-ID1",
        "arn:aws:machinelearning:us-east-1:123456789012:datasource/REDSHIFT-DS-ID1",
        "arn:aws:machinelearning:us-east-1:123456789012:mlmodel/ML-MODEL-ID1",
        "arn:aws:machinelearning:us-east-1:123456789012:batchprediction/BP-ID1",
        "arn:aws:machinelearning:us-east-1:123456789012:evaluation/EV-ID1"
    ] } ] }
```

------

 **Esempio 5: autorizza qualsiasi Amazon MLaction** 

 La seguente politica consente a un utente o a un gruppo di utilizzare qualsiasi azione Amazon ML. Poiché questa policy concede l'accesso completo a tutte le risorse di machine learning, è necessario limitarla ai soli amministratori. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "machinelearning:*"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

# Prevenzione del confused deputy tra servizi
<a name="cross-service-confused-deputy-prevention"></a>

Il problema confused deputy è un problema di sicurezza in cui un’entità che non dispone dell’autorizzazione per eseguire un’azione può costringere un’entità maggiormente privilegiata a eseguire l’azione. Nel frattempo AWS, l'impersonificazione tra servizi può portare al confuso problema del vice. La rappresentazione tra servizi può verificarsi quando un servizio (il *servizio chiamante*) effettua una chiamata a un altro servizio (il *servizio chiamato*). Il servizio chiamante può essere manipolato per utilizzare le proprie autorizzazioni e agire sulle risorse di un altro cliente, a cui normalmente non avrebbe accesso. Per evitare ciò, AWS fornisce strumenti per poterti a proteggere i tuoi dati per tutti i servizi con entità di servizio a cui è stato concesso l’accesso alle risorse dell’account. 

Consigliamo di utilizzare [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn)le chiavi di contesto della condizione [https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourceaccount)globale nelle politiche delle risorse per limitare le autorizzazioni che Amazon Machine Learning fornisce a un altro servizio alla risorsa. Se il valore `aws:SourceArn` non contiene l'ID account, ad esempio un ARN di un bucket Amazon S3, è necessario utilizzare entrambe le chiavi di contesto delle condizioni globali per limitare le autorizzazioni. Se si utilizzano entrambe le chiavi di contesto delle condizioni globali e il valore `aws:SourceArn` contiene l'ID account, il valore `aws:SourceAccount` e l’account nel valore `aws:SourceArn` deve utilizzare lo stesso ID account nella stessa dichiarazione di policy. Utilizzare `aws:SourceArn` se si desidera consentire l'associazione di una sola risorsa all'accesso tra servizi. Utilizzare `aws:SourceAccount` se si desidera consentire l’associazione di qualsiasi risorsa in tale account all’uso tra servizi.

Il modo più efficace per proteggersi dal problema "confused deputy" è quello di usare la chiave di contesto della condizione globale `aws:SourceArn` con l’ARN completo della risorsa. Se non si conosce l’ARN completo della risorsa o si scelgono più risorse, è necessario utilizzare la chiave di contesto della condizione globale `aws:SourceArn` con caratteri jolly (`*`) per le parti sconosciute dell’ARN. Ad esempio, `arn:aws:servicename:*:123456789012:*`. 

L'esempio seguente mostra come utilizzare le chiavi di contesto `aws:SourceArn` e `aws:SourceAccount` global condition in Amazon ML per evitare il problema del confuso vice durante la lettura dei dati da un bucket Amazon S3.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "machinelearning.amazonaws.com"
            },
            "Action": "s3:GetObject",
            "Resource": "arn:aws:s3:::examplebucket/exampleprefix/*",
            "Condition": {
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012:*"
                }
            }
        },
        {
            "Effect": "Allow",
            "Principal": {
                "Service": "machinelearning.amazonaws.com"
            },
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::examplebucket",
            "Condition": {
                "StringLike": {
                    "s3:prefix": "exampleprefix/*"
                },
                "StringEquals": {
                    "aws:SourceAccount": "123456789012"
                },
                "ArnLike": {
                    "aws:SourceArn": "arn:aws:machinelearning:us-east-1:123456789012:*"
                }
            }
        }
    ]
}
```

------

# Gestione delle dipendenze nelle operazioni asincrone
<a name="dependency-management-of-asynchronous-operations"></a>

 Il corretto completamento delle operazioni in batch in Amazon ML dipende da altre operazioni. Per gestire queste dipendenze, Amazon ML identifica le richieste che hanno dipendenze e verifica il completamento delle operazioni. Se le operazioni non sono state completate, Amazon ML mette da parte le richieste iniziali finché le operazioni da cui dipendono non sono state completate. 

 Vi sono alcune dipendenze tra le operazioni in batch. Ad esempio, prima di poter creare un modello di ML, è necessario avere creato un'origine dati con cui addestrare il modello ML. Amazon ML non è in grado di addestrare un modello ML in assenza di un'origine dati disponibile. 

 Tuttavia, Amazon ML supporta la gestione delle dipendenze per le operazioni asincrone. Ad esempio, non è necessario attendere che le statistiche dei dati siano state calcolate prima di poter inviare una richiesta per addestrare un modello ML sull'origine dati. Al contrario, non appena l'origine dati viene creata, è possibile inviare una richiesta per addestrare un modello ML utilizzando l'origine dati. Amazon ML non avvia l'operazione di addestramento finché le statistiche sull'origine dati non sono state calcolate. La MLModel richiesta di creazione viene messa in coda fino al calcolo delle statistiche; una volta completata questa operazione, Amazon ML tenta immediatamente di eseguire l'operazione di creazioneMLModel . Analogamente, è possibile inviare richieste di previsione e valutazione in batch per modelli ML che non hanno completato l'addestramento. 

 La tabella riportata di seguito mostra i requisiti necessari a procedere con diverse azioni AmazonML 


|  **Per...**  |  **È necessario avere...**  | 
| --- | --- | 
|  Crea un modello ML (crea) MLModel  |  L'origine dati con le statistiche dei dati calcolate  | 
|  Crea una previsione in batch () createBatchPrediction  |   L'origine dati   modello di ML   | 
|  Crea una valutazione in batch () createBatchEvaluation  |   L'origine dati   modello di ML   | 

# Verifica dello stato della richiesta
<a name="operation-request-status"></a>

Quando invii una richiesta, puoi verificarne lo stato con l'API Amazon Machine Learning (Amazon ML). Ad esempio, se invii una `createMLModel` richiesta, puoi verificarne lo stato utilizzando la `describeMLModel` chiamata. Amazon ML risponde con uno dei seguenti stati. 


|  **Stato**  |  **Definizione**  | 
| --- | --- | 
|  IN ATTESA  |   Amazon ML sta convalidando la richiesta.   O   Amazon ML è in attesa di risorse di calcolo disponibili prima di eseguire la richiesta. Questo potrebbe verificarsi se l'account ha superato il numero massimo di richieste simultanee in esecuzione di operazioni in batch. In tal caso, lo stato passa a quello in **InProgress**cui altre richieste in esecuzione sono state completate o annullate.   O   Amazon ML è in attesa di un'operazione in batch da cui la richiesta dipende per essere completata.   | 
|  INPROGRESS  |  La richiesta è ancora in esecuzione.  | 
|  COMPLETED  |  La richiesta è terminata e l'oggetto è pronto per essere utilizzato (modelli ML e origini dati) o visualizzato (previsioni in batch e valutazioni).  | 
|  NON RIUSCITO  |  Si è verificato un problema con i dati forniti o l'operazione è stata annullata. Ad esempio, se si tenta di calcolare dati statistici in un'origine dati che non è stata completata, è possibile che venga visualizzato un messaggio di stato Invalid (Non valido) o Failed (Non riuscito). Il messaggio di errore spiega perché l'operazione non è stata completata.  | 
|  ELIMINATO  |  L'oggetto è già stato eliminato.  | 

Amazon ML fornisce anche informazioni su un oggetto, ad esempio quando Amazon ML ha terminato la creazione di quell'oggetto. Per ulteriori informazioni, consulta [Elenco degli oggetti](listing-objects.md).

# Limiti di sistema
<a name="system-limits"></a>

 Per fornire un servizio efficace e affidabile, Amazon ML impone determinati limiti per le richieste effettuate al sistema. La maggior parte dei problemi di ML si adatta facilmente all'interno di questi vincoli. Tuttavia, se si ritiene che l'uso di Amazon ML venga limitato da questi limiti, è possibile contattare il [servizio clienti AWS](https://aws.amazon.com/contact-us/) e richiedere l'aumento di un limite. Ad esempio, potrebbe esserci un limite di cinque per il numero di processi che è possibile eseguire simultaneamente. Se spesso si hanno processi in coda in attesa di risorse a causa di questo limite, allora probabilmente ha senso aumentare tale limite per il proprio account. 

 La tabella che segue mostra i limiti di default per account in Amazon ML. Non tutti questi limiti possono essere aumentati dal servizio clienti AWS. 


| **Tipo di limite** | **Limite di sistema** | 
| --- | --- | 
| Dimensioni di ciascuna osservazione | 100 KB | 
| Dimensioni dei dati di addestramento\$1 | 100 GB | 
| Dimensioni dell'input di previsioni in batch | 1 TB | 
| Dimensioni dell'input di previsioni in batch (numero di record) | 100 milioni | 
| Numero di variabili in un file di dati (schema) | 1.000 | 
| Complessità delle composizioni (numero di variabili di output elaborate) | 10.000 | 
| TPS per ciascun endpoint di previsione in tempo reale | 200 | 
| Totale TPS per tutti gli endpoint di previsione in tempo reale | 10.000 | 
| Totale RAM per tutti gli endpoint di previsione in tempo reale | 10 GB | 
| Numero di operazioni simultanee | 25 | 
| Runtime più lungo per qualsiasi processo | 7 giorni | 
| Numero di classi per i modelli ML multiclasse | 100 | 
| Dimensione del modello ML | Minimo 1 MB, massimo 2 GB | 
| Numero di tag per oggetto | 50 | 
+  La dimensione del file di dati è limitata per assicurare che le operazioni si concludano tempestivamente. I processi che sono in esecuzione da più di 7 giorni verranno automaticamente terminati, generando uno stato FAILED. 

# Nomi e IDs per tutti gli oggetti
<a name="names-and-ids-for-all-objects"></a>

 Ogni oggetto di Amazon ML deve avere un identificatore, o ID. La console di Amazon ML genera i valori di ID per l'utente, ma se questi utilizza l'API deve generare i propri valori. Ogni ID deve essere univoco tra tutti gli oggetti di Amazon ML dello stesso tipo nell'account AWS. Ciò significa che non è possibile avere due valutazioni con lo stesso ID. È invece possibile avere una valutazione e un'origine dati con lo stesso ID, anche se non è consigliato. 

 È consigliabile utilizzare identificatori generati casualmente per gli oggetti, con una breve stringa come prefisso per identificare il tipo. Ad esempio, quando la console Amazon ML genera un'origine dati, assegna all'origine dati un ID casuale e univoco come «ds-ZSC F». WIu WiOx Questo ID è sufficientemente casuale per evitare conflitti all'utente, ed è anche compatto e leggibile. Il prefisso "ds-" è adottato per praticità e chiarezza, ma non è obbligatorio. Se non si è sicuri di cosa utilizzare per le proprie stringhe di ID, consigliamo di utilizzare valori di UUID esadecimali (ad esempio 28b1e915-57e5-4e6c-a7bd-6fb4e729cb23), che sono immediatamente disponibili in qualsiasi ambiente di programmazione moderno. 

 Le stringhe di ID possono contenere lettere ASCII, numeri, trattini e trattini bassi, e possono avere una lunghezza massima di 64 caratteri. È possibile, e probabilmente utile, codificare i metadata in una stringa ID. Tuttavia, non è consigliabile farlo, perché una volta che l'oggetto è stato creato, il relativo ID non può essere modificato. 

 I nomi degli oggetti forniscono un modo semplice per associare metadati di facile utilizzo con ogni oggetto. È possibile aggiornare i nomi dopo che un oggetto è stato creato. In questo modo si può fare in modo che il nome dell'oggetto rifletta un dato aspetto del flusso di lavoro ML. Ad esempio, è possibile denominare inizialmente un modello ML "esperimento \$1 3", e successivamente rinominarlo "modello finale di produzione". I nomi possono essere costituiti da qualsiasi stringa si voglia, fino a 1.024 caratteri. 

# Durate degli oggetti
<a name="object-lifetimes"></a>

 Qualsiasi oggetto origine dati, modello ML, valutazione o previsione in batch creato con Amazon ML sarà disponibile per l'uso per almeno due anni dopo la creazione. Amazon ML potrebbe rimuovere automaticamente gli oggetti che non sono stati utilizzati o a cui non è stato effettuato alcun accesso da più di due anni. 