

AWS Data Pipeline non è più disponibile per i nuovi clienti. I clienti esistenti di AWS Data Pipeline possono continuare a utilizzare il servizio normalmente. [Ulteriori informazioni](https://aws.amazon.com/blogs/big-data/migrate-workloads-from-aws-data-pipeline/)

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 all'oggetto pipeline
<a name="dp-pipeline-objects"></a>

È possibile utilizzare gli oggetti e i componenti della pipeline nella definizione della pipeline.

**Topics**
+ [Nodi di dati](dp-object-datanodes.md)
+ [Attività](dp-object-activities.md)
+ [Resources](dp-object-resources.md)
+ [Precondizioni](dp-object-preconditions.md)
+ [Database](dp-object-databases.md)
+ [Formati dei dati](dp-object-dataformats.md)
+ [Azioni](dp-object-actions.md)
+ [Schedule](dp-object-schedule.md)
+ [Utilità](dp-object-utilities.md)

**Nota**  
Per un'applicazione di esempio che utilizza AWS Data Pipeline Java SDK, consulta [Data Pipeline DynamoDB](https://github.com/awslabs/data-pipeline-samples/tree/master/samples/DynamoDBExportJava) Export Java Sample on. GitHub

Di seguito è riportata la gerarchia degli oggetti per. AWS Data Pipeline

![\[AWS Data Pipeline gerarchia degli oggetti\]](http://docs.aws.amazon.com/it_it/datapipeline/latest/DeveloperGuide/images/object_hierarchy.png)


# Nodi di dati
<a name="dp-object-datanodes"></a>

Di seguito sono riportati gli oggetti del nodo AWS Data Pipeline dati:

**Topics**
+ [DBDataNodo Dynamo](dp-object-dynamodbdatanode.md)
+ [MySqlDataNode](dp-object-mysqldatanode.md)
+ [RedshiftDataNode](dp-object-redshiftdatanode.md)
+ [S3 DataNode](dp-object-s3datanode.md)
+ [SqlDataNode](dp-object-sqldatanode.md)

# DBDataNodo Dynamo
<a name="dp-object-dynamodbdatanode"></a>

 Definisce un nodo di dati utilizzando DynamoDB, che viene specificato come input per `HiveActivity` un oggetto or. `EMRActivity` 

**Nota**  
L'oggetto `DynamoDBDataNode` non supporta la precondizione `Exists`.

## Esempio
<a name="dynamodbdatanode-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. Questo oggetto fa riferimento a due altri oggetti definiti nello stesso file di definizione della pipeline. `CopyPeriod` è un oggetto `Schedule` e `Ready` è un oggetto di precondizione.

```
{
  "id" : "MyDynamoDBTable",
  "type" : "DynamoDBDataNode",
  "schedule" : { "ref" : "CopyPeriod" },
  "tableName" : "adEvents",
  "precondition" : { "ref" : "Ready" }
}
```

## Sintassi
<a name="dynamodbdatanode-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| tableName | La tabella DynamoDB. | Stringa | 

 


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Gli utenti devono specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. Gli utenti possono soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio specificando «schedule»: \$1"ref»: "«\$1. DefaultSchedule Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), gli utenti possono creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [Pianificazione](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html). | Oggetto di riferimento, ad esempio, «schedule»: \$1"ref»:» myScheduleId «\$1 | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| dataFormat | DataFormat per i dati descritti da questo nodo dati. Attualmente supportato per HiveActivity e HiveCopyActivity. | Oggetto di riferimento, «dataFormat»: \$1"ref» DBData FormatId :"myDynamo «\$1 | 
| dependsOn | Specifica una dipendenza su un altro oggetto eseguibile | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» «\$1 myActivityId | 
| failureAndRerunModo | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite | Enumerazione | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI S3 (come 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio «precondition»: \$1"ref»:» «\$1 myPreconditionId | 
| readThroughputPercent | Imposta la percentuale di operazioni di lettura per mantenere il tasso di throughput assegnato di DynamoDB nell'intervallo allocato per la tabella. Il valore è compreso tra 0,1 e 1,0 inclusi. | Double | 
| region | Il codice per la regione in cui esiste la tabella DynamoDB. Ad esempio, us-east-1. Viene utilizzato HiveActivity quando esegue lo staging per le tabelle DynamoDB in Hive. | Enumerazione | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| runsOn | Le risorse di calcolo per eseguire l'attività o il comando. Ad esempio, un'istanza Amazon EC2 o un cluster Amazon EMR. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myResourceId «\$1 | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. Time Series Style Scheduling significa che le istanze vengono programmate al termine di ogni intervallo e Cron Style Scheduling significa che le istanze vengono programmate all'inizio di ogni intervallo. Una pianificazione on demand consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione on demand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline su richiesta, è sufficiente chiamare l' ActivatePipeline operazione per ogni esecuzione successiva. I valori sono: cron, ondemand e timeseries. | Enumerazione | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn e workerGroup esiste, workerGroup verrà ignorato. | Stringa | 
| writeThroughputPercent | Imposta la percentuale di operazioni di scrittura per mantenere il tasso di throughput assegnato di DynamoDB nell'intervallo allocato per la tabella. Il valore è compreso tra 0,1 e 1,0 inclusi. | Double | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ healthStatusUpdated Ora | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

# MySqlDataNode
<a name="dp-object-mysqldatanode"></a>

 Definisce un nodo dati utilizzando MySQL. 

**Nota**  
Il tipo `MySqlDataNode` è obsoleto. Consigliamo di utilizzare invece [SqlDataNode](dp-object-sqldatanode.md).

## Esempio
<a name="mysqldatanode-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. Questo oggetto fa riferimento a due altri oggetti definiti nello stesso file di definizione della pipeline. `CopyPeriod` è un oggetto `Schedule` e `Ready` è un oggetto di precondizione.

```
{
  "id" : "Sql Table",
  "type" : "MySqlDataNode",
  "schedule" : { "ref" : "CopyPeriod" },
  "table" : "adEvents",
  "username": "user_name",
  "*password": "my_password",
  "connectionString": "jdbc:mysql://mysqlinstance-rds.example.us-east-1.rds.amazonaws.com:3306/database_name",
  "selectQuery" : "select * from #{table} where eventTime >= '#{@scheduledStartTime.format('YYYY-MM-dd HH:mm:ss')}' and eventTime < '#{@scheduledEndTime.format('YYYY-MM-dd HH:mm:ss')}'",
  "precondition" : { "ref" : "Ready" }
}
```

### Sintassi
<a name="mysqldatanode-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| table | Nome della tabella nel database MySQL. | Stringa | 

 


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Gli utenti devono specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. Gli utenti possono soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio specificando «schedule»: \$1"ref»: "«\$1. DefaultSchedule Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), gli utenti possono creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html) | Oggetto di riferimento, ad esempio «schedule»: \$1"ref»:» «myScheduleId\$1 | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| createTableSql | Un'espressione SQL per creare la tabella che crea la tabella. | Stringa | 
| database | Nome del database. | Oggetto di riferimento, ad esempio «database»: \$1"ref»:» myDatabaseId «\$1 | 
| dependsOn | Specifica una dipendenza su un altro oggetto eseguibile. | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» myActivityId «\$1 | 
| failureAndRerunModo | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite. | Enumerazione | 
| insertQuery | Un'istruzione SQL per inserire dati nella tabella. | Stringa | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI S3 (come 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio «precondition»: \$1"ref»:» «\$1 myPreconditionId | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| runsOn | Le risorse di calcolo per eseguire l'attività o il comando. Ad esempio, un'istanza Amazon EC2 o un cluster Amazon EMR. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myResourceId «\$1 | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. Time Series Style Scheduling significa che le istanze vengono programmate al termine di ogni intervallo e Cron Style Scheduling significa che le istanze vengono programmate all'inizio di ogni intervallo. Una pianificazione on demand consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione on demand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline su richiesta, è sufficiente chiamare l' ActivatePipeline operazione per ogni esecuzione successiva. I valori sono: cron, ondemand e timeseries. | Enumerazione | 
| schemaName | Il nome dello schema in cui è presente la tabella. | Stringa | 
| selectQuery | Un'istruzione SQL per recuperare i dati dalla tabella. | Stringa | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn e workerGroup esiste, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ healthStatusUpdated Ora | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto. | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

## Vedi anche
<a name="mysqldatanode-seealso"></a>
+ [S3 DataNode](dp-object-s3datanode.md)

# RedshiftDataNode
<a name="dp-object-redshiftdatanode"></a>

Definisce un nodo di dati utilizzando Amazon Redshift. `RedshiftDataNode`rappresenta le proprietà dei dati all'interno di un database, ad esempio una tabella di dati, utilizzata dalla pipeline.

## Esempio
<a name="redshiftdatanode-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto.

```
{
  "id" : "MyRedshiftDataNode",
  "type" : "RedshiftDataNode",
  "database": { "ref": "MyRedshiftDatabase" },
  "tableName": "adEvents",
  "schedule": { "ref": "Hour" }
}
```

## Sintassi
<a name="redshiftdatanode-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| database | Il database in cui risiede la tabella. | Oggetto di riferimento, ad esempio «database»: \$1"ref»:» myRedshiftDatabase Id "\$1 | 
| tableName | Nome della tabella Amazon Redshift. La tabella viene creata se non esiste già e se l'hai fornita createTableSql. | Stringa | 

 


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Gli utenti devono specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. Gli utenti possono soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio specificando «schedule»: \$1"ref»: "DefaultSchedule«\$1. Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), gli utenti possono creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html) | Oggetto di riferimento, ad esempio «schedule»: \$1"ref»:» «myScheduleId\$1 | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| createTableSql | Un'espressione SQL per creare la tabella nel database. Si consiglia di specificare lo schema in cui creare la tabella, ad esempio: CREATE TABLE mySchema.myTable (bestColumn varchar (25) primary key distkey, integer sortKey). numberOfWins AWS Data Pipeline esegue lo script nel createTableSql campo se la tabella, specificata da TableName, non esiste nello schema specificato dal campo SchemaName. Ad esempio, se si specifica SchemaName come mySchema ma non si include mySchema nel createTableSql campo, la tabella viene creata nello schema sbagliato (per impostazione predefinita, verrebbe creata in PUBLIC). Questo avviene perché AWS Data Pipeline non analizza le istruzioni CREATE TABLE.  | Stringa | 
| dependsOn | Specifica una dipendenza su un altro oggetto eseguibile | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» «\$1 myActivityId | 
| failureAndRerunModo | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite | Enumerazione | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore. | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI S3 (come 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio «precondition»: \$1"ref»:» «\$1 myPreconditionId | 
| primaryKeys | Se non si specificano le primaryKeys per una tabella di destinazione in RedShiftCopyActivity, è possibile specificare un elenco di colonne utilizzando le primaryKeys che agiranno come mergeKey. Tuttavia, se hai una PrimaryKey esistente definita in una tabella Amazon Redshift, questa impostazione sostituisce la chiave esistente. | Stringa | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| runsOn | Le risorse di calcolo per eseguire l'attività o il comando. Ad esempio, un'istanza Amazon EC2 o un cluster Amazon EMR. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myResourceId «\$1 | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. Time Series Style Scheduling significa che le istanze vengono programmate al termine di ogni intervallo e Cron Style Scheduling significa che le istanze vengono programmate all'inizio di ogni intervallo. Una pianificazione on demand consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione on demand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline su richiesta, è sufficiente chiamare l' ActivatePipeline operazione per ogni esecuzione successiva. I valori sono: cron, ondemand e timeseries. | Enumerazione | 
| schemaName | Questo campo facoltativo specifica il nome dello schema per la tabella di Amazon Redshift. Se non è specificato, il nome dello schema è PUBLIC, che è lo schema predefinito in Amazon Redshift. Per ulteriori informazioni, consulta la Guida per sviluppatori del database di Amazon Redshift.  | Stringa | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn e workerGroup esiste, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ healthStatusUpdated Ora | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# S3 DataNode
<a name="dp-object-s3datanode"></a>

 Definisce un nodo di dati utilizzando Amazon S3. Per impostazione predefinita, S3 DataNode utilizza la crittografia lato server. Se desideri disabilitarlo, imposta EncryptionType s3 su NONE. 

**Nota**  
Quando si utilizza un `S3DataNode` come input `CopyActivity`, solo i formati di dati CSV e TSV sono supportati.

## Esempio
<a name="s3datanode-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. Questo oggetto fa riferimento a un altro oggetto definito nello stesso file di definizione della pipeline. `CopyPeriod` è un oggetto `Schedule`.

```
{
  "id" : "OutputData",
  "type" : "S3DataNode",
  "schedule" : { "ref" : "CopyPeriod" },
  "filePath" : "s3://amzn-s3-demo-bucket/#{@scheduledStartTime}.csv"
}
```

## Sintassi
<a name="s3datanode-syntax"></a>


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Gli utenti devono specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. Gli utenti possono soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio specificando «schedule»: \$1"ref»: "DefaultSchedule«\$1. Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), gli utenti possono creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html) | Oggetto di riferimento, ad esempio «schedule»: \$1"ref»:» «myScheduleId\$1 | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| compressione | Il tipo di compressione per i dati descritto da S3DataNode. «none» non è compressione e «gzip» viene compresso con l'algoritmo gzip. Questo campo è supportato solo per l'uso con Amazon Redshift e quando usi DataNode S3 con. CopyActivity | Enumerazione | 
| dataFormat | DataFormat per i dati descritti da questo S3. DataNode | Oggetto di riferimento, ad esempio «dataFormat»: \$1"ref»:» myDataFormat Id "\$1 | 
| dependsOn | Specifica una dipendenza su un altro oggetto eseguibile | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» «\$1 myActivityId | 
| directoryPath | Percorso della directory Amazon S3 come URI: s3://my-bucket/. my-key-for-directory È necessario fornire un valore filePath o directoryPath. | Stringa | 
| failureAndRerunMode | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite | Enumerazione | 
| filePath | Il percorso dell'oggetto in Amazon S3 come URI, ad esempio: s3://my-bucket/. my-key-for-file È necessario fornire un valore filePath o directoryPath. Questi rappresentano una cartella e un nome di file. Utilizzare il valore directoryPath per gestire più file in una directory. | Stringa | 
| lateAfterTimeout | Il tempo trascorso dall'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| manifestFilePath | Il percorso di Amazon S3 a un file manifest nel formato supportato da Amazon Redshift. AWS Data Pipeline utilizza il file manifest per copiare i file Amazon S3 specificati nella tabella. Questo campo è valido solo quando un RedShiftCopyActivity fa riferimento a DataNode S3. | Stringa | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI S3 (come 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio «precondition»: \$1"ref»:» «\$1 myPreconditionId | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| runsOn | Le risorse di calcolo per eseguire l'attività o il comando. Ad esempio, un'istanza Amazon EC2 o un cluster Amazon EMR. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myResourceId «\$1 | 
| s3 EncryptionType | Ignora il tipo di crittografia di Amazon S3. I valori sono SERVER\$1SIDE\$1ENCRYPTION o NONE. La crittografia lato server è abilitata per impostazione predefinita.  | Enumerazione | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. Time Series Style Scheduling significa che le istanze vengono programmate al termine di ogni intervallo e Cron Style Scheduling significa che le istanze vengono programmate all'inizio di ogni intervallo. Una pianificazione on demand consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione on demand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline su richiesta, è sufficiente chiamare l' ActivatePipeline operazione per ogni esecuzione successiva. I valori sono: cron, ondemand e timeseries. | Enumerazione | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn e workerGroup esiste, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ healthStatusUpdated Ora | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

## Vedi anche
<a name="s3datanode-seealso"></a>
+ [MySqlDataNode](dp-object-mysqldatanode.md)

# SqlDataNode
<a name="dp-object-sqldatanode"></a>

 Definisce un nodo dati utilizzando SQL. 

## Esempio
<a name="example-sql-data-node"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. Questo oggetto fa riferimento a due altri oggetti definiti nello stesso file di definizione della pipeline. `CopyPeriod` è un oggetto `Schedule` e `Ready` è un oggetto di precondizione.

```
{
  "id" : "Sql Table",
  "type" : "SqlDataNode",
  "schedule" : { "ref" : "CopyPeriod" },
  "table" : "adEvents",
  "database":"myDataBaseName",
  "selectQuery" : "select * from #{table} where eventTime >= '#{@scheduledStartTime.format('YYYY-MM-dd HH:mm:ss')}' and eventTime < '#{@scheduledEndTime.format('YYYY-MM-dd HH:mm:ss')}'",
  "precondition" : { "ref" : "Ready" }
}
```

## Sintassi
<a name="sql-data-node-slots"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| table | Nome della tabella nel database SQL. | Stringa | 

 


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Gli utenti devono specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. Gli utenti possono soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio specificando «schedule»: \$1"ref»: "«\$1. DefaultSchedule Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), gli utenti possono creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html) | Oggetto di riferimento, ad esempio «schedule»: \$1"ref»:» «myScheduleId\$1 | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| createTableSql | Un'espressione SQL per creare la tabella che crea la tabella. | Stringa | 
| database | Nome del database. | Oggetto di riferimento, ad esempio «database»: \$1"ref»:» myDatabaseId «\$1 | 
| dependsOn | Specifica la dipendenza su un altro oggetto eseguibile. | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» myActivityId «\$1 | 
| failureAndRerunModo | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite. | Enumerazione | 
| insertQuery | Un'istruzione SQL per inserire dati nella tabella. | Stringa | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI S3 (come 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio «precondition»: \$1"ref»:» «\$1 myPreconditionId | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| runsOn | Le risorse di calcolo per eseguire l'attività o il comando. Ad esempio, un'istanza Amazon EC2 o un cluster Amazon EMR. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myResourceId «\$1 | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. Time Series Style Scheduling significa che le istanze vengono programmate al termine di ogni intervallo e Cron Style Scheduling significa che le istanze vengono programmate all'inizio di ogni intervallo. Una pianificazione on demand consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione on demand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline su richiesta, è sufficiente chiamare l' ActivatePipeline operazione per ogni esecuzione successiva. I valori sono: cron, ondemand e timeseries. | Enumerazione | 
| schemaName | Il nome dello schema in cui è presente la tabella. | Stringa | 
| selectQuery | Un'istruzione SQL per recuperare i dati dalla tabella. | Stringa | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn e workerGroup esiste, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ healthStatusUpdated Ora | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

## Vedi anche
<a name="sql-data-node-see-also"></a>
+ [S3 DataNode](dp-object-s3datanode.md)

# Attività
<a name="dp-object-activities"></a>

I seguenti sono gli oggetti di attività: AWS Data Pipeline 

**Topics**
+ [CopyActivity](dp-object-copyactivity.md)
+ [EmrActivity](dp-object-emractivity.md)
+ [HadoopActivity](dp-object-hadoopactivity.md)
+ [HiveActivity](dp-object-hiveactivity.md)
+ [HiveCopyActivity](dp-object-hivecopyactivity.md)
+ [PigActivity](dp-object-pigactivity.md)
+ [RedshiftCopyActivity](dp-object-redshiftcopyactivity.md)
+ [ShellCommandActivity](dp-object-shellcommandactivity.md)
+ [SqlActivity](dp-object-sqlactivity.md)

# CopyActivity
<a name="dp-object-copyactivity"></a>

Copia i dati da una posizione all'altra. `CopyActivity`supporta [S3 DataNode](dp-object-s3datanode.md) e [SqlDataNode](dp-object-sqldatanode.md) come input e output e l'operazione di copia viene normalmente eseguita record-by-record. Tuttavia, `CopyActivity` fornisce una copia da Amazon S3 ad Amazon S3 ad alte prestazioni quando sono soddisfatte tutte le seguenti condizioni:
+ L'input e l'output sono S3 DataNodes
+ Il campo `dataFormat` è lo stesso per input e output

Se si forniscono file di dati compressi come input senza indicarlo utilizzando il campo `compression` sui nodi di dati S3, `CopyActivity` potrebbe non riuscire. In questo caso, `CopyActivity` non è in grado di rilevare correttamente il termine del carattere del record e l'operazione ha esito negativo. Inoltre, `CopyActivity` supporta la copia da una directory a un'altra directory e la copia di un file in una directory, ma la record-by-record copia si verifica quando si copia una directory in un file. Infine, non `CopyActivity` supporta la copia di file Amazon S3 multiparte. 

`CopyActivity` ha limitazioni specifiche per il supporto CSV. Quando utilizzi un S3 DataNode come input per`CopyActivity`, puoi utilizzare solo una Unix/Linux variante del formato di file di dati CSV per i campi di input e output di Amazon S3. La Unix/Linux variante richiede quanto segue: 
+ Il separatore deve essere il carattere "," (virgola).
+ I record non sono citati.
+ Il carattere di escape predefinito è il valore ASCII 92 (barra rovesciata).
+ La fine dell'identificatore del record è il valore ASCII 10 (o "\$1n").

I sistemi basati su Windows utilizzano in genere una sequenza di end-of-record caratteri diversa: un riage return e una riga di alimentazione insieme (valore ASCII 13 e valore ASCII 10). È necessario adeguarsi a questa differenza utilizzando un ulteriore meccanismo, come uno script di pre-copia per modificare i dati di input, e assicurare che `CopyActivity` sia in grado di rilevare correttamente la fine di un record; in caso contrario, `CopyActivity` ha ripetutamente esito negativo.

Quando si utilizza `CopyActivity` per eseguire l'esportazione da un oggetto RDS PostgreSQL a un formato di dati TSV, il carattere NULL predefinito è \$1n.

## Esempio
<a name="copyactivity-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. Questo oggetto fa riferimento a tre altri oggetti definiti nello stesso file di definizione della pipeline. `CopyPeriod` è un oggetto `Schedule` e `InputData` e `OutputData` sono oggetti di nodi di dati.

```
{
  "id" : "S3ToS3Copy",
  "type" : "CopyActivity",
  "schedule" : { "ref" : "CopyPeriod" },
  "input" : { "ref" : "InputData" },
  "output" : { "ref" : "OutputData" },
  "runsOn" : { "ref" : "MyEc2Resource" }
}
```

## Sintassi
<a name="copyactivity-syntax"></a>


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Gli utenti devono specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. Gli utenti possono soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio specificando «schedule»: \$1"ref»: "«\$1. DefaultSchedule Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), gli utenti possono creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html) | Oggetto di riferimento, ad esempio «schedule»: \$1"ref»:» «myScheduleId\$1 | 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| runsOn | Le risorse di calcolo per eseguire l'attività o il comando. Ad esempio, un'istanza Amazon EC2 o un cluster Amazon EMR. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myResourceId «\$1 | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn e workerGroup esiste, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| dependsOn | Specifica una dipendenza su un altro oggetto eseguibile. | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» «myActivityId\$1 | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite | Enumerazione | 
| input | Origine dati di input. | Oggetto di riferimento, ad esempio «input»: \$1"ref»:» myDataNode Id "\$1 | 
| lateAfterTimeout | Il tempo trascorso dall'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| output | Origine dati di output. | Oggetto di riferimento, ad esempio «output»: \$1"ref»:» myDataNode Id "\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI S3 (come 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio «precondition»: \$1"ref»:» «\$1 myPreconditionId | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. Time Series Style Scheduling significa che le istanze vengono programmate al termine di ogni intervallo e Cron Style Scheduling significa che le istanze vengono programmate all'inizio di ogni intervallo. Una pianificazione on demand consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione on demand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline su richiesta, è sufficiente chiamare l' ActivatePipeline operazione per ogni esecuzione successiva. I valori sono: cron, ondemand e timeseries. | Enumerazione | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ healthStatusUpdated Ora | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

## Vedi anche
<a name="copyactivity-seealso"></a>
+ [ShellCommandActivity](dp-object-shellcommandactivity.md)
+ [EmrActivity](dp-object-emractivity.md)
+ [Esportazione di dati MySQL su Amazon S3 utilizzando AWS Data Pipeline](dp-copydata-mysql.md)

# EmrActivity
<a name="dp-object-emractivity"></a>

 Esegue un cluster EMR. 

AWS Data Pipeline utilizza un formato diverso per i passaggi rispetto ad Amazon EMR; ad esempio, AWS Data Pipeline utilizza argomenti separati da virgole dopo il nome JAR nel campo step. `EmrActivity` L'esempio seguente mostra un passaggio formattato per Amazon EMR, seguito dal AWS Data Pipeline suo equivalente:

```
s3://amzn-s3-demo-bucket/MyWork.jar arg1 arg2 arg3
```

```
"s3://amzn-s3-demo-bucket/MyWork.jar,arg1,arg2,arg3"
```

## Esempi
<a name="emractivity-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. Questo esempio utilizza versioni precedenti di Amazon EMR. Verifica la correttezza di questo esempio con la versione del cluster Amazon EMR che stai utilizzando. 

Questo oggetto fa riferimento a tre altri oggetti definiti nello stesso file di definizione della pipeline. `MyEmrCluster` è un oggetto `EmrCluster` e `MyS3Input` e `MyS3Output` sono oggetti `S3DataNode`. 

**Nota**  
In questo esempio, è possibile sostituire il campo `step` con la stringa di cluster desiderato, che può essere uno script Pig, un cluster di streaming Hadoop, un JAR personalizzato, inclusi i parametri, e così via.

Hadoop 2.x (AMI 3.x)

```
{
  "id" : "MyEmrActivity",
  "type" : "EmrActivity",
  "runsOn" : { "ref" : "MyEmrCluster" },
  "preStepCommand" : "scp remoteFiles localFiles",
  "step" : ["s3://amzn-s3-demo-bucket/myPath/myStep.jar,firstArg,secondArg,-files,s3://amzn-s3-demo-bucket/myPath/myFile.py,-input,s3://myinputbucket/path,-output,s3://myoutputbucket/path,-mapper,myFile.py,-reducer,reducerName","s3://amzn-s3-demo-bucket/myPath/myotherStep.jar,..."],
  "postStepCommand" : "scp localFiles remoteFiles",
  "input" : { "ref" : "MyS3Input" },
  "output" : { "ref" : "MyS3Output" }
}
```

**Nota**  
Per passare argomenti a un'applicazione in una fase, è necessario specificare la regione nel percorso dello script, come nell'esempio seguente. Inoltre, potrebbe essere necessario uscire dagli argomenti passati. Ad esempio, se si utilizza `script-runner.jar` per eseguire uno script shell e si desidera passare argomenti allo script, è necessario eliminare le virgole che li separano. Lo slot della fase che segue dimostra come eseguire questa operazione:   

```
"step" : "s3://eu-west-1.elasticmapreduce/libs/script-runner/script-runner.jar,s3://datapipeline/echo.sh,a\\\\,b\\\\,c"
```
In questa fase viene utilizzato `script-runner.jar` per eseguire lo `echo.sh` script shell e passare `a`, `b` e `c` come unico argomento allo script. Il primo carattere escape viene rimosso dall'argomento risultante in modo da poterlo utilizzare di nuovo. Ad esempio, se si ha `File\.gz` come argomento in formato JSON, è possibile farlo usando `File\\\\.gz`. Tuttavia, poiché il primo carattere escape viene eliminato, è necessario utilizzare `File\\\\\\\\.gz `.

## Sintassi
<a name="emractivity-syntax"></a>


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. È possibile soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio, specificando "schedule": \$1"ref": "DefaultSchedule"\$1. Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), è possibile creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html) | Oggetto di riferimento, ad esempio «schedule»: \$1"ref»:» myScheduleId «\$1 | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| runsOn | Il cluster Amazon EMR su cui verrà eseguito questo processo. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myEmrCluster Id "\$1 | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn ed esiste workerGroup, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| dependsOn | Specifica una dipendenza su un altro oggetto eseguibile. | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» myActivityId «\$1 | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite. | Enumerazione | 
| input | Posizione dei dati di input. | Oggetto di riferimento, ad esempio, «input»: \$1"ref»:» myDataNode Id "\$1 | 
| lateAfterTimeout | Il tempo trascorso dall'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore. | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| output | Posizione dei dati di output. | Oggetto di riferimento, ad esempio «output»: \$1"ref»:» myDataNode Id "\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI di Amazon S3, ad esempio 's3://BucketName/Prefix/ 'per caricare i log per la pipeline. | Stringa | 
| postStepCommand | Script di shell da eseguire dopo il completamento di tutti i passaggi. Per specificare più script, fino a 255, aggiungere più campi postStepCommand. | Stringa | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio, «precondition»: \$1"ref»:» «\$1 myPreconditionId | 
| preStepCommand | Script di shell da eseguire prima dell'esecuzione di qualsiasi passaggio. Per specificare più script, fino a 255, aggiungere più campi preStepCommand. | Stringa | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| resizeClusterBeforeIn esecuzione |  Ridimensiona il cluster prima di eseguire questa attività per adattarlo alle tabelle DynamoDB specificate come input o output.   Se `EmrActivity` utilizzi a `DynamoDBDataNode` come nodo di dati di input o output e lo imposti su, inizia `resizeClusterBeforeRunning` a `TRUE` utilizzare i tipi di istanza. AWS Data Pipeline `m3.xlarge` Questo sovrascrive le tue scelte in termini di tipi di istanze con `m3.xlarge`, con un possibile aumento dei costi.   | Booleano | 
| resizeClusterMaxIstanze | Un limite per il numero massimo di istanze che possono essere richieste dall'algoritmo di ridimensionamento. | Numero intero | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. I valori sono cron, ondemand e timeseries. La pianificazione timeseries significa che le istanze sono programmate al termine di ogni intervallo. La pianificazione cron significa che le istanze sono programmate all'inizio di ogni intervallo. Una pianificazione ondemandconsente di eseguire una pipeline una sola volta, per attivazione. Non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione ondemand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline ondemand, chiama l'operazione ActivatePipeline per ogni esecuzione successiva.  | Enumerazione | 
| fase | Uno o più passaggi per il cluster da eseguire. Per specificare più passaggi, fino a 255, aggiungere più campi relativi a queste informazioni. Utilizza argomenti separati da virgole dopo il nome JAR; ad esempio, "s3://amzn-s3-demo-bucket/MyWork.jar,arg1,arg2,arg3". | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | I log dei passaggi di Amazon EMR sono disponibili solo nei tentativi di attività EMR | Stringa | 
| errorId | errorId se l'oggetto non riuscito. | Stringa | 
| errorMessage | errorMessage se l'oggetto non riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ Ora healthStatusUpdated | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per l'oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto. | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'ID della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

## Vedi anche
<a name="emractivity-seealso"></a>
+ [ShellCommandActivity](dp-object-shellcommandactivity.md)
+ [CopyActivity](dp-object-copyactivity.md)
+ [EmrCluster](dp-object-emrcluster.md)

# HadoopActivity
<a name="dp-object-hadoopactivity"></a>

 Esegue un MapReduce processo su un cluster. Il cluster può essere un cluster EMR gestito da AWS Data Pipeline o un'altra risorsa, se si utilizza. TaskRunner Da utilizzare HadoopActivity quando si desidera eseguire il lavoro in parallelo. Ciò consente di utilizzare le risorse di pianificazione del framework YARN o del negoziatore di MapReduce risorse in Hadoop 1. Se desideri eseguire il lavoro in sequenza utilizzando l'azione Amazon EMR Step, puoi comunque utilizzare. [EmrActivity](dp-object-emractivity.md)

## Esempi
<a name="hadoopactivity-example"></a>

**HadoopActivity utilizzando un cluster EMR gestito da AWS Data Pipeline**  
L' HadoopActivity oggetto seguente utilizza una EmrCluster risorsa per eseguire un programma:

```
 {
   "name": "MyHadoopActivity",
   "schedule": {"ref": "ResourcePeriod"},
   "runsOn": {"ref": “MyEmrCluster”},
   "type": "HadoopActivity",
   "preActivityTaskConfig":{"ref":"preTaskScriptConfig”},   
   "jarUri": "/home/hadoop/contrib/streaming/hadoop-streaming.jar",
   "argument": [
     "-files",
     “s3://elasticmapreduce/samples/wordcount/wordSplitter.py“,
     "-mapper",
     "wordSplitter.py",
     "-reducer",
     "aggregate",
     "-input",
     "s3://elasticmapreduce/samples/wordcount/input/",
     "-output",
     “s3://amzn-s3-demo-bucket/MyHadoopActivity/#{@pipelineId}/#{format(@scheduledStartTime,'YYYY-MM-dd')}"
   ],
   "maximumRetries": "0",
   "postActivityTaskConfig":{"ref":"postTaskScriptConfig”},
   "hadoopQueue" : “high”
 }
```

Ecco il corrispondente*MyEmrCluster*, che configura le code FairScheduler and in YARN per sistemi basati su Hadoop 2: AMIs

```
{
  "id" : "MyEmrCluster",
  "type" : "EmrCluster",
   "hadoopSchedulerType" : "PARALLEL_FAIR_SCHEDULING",
  “amiVersion” : “3.7.0”,
  "bootstrapAction" : ["s3://Region.elasticmapreduce/bootstrap-actions/configure-hadoop,-z,yarn.scheduler.capacity.root.queues=low\,high\,default,-z,yarn.scheduler.capacity.root.high.capacity=50,-z,yarn.scheduler.capacity.root.low.capacity=10,-z,yarn.scheduler.capacity.root.default.capacity=30”]
}
```

Questo è quello che si usa per configurare in EmrCluster Hadoop 1: FairScheduler 

```
{
      "id": "MyEmrCluster",
      "type": "EmrCluster",    
      "hadoopSchedulerType": "PARALLEL_FAIR_SCHEDULING",
      "amiVersion": "2.4.8",
      "bootstrapAction": "s3://Region.elasticmapreduce/bootstrap-actions/configure-hadoop,-m,mapred.queue.names=low\\\\,high\\\\,default,-m,mapred.fairscheduler.poolnameproperty=mapred.job.queue.name"
          }
```

Le seguenti EmrCluster configurazioni CapacityScheduler per sistemi basati su Hadoop 2: AMIs

```
{
      "id": "MyEmrCluster",
      "type": "EmrCluster",
      "hadoopSchedulerType": "PARALLEL_CAPACITY_SCHEDULING",
      "amiVersion": "3.7.0",
      "bootstrapAction": "s3://Region.elasticmapreduce/bootstrap-actions/configure-hadoop,-z,yarn.scheduler.capacity.root.queues=low\\\\,high,-z,yarn.scheduler.capacity.root.high.capacity=40,-z,yarn.scheduler.capacity.root.low.capacity=60"
    }
```

**HadoopActivity utilizzo di un cluster EMR esistente**  
In questo esempio, si utilizzano workergroups e TaskRunner a per eseguire un programma su un cluster EMR esistente. La seguente definizione di pipeline consente di: HadoopActivity 
+ Esegue un MapReduce programma solo sulle *myWorkerGroup* risorse. Per ulteriori informazioni sui gruppi di lavoratori, consulta [Esecuzione del lavoro su risorse esistenti utilizzando Task Runner](dp-how-task-runner-user-managed.md).
+ Esegui un preActivityTask Config e Config postActivityTask

```
{
  "objects": [
    {
      "argument": [
        "-files",
        "s3://elasticmapreduce/samples/wordcount/wordSplitter.py",
        "-mapper",
        "wordSplitter.py",
        "-reducer",
        "aggregate",
        "-input",
        "s3://elasticmapreduce/samples/wordcount/input/",
        "-output",
        "s3://amzn-s3-demo-bucket/MyHadoopActivity/#{@pipelineId}/#{format(@scheduledStartTime,'YYYY-MM-dd')}"
      ],
      "id": "MyHadoopActivity",
      "jarUri": "/home/hadoop/contrib/streaming/hadoop-streaming.jar",
      "name": "MyHadoopActivity",
      "type": "HadoopActivity"
    },
    {
      "id": "SchedulePeriod",
      "startDateTime": "start_datetime",
      "name": "SchedulePeriod",
      "period": "1 day",
      "type": "Schedule",
      "endDateTime": "end_datetime"
    },
    {
      "id": "ShellScriptConfig",
      "scriptUri": "s3://amzn-s3-demo-bucket/scripts/preTaskScript.sh",
      "name": "preTaskScriptConfig",
      "scriptArgument": [
        "test",
        "argument"
      ],
      "type": "ShellScriptConfig"
    },
    {
      "id": "ShellScriptConfig",
      "scriptUri": "s3://amzn-s3-demo-bucket/scripts/postTaskScript.sh",
      "name": "postTaskScriptConfig",
      "scriptArgument": [
        "test",
        "argument"
      ],
      "type": "ShellScriptConfig"
    },
    {
      "id": "Default",
      "scheduleType": "cron",
      "schedule": {
        "ref": "SchedulePeriod"
      },
      "name": "Default",
      "pipelineLogUri": "s3://amzn-s3-demo-bucket/logs/2015-05-22T18:02:00.343Z642f3fe415",
      "maximumRetries": "0",    
      "workerGroup": "myWorkerGroup",
      "preActivityTaskConfig": {
        "ref": "preTaskScriptConfig"
      },
      "postActivityTaskConfig": {
        "ref": "postTaskScriptConfig"
      }    
    }
  ] 
}
```

## Sintassi
<a name="hadoopactivity-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| jarUri | Posizione di un JAR in Amazon S3 o nel file system locale del cluster con cui eseguire. HadoopActivity | Stringa | 

 


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Gli utenti devono specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. Gli utenti possono soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio specificando «schedule»: \$1"ref»: "DefaultSchedule«\$1. Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), gli utenti possono creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html) | Oggetto di riferimento, ad esempio «schedule»: \$1"ref»:» «myScheduleId\$1 | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| runsOn | Cluster EMR su cui il processo verrà eseguito. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myEmrCluster Id "\$1 | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn e workerGroup esiste, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| argument | Gli argomenti da trasmettere al JAR. | Stringa | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| dependsOn | Specifica una dipendenza su un altro oggetto eseguibile. | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» «myActivityId\$1 | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite | Enumerazione | 
| hadoopQueue | Il nome della coda del pianificatore Hadoop a cui verrà inviata l'attività. | Stringa | 
| input | Posizione dei dati di input. | Oggetto di riferimento, ad esempio «input»: \$1"ref»:» myDataNode Id "\$1 | 
| lateAfterTimeout | Il tempo trascorso dall'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| mainClass | La classe principale del JAR con HadoopActivity cui stai eseguendo. | Stringa | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| output | Posizione dei dati di output. | Oggetto di riferimento, ad esempio «output»: \$1"ref»:» myDataNode Id "\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI S3 (come 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| postActivityTaskConfig | Lo script di configurazione post-attività da eseguire. Questo è composto da un URI dello script della shell in Amazon S3 e da un elenco di argomenti. | Oggetto di riferimento, ad esempio "postActivityTaskConfig»: \$1"ref»:» myShellScript ConfigId «\$1 | 
| preActivityTaskConfig | Lo script di configurazione pre-attività da eseguire. Questo è composto da un URI dello script della shell in Amazon S3 e da un elenco di argomenti. | Oggetto di riferimento, ad esempio "preActivityTaskConfig»: \$1"ref»:» myShellScript ConfigId «\$1 | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio «precondizione»: \$1"ref»:» «myPreconditionId\$1 | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. Time Series Style Scheduling significa che le istanze vengono programmate al termine di ogni intervallo e Cron Style Scheduling significa che le istanze vengono programmate all'inizio di ogni intervallo. Una pianificazione on demand consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione on demand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline su richiesta, è sufficiente chiamare l' ActivatePipeline operazione per ogni esecuzione successiva. I valori sono: cron, ondemand e timeseries. | Enumerazione | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ healthStatusUpdated Ora | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

## Vedi anche
<a name="hadoopactivity-seealso"></a>
+ [ShellCommandActivity](dp-object-shellcommandactivity.md)
+ [CopyActivity](dp-object-copyactivity.md)
+ [EmrCluster](dp-object-emrcluster.md)

# HiveActivity
<a name="dp-object-hiveactivity"></a>

Esegue una query Hive su un cluster EMR. `HiveActivity`semplifica la configurazione di un'attività di Amazon EMR e crea automaticamente tabelle Hive in base ai dati di input provenienti da Amazon S3 o Amazon RDS. Tutto ciò che devi specificare è l'HiveQL da eseguire sui dati di origine. AWS Data Pipeline crea automaticamente tabelle Hive con `${input1}``${input2}`, e così via, in base ai campi di input nell'oggetto. `HiveActivity` 

Per gli input di Amazon S3, il `dataFormat` campo viene utilizzato per creare i nomi delle colonne Hive. 

Per gli input MySQL (Amazon RDS), i nomi delle colonne per la query SQL vengono utilizzati per creare i nomi delle colonne Hive.

**Nota**  
Questa attività utilizza il [CSV Serde](https://cwiki.apache.org/confluence/display/Hive/CSV+Serde) di Hive.

## Esempio
<a name="hiveactivity-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. Questo oggetto fa riferimento a tre altri oggetti definiti nello stesso file di definizione della pipeline. `MySchedule` è un oggetto `Schedule` e `MyS3Input` e `MyS3Output` sono oggetti di nodi di dati.

```
{
  "name" : "ProcessLogData",
  "id" : "MyHiveActivity",
  "type" : "HiveActivity",
  "schedule" : { "ref": "MySchedule" },
  "hiveScript" : "INSERT OVERWRITE TABLE ${output1} select host,user,time,request,status,size from ${input1};",
  "input" : { "ref": "MyS3Input" },
  "output" : { "ref": "MyS3Output" },
  "runsOn" : { "ref": "MyEmrCluster" }
}
```

## Sintassi
<a name="hiveactivity-syntax"></a>


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. È possibile soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio specificando «schedule»: \$1"ref»: "«\$1. DefaultSchedule Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), è possibile creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html). | Oggetto di riferimento, ad esempio «schedule»: \$1"ref»:» «myScheduleId\$1 | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| hiveScript | Lo script Hive da eseguire. | Stringa | 
| scriptUri | La posizione dello script Hive da eseguire (ad esempio, s3:// scriptLocation). | Stringa | 

 


****  

| Gruppo obbligatorio | Description | Tipo di slot | 
| --- | --- | --- | 
| runsOn | Il cluster EMR in cui viene eseguita questa HiveActivity. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myEmrCluster Id "\$1 | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn ed esiste workerGroup, workerGroup verrà ignorato. | Stringa | 
| input | Origine dati di input. | Oggetto di riferimento, ad esempio «input»: \$1"ref»:» myDataNode Id "\$1 | 
| output | Origine dati di output. | Oggetto di riferimento, ad esempio «output»: \$1"ref»:» myDataNode Id "\$1 | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| dependsOn | Specifica una dipendenza su un altro oggetto eseguibile. | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» myActivityId «\$1 | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite. | Enumerazione | 
| hadoopQueue | Il nome della coda del pianificatore Hadoop a cui verrà inviato il processo. | Stringa | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore. | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI S3 (come 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| postActivityTaskConfig | Lo script di configurazione post-attività da eseguire. Questo è composto da un URI dello script della shell in Amazon S3 e da un elenco di argomenti. | Oggetto di riferimento, ad esempio "postActivityTaskConfig»: \$1"ref»:» myShellScript ConfigId «\$1 | 
| preActivityTaskConfig | Lo script di configurazione pre-attività da eseguire. Questo è composto da un URI dello script della shell in Amazon S3 e da un elenco di argomenti. | Oggetto di riferimento, ad esempio "preActivityTaskConfig»: \$1"ref»:» myShellScript ConfigId «\$1 | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio «precondition»: \$1"ref»:» myPreconditionId «\$1 | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| resizeClusterBeforeIn esecuzione | Ridimensiona il cluster prima di eseguire questa attività per adattare i nodi di dati DynamoDB specificati come input o output.  Se la tua attività utilizza un `DynamoDBDataNode` come nodo di dati di input o output e lo imposti su, inizia `resizeClusterBeforeRunning` a `TRUE` utilizzare i tipi di istanza. AWS Data Pipeline `m3.xlarge` Questo sovrascrive le tue scelte in termini di tipi di istanze con `m3.xlarge`, con un possibile aumento dei costi.  | Booleano | 
| resizeClusterMaxIstanze | Un limite per il numero massimo di istanze che possono essere richieste dall'algoritmo di ridimensionamento. | Numero intero | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. Time Series Style Scheduling significa che le istanze vengono programmate al termine di ogni intervallo e Cron Style Scheduling significa che le istanze vengono programmate all'inizio di ogni intervallo. Una pianificazione on demand consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione on demand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline su richiesta, è sufficiente chiamare l' ActivatePipeline operazione per ogni esecuzione successiva. I valori sono: cron, ondemand e timeseries. | Enumerazione | 
| scriptVariable | Speciifica le variabili di script per Amazon EMR da passare a Hive durante l'esecuzione di uno script. Ad esempio, le seguenti variabili di script di esempio passano le variabili SAMPLE e FILTER\$1DATE a Hive: SAMPLE=s3://elasticmapreduce/samples/hive-ads e FILTER\$1DATE=\$1\$1format(@scheduledStartTime,'YYYY-MM-dd')\$1%. Questo campo accetta più valori e funziona con entrambi i campi script e scriptUri. Inoltre, scriptVariable funziona indipendentemente dall'impostazione della fase di sviluppo su true o false. Il campo è particolarmente utile per inviare valori dinamici a Hive utilizzando le espressioni e le funzioni AWS Data Pipeline . | Stringa | 
| fase | Stabilisce se è abilitata la gestione temporanea prima o dopo aver eseguito lo script. Non consentito con Hive 11, quindi usa un'AMI Amazon EMR versione 3.2.0 o successiva. | Booleano | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | I log dei passaggi di Amazon EMR sono disponibili solo nei tentativi di attività EMR. | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ Ora healthStatusUpdated | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per un oggetto. | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

## Vedi anche
<a name="hiveactivity-seealso"></a>
+ [ShellCommandActivity](dp-object-shellcommandactivity.md)
+ [EmrActivity](dp-object-emractivity.md)

# HiveCopyActivity
<a name="dp-object-hivecopyactivity"></a>

Esegue una query Hive su un cluster EMR. `HiveCopyActivity`semplifica la copia dei dati tra tabelle DynamoDB. `HiveCopyActivity`accetta un'istruzione HiveQL per filtrare i dati di input da DynamoDB a livello di colonna e riga.

## Esempio
<a name="hivecopyactivity-example"></a>

L'esempio seguente mostra come usare `HiveCopyActivity` e `DynamoDBExportDataFormat` per copiare i dati da una versione `DynamoDBDataNode` a un'altra, mentre i dati vengono filtrati, in base a un timestamp.

```
{
  "objects": [
    {
      "id" : "DataFormat.1",
      "name" : "DataFormat.1",
      "type" : "DynamoDBExportDataFormat",
      "column" : "timeStamp BIGINT"
    },
    {
      "id" : "DataFormat.2",
      "name" : "DataFormat.2",
      "type" : "DynamoDBExportDataFormat"
    },
    {
      "id" : "DynamoDBDataNode.1",
      "name" : "DynamoDBDataNode.1",
      "type" : "DynamoDBDataNode",
      "tableName" : "item_mapped_table_restore_temp",
      "schedule" : { "ref" : "ResourcePeriod" },
      "dataFormat" : { "ref" : "DataFormat.1" }
    },
    {
      "id" : "DynamoDBDataNode.2",
      "name" : "DynamoDBDataNode.2",
      "type" : "DynamoDBDataNode",
      "tableName" : "restore_table",
      "region" : "us_west_1",
      "schedule" : { "ref" : "ResourcePeriod" },
      "dataFormat" : { "ref" : "DataFormat.2" }
    },
    {
      "id" : "EmrCluster.1",
      "name" : "EmrCluster.1",
      "type" : "EmrCluster",
      "schedule" : { "ref" : "ResourcePeriod" },
      "masterInstanceType" : "m1.xlarge",
      "coreInstanceCount" : "4"
    },
    {
      "id" : "HiveTransform.1",
      "name" : "Hive Copy Transform.1",
      "type" : "HiveCopyActivity",
      "input" : { "ref" : "DynamoDBDataNode.1" },
      "output" : { "ref" : "DynamoDBDataNode.2" },
      "schedule" :{ "ref" : "ResourcePeriod" },
      "runsOn" : { "ref" : "EmrCluster.1" },
      "filterSql" : "`timeStamp` > unix_timestamp(\"#{@scheduledStartTime}\", \"yyyy-MM-dd'T'HH:mm:ss\")"
    },
    {
      "id" : "ResourcePeriod",
      "name" : "ResourcePeriod",
      "type" : "Schedule",
      "period" : "1 Hour",
      "startDateTime" : "2013-06-04T00:00:00",
      "endDateTime" : "2013-06-04T01:00:00"
    }
  ]
}
```

## Sintassi
<a name="hivecopyactivity-syntax"></a>


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Gli utenti devono specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. Gli utenti possono soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio specificando «schedule»: \$1"ref»: "«\$1. DefaultSchedule Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), gli utenti possono creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html) | Oggetto di riferimento, ad esempio «schedule»: \$1"ref»:» «myScheduleId\$1 | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| runsOn | Specificare il cluster per l'esecuzione. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myResourceId «\$1 | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn ed esiste workerGroup, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Il timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| dependsOn | Specifica la dipendenza su un altro oggetto eseguibile. | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» «myActivityId\$1 | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite. | Enumerazione | 
| filterSql | Un frammento di istruzione SQL Hive che filtra un sottoinsieme di dati DynamoDB o Amazon S3 da copiare. Il filtro deve contenere solo predicati e non iniziare con una WHERE clausola, perché la aggiunge automaticamente. AWS Data Pipeline  | Stringa | 
| input | Origine dati di input. Questo deve essere S3DataNode o DynamoDBDataNode. Se utilizzi DynamoDBNode, specifica DynamoDBExportDataFormat. | Oggetto di riferimento, ad esempio «input»: \$1"ref»:» myDataNode Id "\$1 | 
| lateAfterTimeout | Il tempo trascorso dall'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore. | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| output | Origine dati di output. Se l'input è S3DataNode, questo deve essere DynamoDBDataNode. Altrimenti può essere S3DataNode o DynamoDBDataNode. Se utilizzi DynamoDBNode, specifica DynamoDBExportDataFormat. | Oggetto di riferimento, ad esempio «output»: \$1"ref»:» myDataNode Id "\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI di Amazon S3, ad esempio, per il  's3://BucketName/Key/' caricamento dei log per la pipeline. | Stringa | 
| postActivityTaskConfig | Lo script di configurazione post-attività da eseguire. Questo è composto da un URI dello script della shell in Amazon S3 e da un elenco di argomenti. | Oggetto di riferimento, ad esempio "postActivityTaskConfig»: \$1"ref»:» myShellScript ConfigId «\$1 | 
| preActivityTaskConfig | Lo script di configurazione pre-attività da eseguire. Questo è composto da un URI dello script della shell in Amazon S3 e da un elenco di argomenti. | Oggetto di riferimento, ad esempio "preActivityTaskConfig»: \$1"ref»:» myShellScript ConfigId «\$1 | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio «precondizione»: \$1"ref»:» «myPreconditionId\$1 | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| resizeClusterBeforeIn esecuzione | Ridimensiona il cluster prima di eseguire questa attività per adattare i nodi di dati DynamoDB specificati come input o output.  Se la tua attività utilizza un `DynamoDBDataNode` come nodo di dati di input o output e lo imposti su, inizia `resizeClusterBeforeRunning` a `TRUE` utilizzare i tipi di istanza. AWS Data Pipeline `m3.xlarge` Questo sovrascrive le tue scelte in termini di tipi di istanze con `m3.xlarge`, con un possibile aumento dei costi.  | Booleano | 
| resizeClusterMaxIstanze | Un limite per il numero massimo di istanze che possono essere richieste dall'algoritmo di ridimensionamento | Numero intero | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. Time Series Style Scheduling significa che le istanze vengono programmate al termine di ogni intervallo e Cron Style Scheduling significa che le istanze vengono programmate all'inizio di ogni intervallo. Una pianificazione on demand consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione on demand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline su richiesta, è sufficiente chiamare l' ActivatePipeline operazione per ogni esecuzione successiva. I valori sono: cron, ondemand e timeseries. | Enumerazione | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | I log dei passaggi di Amazon EMR sono disponibili solo nei tentativi di attività EMR. | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ Ora healthStatusUpdated | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto. | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Object. | Stringa | 

## Vedi anche
<a name="hivecopyactivity-seealso"></a>
+ [ShellCommandActivity](dp-object-shellcommandactivity.md)
+ [EmrActivity](dp-object-emractivity.md)

# PigActivity
<a name="dp-object-pigactivity"></a>

PigActivity fornisce supporto nativo per gli script Pig AWS Data Pipeline senza la necessità di utilizzare o. `ShellCommandActivity` `EmrActivity` Inoltre, PigActivity supporta l'archiviazione dei dati. Quando il campo della fase è impostato su true, AWS Data Pipeline gestisce temporaneamente i dati di input come schema in Pig senza codice aggiuntivo da parte dell'utente. 

## Esempio
<a name="pigactivity-example"></a>

La seguente pipeline di esempio mostra come utilizzare `PigActivity`. La pipeline di esempio esegue le operazioni seguenti:
+ MyPigActivity1 carica i dati da Amazon S3 ed esegue uno script Pig che seleziona alcune colonne di dati e li carica su Amazon S3.
+ MyPigActivity2 carica il primo output, seleziona alcune colonne e tre righe di dati e lo carica su Amazon S3 come secondo output.
+ MyPigActivity3 carica il secondo dato di output, inserisce due righe di dati e solo la colonna denominata «quinta» in Amazon RDS.
+ MyPigActivity4 carica i dati Amazon RDS, seleziona la prima riga di dati e la carica su Amazon S3.

```
{
  "objects": [
    {
      "id": "MyInputData1",
      "schedule": {
        "ref": "MyEmrResourcePeriod"
      },
      "directoryPath": "s3://amzn-s3-demo-bucket/pigTestInput",
      "name": "MyInputData1",
      "dataFormat": {
        "ref": "MyInputDataType1"
      },
      "type": "S3DataNode"
    },
    {
      "id": "MyPigActivity4",
      "scheduleType": "CRON",
      "schedule": {
        "ref": "MyEmrResourcePeriod"
      },
      "input": {
        "ref": "MyOutputData3"
      },
      "pipelineLogUri": "s3://amzn-s3-demo-bucket/path/",
      "name": "MyPigActivity4",
      "runsOn": {
        "ref": "MyEmrResource"
      },
      "type": "PigActivity",
      "dependsOn": {
        "ref": "MyPigActivity3"
      },
      "output": {
        "ref": "MyOutputData4"
      },
      "script": "B = LIMIT ${input1} 1; ${output1} = FOREACH B GENERATE one;",
      "stage": "true"
    },
    {
      "id": "MyPigActivity3",
      "scheduleType": "CRON",
      "schedule": {
        "ref": "MyEmrResourcePeriod"
      },
      "input": {
        "ref": "MyOutputData2"
      },
      "pipelineLogUri": "s3://amzn-s3-demo-bucket/path",
      "name": "MyPigActivity3",
      "runsOn": {
        "ref": "MyEmrResource"
      },
      "script": "B = LIMIT ${input1} 2; ${output1} = FOREACH B GENERATE Fifth;",
      "type": "PigActivity",
      "dependsOn": {
        "ref": "MyPigActivity2"
      },
      "output": {
        "ref": "MyOutputData3"
      },
      "stage": "true"
    },
    {
      "id": "MyOutputData2",
      "schedule": {
        "ref": "MyEmrResourcePeriod"
      },
      "name": "MyOutputData2",
      "directoryPath": "s3://amzn-s3-demo-bucket/PigActivityOutput2",
      "dataFormat": {
        "ref": "MyOutputDataType2"
      },
      "type": "S3DataNode"
    },
    {
      "id": "MyOutputData1",
      "schedule": {
        "ref": "MyEmrResourcePeriod"
      },
      "name": "MyOutputData1",
      "directoryPath": "s3://amzn-s3-demo-bucket/PigActivityOutput1",
      "dataFormat": {
        "ref": "MyOutputDataType1"
      },
      "type": "S3DataNode"
    },
    {
      "id": "MyInputDataType1",
      "name": "MyInputDataType1",
      "column": [
        "First STRING",
        "Second STRING",
        "Third STRING",
        "Fourth STRING",
        "Fifth STRING",
        "Sixth STRING",
        "Seventh STRING",
        "Eighth STRING",
        "Ninth STRING",
        "Tenth STRING"
      ],
      "inputRegEx": "^(\\\\S+) (\\\\S+) (\\\\S+) (\\\\S+) (\\\\S+) (\\\\S+) (\\\\S+) (\\\\S+) (\\\\S+) (\\\\S+)",
      "type": "RegEx"
    },
    {
      "id": "MyEmrResource",
      "region": "us-east-1",
      "schedule": {
        "ref": "MyEmrResourcePeriod"
      },
      "keyPair": "example-keypair",
      "masterInstanceType": "m1.small",
      "enableDebugging": "true",
      "name": "MyEmrResource",
      "actionOnTaskFailure": "continue",
      "type": "EmrCluster"
    },
    {
      "id": "MyOutputDataType4",
      "name": "MyOutputDataType4",
      "column": "one STRING",
      "type": "CSV"
    },
    {
      "id": "MyOutputData4",
      "schedule": {
        "ref": "MyEmrResourcePeriod"
      },
      "directoryPath": "s3://amzn-s3-demo-bucket/PigActivityOutput3",
      "name": "MyOutputData4",
      "dataFormat": {
        "ref": "MyOutputDataType4"
      },
      "type": "S3DataNode"
    },
    {
      "id": "MyOutputDataType1",
      "name": "MyOutputDataType1",
      "column": [
        "First STRING",
        "Second STRING",
        "Third STRING",
        "Fourth STRING",
        "Fifth STRING",
        "Sixth STRING",
        "Seventh STRING",
        "Eighth STRING"
      ],
      "columnSeparator": "*",
      "type": "Custom"
    },
    {
      "id": "MyOutputData3",
      "username": "___",
      "schedule": {
        "ref": "MyEmrResourcePeriod"
      },
      "insertQuery": "insert into #{table} (one) values (?)",
      "name": "MyOutputData3",
      "*password": "___",
      "runsOn": {
        "ref": "MyEmrResource"
      },
      "connectionString": "jdbc:mysql://example-database-instance:3306/example-database",
      "selectQuery": "select * from #{table}",
      "table": "example-table-name",
      "type": "MySqlDataNode"
    },
    {
      "id": "MyOutputDataType2",
      "name": "MyOutputDataType2",
      "column": [
        "Third STRING",
        "Fourth STRING",
        "Fifth STRING",
        "Sixth STRING",
        "Seventh STRING",
        "Eighth STRING"
      ],
      "type": "TSV"
    },
    {
      "id": "MyPigActivity2",
      "scheduleType": "CRON",
      "schedule": {
        "ref": "MyEmrResourcePeriod"
      },
      "input": {
        "ref": "MyOutputData1"
      },
      "pipelineLogUri": "s3://amzn-s3-demo-bucket/path",
      "name": "MyPigActivity2",
      "runsOn": {
        "ref": "MyEmrResource"
      },
      "dependsOn": {
        "ref": "MyPigActivity1"
      },
      "type": "PigActivity",
      "script": "B = LIMIT ${input1} 3; ${output1} = FOREACH B GENERATE Third, Fourth, Fifth, Sixth, Seventh, Eighth;",
      "output": {
        "ref": "MyOutputData2"
      },
      "stage": "true"
    },
    {
      "id": "MyEmrResourcePeriod",
      "startDateTime": "2013-05-20T00:00:00",
      "name": "MyEmrResourcePeriod",
      "period": "1 day",
      "type": "Schedule",
      "endDateTime": "2013-05-21T00:00:00"
    },
    {
      "id": "MyPigActivity1",
      "scheduleType": "CRON",
      "schedule": {
        "ref": "MyEmrResourcePeriod"
      },
      "input": {
        "ref": "MyInputData1"
      },
      "pipelineLogUri": "s3://amzn-s3-demo-bucket/path",
      "scriptUri": "s3://amzn-s3-demo-bucket/script/pigTestScipt.q",
      "name": "MyPigActivity1",
      "runsOn": {
        "ref": "MyEmrResource"
      },
      "scriptVariable": [
        "column1=First",
        "column2=Second",
        "three=3"
      ],
      "type": "PigActivity",
      "output": {
        "ref": "MyOutputData1"
      },
      "stage": "true"
    }
  ]
}
```

Il contenuto di `pigTestScript.q` è il seguente.

```
B = LIMIT ${input1} $three; ${output1} = FOREACH B GENERATE $column1, $column2, Third, Fourth, Fifth, Sixth, Seventh, Eighth;
```

## Sintassi
<a name="pigactivity-syntax"></a>


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Gli utenti devono specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. Gli utenti possono soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio specificando «schedule»: \$1"ref»: "«\$1. DefaultSchedule Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), gli utenti possono creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html) | Oggetto di riferimento, ad esempio, «schedule»: \$1"ref»:» myScheduleId «\$1 | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| script | Lo script Pig da eseguire | Stringa | 
| scriptUri | La posizione dello script Pig da eseguire (ad esempio, s3:// scriptLocation). | Stringa | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| runsOn | Cluster EMR su cui viene eseguito. PigActivity  | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myEmrCluster Id "\$1 | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn ed esiste workerGroup, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Il timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| dependsOn | Specifica la dipendenza su un altro oggetto eseguibile. | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» myActivityId «\$1 | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite. | Enumerazione | 
| input | Origine dati di input. | Oggetto di riferimento, ad esempio, «input»: \$1"ref»:» myDataNode Id "\$1 | 
| lateAfterTimeout | Il tempo trascorso dall'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore. | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| output | Origine dati di output. | Oggetto di riferimento, ad esempio «output»: \$1"ref»:» myDataNode Id "\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI di Amazon S3 (ad esempio 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| postActivityTaskConfig | Lo script di configurazione post-attività da eseguire. È costituito da un URI dello script di shell in Amazon S33 e da un elenco di argomenti. | Oggetto di riferimento, ad esempio "postActivityTaskConfig»: \$1"ref»:» myShellScript ConfigId «\$1 | 
| preActivityTaskConfig | Lo script di configurazione pre-attività da eseguire. Questo è composto da un URI dello script della shell in Amazon S3 e da un elenco di argomenti. | Oggetto di riferimento, ad esempio "preActivityTaskConfig»: \$1"ref»:» myShellScript ConfigId «\$1 | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio, «precondition»: \$1"ref»:» myPreconditionId «\$1 | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| resizeClusterBeforeIn esecuzione | Ridimensiona il cluster prima di eseguire questa attività per adattare i nodi di dati DynamoDB specificati come input o output. Se la tua attività utilizza un `DynamoDBDataNode` come nodo di dati di input o output e lo imposti su, inizia `resizeClusterBeforeRunning` a `TRUE` utilizzare i tipi di istanza. AWS Data Pipeline `m3.xlarge` Questo sovrascrive le tue scelte in termini di tipi di istanze con `m3.xlarge`, con un possibile aumento dei costi.  | Booleano | 
| resizeClusterMaxIstanze | Un limite per il numero massimo di istanze che possono essere richieste dall'algoritmo di ridimensionamento. | Numero intero | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. Time Series Style Scheduling significa che le istanze vengono programmate al termine di ogni intervallo e Cron Style Scheduling significa che le istanze vengono programmate all'inizio di ogni intervallo. Una pianificazione on demand consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione on demand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline su richiesta, è sufficiente chiamare l' ActivatePipeline operazione per ogni esecuzione successiva. I valori sono: cron, ondemand e timeseries. | Enumerazione | 
| scriptVariable | Gli argomenti da passare allo script Pig. È possibile utilizzare scriptVariable con lo script o scriptUri. | Stringa | 
| fase | Determina se lo staging è abilitato e consente allo script Pig di accedere alle tabelle di dati staged-data, come \$1 \$1\$1 e \$1 \$1\$1INPUT1. OUTPUT1 | Booleano | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio, «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | I log dei passaggi di Amazon EMR sono disponibili solo nei tentativi di attività EMR. | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ Ora healthStatusUpdated | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per l'oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto. | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'ID della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

## Vedi anche
<a name="pigactivity-seealso"></a>
+ [ShellCommandActivity](dp-object-shellcommandactivity.md)
+ [EmrActivity](dp-object-emractivity.md)

# RedshiftCopyActivity
<a name="dp-object-redshiftcopyactivity"></a>

Copia i dati da DynamoDB o Amazon S3 su Amazon Redshift. È possibile caricare i dati in una nuova tabella, oppure unirli facilmente alla tabella esistente.

Questa è una panoramica di un caso d'uso in cui utilizzare `RedshiftCopyActivity`:

1. Inizia a AWS Data Pipeline utilizzarlo per lo staging dei dati in Amazon S3. 

1. `RedshiftCopyActivity`Utilizzalo per spostare i dati da Amazon RDS e Amazon EMR ad Amazon Redshift.

   In questo modo puoi caricare i dati in Amazon Redshift dove puoi analizzarli.

1. [SqlActivity](dp-object-sqlactivity.md)Utilizzalo per eseguire query SQL sui dati che hai caricato in Amazon Redshift.

 Inoltre, `RedshiftCopyActivity` consente di lavorare con un `S3DataNode`, poiché supporta un file manifest. Per ulteriori informazioni, consulta [S3 DataNode](dp-object-s3datanode.md).

## Esempio
<a name="redshiftcopyactivity-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. 

Per garantire la conversione dei formati, questo esempio utilizza i parametri speciali di conversione [EMPTYASNULL](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-conversion.html#copy-emptyasnull) e [IGNOREBLANKLINES](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-conversion.html#copy-ignoreblanklines) in `commandOptions`. Per informazioni, consulta [i parametri di conversione dei dati](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-conversion.html) nella *Amazon Redshift Database Developer Guide*.

```
{
  "id" : "S3ToRedshiftCopyActivity",
  "type" : "RedshiftCopyActivity",
  "input" : { "ref": "MyS3DataNode" },
  "output" : { "ref": "MyRedshiftDataNode" },
  "insertMode" : "KEEP_EXISTING",
  "schedule" : { "ref": "Hour" },
  "runsOn" : { "ref": "MyEc2Resource" },
  "commandOptions": ["EMPTYASNULL", "IGNOREBLANKLINES"]
}
```

L'esempio seguente di definizione di pipeline mostra un'attività che utilizza la modalità di inserimento `APPEND`:

```
{
  "objects": [
    {
      "id": "CSVId1",
      "name": "DefaultCSV1",
      "type": "CSV"
    },
    {
      "id": "RedshiftDatabaseId1",
      "databaseName": "dbname",
      "username": "user",
      "name": "DefaultRedshiftDatabase1",
      "*password": "password",
      "type": "RedshiftDatabase",
      "clusterId": "redshiftclusterId"
    },
    {
      "id": "Default",
      "scheduleType": "timeseries",
      "failureAndRerunMode": "CASCADE",
      "name": "Default",
      "role": "DataPipelineDefaultRole",
      "resourceRole": "DataPipelineDefaultResourceRole"
    },
    {
      "id": "RedshiftDataNodeId1",
      "schedule": {
        "ref": "ScheduleId1"
      },
      "tableName": "orders",
      "name": "DefaultRedshiftDataNode1",
      "createTableSql": "create table StructuredLogs (requestBeginTime CHAR(30) PRIMARY KEY DISTKEY SORTKEY, requestEndTime CHAR(30), hostname CHAR(100), requestDate varchar(20));",
      "type": "RedshiftDataNode",
      "database": {
        "ref": "RedshiftDatabaseId1"
      }
    },
    {
      "id": "Ec2ResourceId1",
      "schedule": {
        "ref": "ScheduleId1"
      },
      "securityGroups": "MySecurityGroup",
      "name": "DefaultEc2Resource1",
      "role": "DataPipelineDefaultRole",
      "logUri": "s3://myLogs",
      "resourceRole": "DataPipelineDefaultResourceRole",
      "type": "Ec2Resource"
    },
    {
      "id": "ScheduleId1",
      "startDateTime": "yyyy-mm-ddT00:00:00",
      "name": "DefaultSchedule1",
      "type": "Schedule",
      "period": "period",
      "endDateTime": "yyyy-mm-ddT00:00:00"
    },
    {
      "id": "S3DataNodeId1",
      "schedule": {
        "ref": "ScheduleId1"
      },
      "filePath": "s3://datapipeline-us-east-1/samples/hive-ads-samples.csv",
      "name": "DefaultS3DataNode1",
      "dataFormat": {
        "ref": "CSVId1"
      },
      "type": "S3DataNode"
    },
    {
      "id": "RedshiftCopyActivityId1",
      "input": {
        "ref": "S3DataNodeId1"
      },
      "schedule": {
        "ref": "ScheduleId1"
      },
      "insertMode": "APPEND",
      "name": "DefaultRedshiftCopyActivity1",
      "runsOn": {
        "ref": "Ec2ResourceId1"
      },
      "type": "RedshiftCopyActivity",
      "output": {
        "ref": "RedshiftDataNodeId1"
      }
    }
  ]
}
```

L'operazione `APPEND` aggiunge gli elementi a una tabella indipendentemente dalle chiavi di ordinamento o primarie. Ad esempio, se si ha la seguente tabella, è possibile aggiungere un record con lo stesso ID e valore utente.

```
ID(PK)     USER
1          aaa
2          bbb
```

È possibile aggiungere un record con lo stesso ID e valore utente:

```
ID(PK)     USER
1          aaa
2          bbb
1          aaa
```

**Nota**  
Se un'operazione `APPEND` viene interrotta e riprovata, la risultante pipeline rieseguita viene potenzialmente aggiunta dall'inizio. L'operazione potrebbe causare un ulteriore doppione, quindi è necessario essere a conoscenza di questo comportamento, soprattutto se si ha una logica che conteggia il numero di righe.

Per un tutorial, vedere [Copia i dati su Amazon Redshift utilizzando AWS Data Pipeline](dp-copydata-redshift.md).

## Sintassi
<a name="redshiftcopyactivity-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| insertMode |   Determina AWS Data Pipeline cosa fare con i dati preesistenti nella tabella di destinazione che si sovrappongono alle righe dei dati da caricare. I valori validi sono: `KEEP_EXISTING`, `OVERWRITE_EXISTING`, `TRUNCATE` e `APPEND`. `KEEP_EXISTING` aggiunge nuove righe alla tabella, mentre non modifica le righe esistenti. `KEEP_EXISTING` e ` OVERWRITE_EXISTING` utilizzano la chiave primaria, l'ordinamento e le chiavi di distribuzione per identificare quali righe in entrata abbinare alle righe esistenti. Consulta [Aggiornamento e inserimento di nuovi dati](https://docs.aws.amazon.com/redshift/latest/dg/t_updating-inserting-using-staging-tables-.html) nella Amazon *Redshift Database* Developer Guide.  `TRUNCATE` elimina tutti i dati della tabella di destinazione prima di scrivere i nuovi dati.  `APPEND` aggiunge tutti i record alla fine della tabella Redshift. `APPEND` non richiede una chiave primaria e di distribuzione o la chiave di ordinamento, in modo da poter aggiungere gli elementi che potrebbero essere potenziali duplicati.  | Enumerazione | 

 


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule |  Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione.  Specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto.  Nella maggior parte dei casi, è preferibile inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. Ad esempio, è possibile impostare una pianificazione esplicitamente sull'oggetto, specificando `"schedule": {"ref": "DefaultSchedule"}`.  Se la pianificazione master nella pipeline contiene pianificazioni nidificate, è possibile creare un oggetto padre che dispone di un riferimento alla pianificazione.  Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [Pianificazione](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html).   | Reference Object, ad esempio: "schedule":\$1"ref":"myScheduleId"\$1 | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| runsOn | Le risorse di calcolo per eseguire l'attività o il comando. Ad esempio, un'istanza Amazon EC2 o un cluster Amazon EMR. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myResourceId «\$1 | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn ed esiste workerGroup, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| commandOptions |  Richiede i parametri da passare al nodo di dati Amazon Redshift durante l'`COPY`operazione. Per informazioni sui parametri, consulta [COPY](https://docs.aws.amazon.com/redshift/latest/dg/r_COPY.html) nella Amazon Redshift *Database Developer Guide*. Mentre carica la tabella, `COPY` tenta di convertire in modo implicito le stringhe al tipo di dati della colonna di destinazione. Oltre alle conversioni predefinite dei dati che si verificano automaticamente, se si ricevono errori o altre esigenze di conversione, è possibile specificare i parametri di conversione aggiuntivi. Per informazioni, consulta [i parametri di conversione dei dati](https://docs.aws.amazon.com/redshift/latest/dg/copy-parameters-data-conversion.html) nella Amazon Redshift *Database Developer Guide*. Se un formato di dati è associato al nodo di dati in ingresso o in uscita, allora i parametri forniti vengono ignorati.  Poiché l'operazione di copia utilizza per prima cosa `COPY` per inserire i dati in una tabella intermedia, quindi usa un comando `INSERT` per copiare i dati dalla tabella intermedia nella tabella di destinazione, alcuni parametri `COPY` non sono applicabili, ad esempio la capacità del comando `COPY` di abilitare la compressione automatica della tabella. Se la compressione è obbligatoria, aggiungi i dettagli di codifica della colonna all'istruzione `CREATE TABLE`.  Inoltre, in alcuni casi, quando deve scaricare dati dal cluster Amazon Redshift e creare file in Amazon S3, si affida `RedshiftCopyActivity` al funzionamento `UNLOAD` di Amazon Redshift. Per migliorare le prestazioni durante la copia e lo scaricamento, specificare il parametro `PARALLEL OFF` del comando `UNLOAD`. Per informazioni sui parametri, consulta [UNLOAD](https://docs.aws.amazon.com/redshift/latest/dg/r_UNLOAD.html) nella Amazon *Redshift Database* Developer Guide.  | Stringa | 
| dependsOn | Specifica una dipendenza su un altro oggetto eseguibile. | Reference Object: "dependsOn":\$1"ref":"myActivityId"\$1 | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite | Enumerazione | 
| input | Nodo dei dati di input. L'origine dati può essere Amazon S3, DynamoDB o Amazon Redshift. | Reference Object: "input":\$1"ref":"myDataNodeId"\$1 | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Reference Object: "onFail":\$1"ref":"myActionId"\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Reference Object:  "onLateAction":\$1"ref":"myActionId"\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Reference Object: "onSuccess":\$1"ref":"myActionId"\$1 | 
| output | Nodo dei dati di output. Il percorso di output può essere Amazon S3 o Amazon Redshift. | Reference Object: "output":\$1"ref":"myDataNodeId"\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Reference Object: "parent":\$1"ref":"myBaseObjectId"\$1 | 
| pipelineLogUri | L'URI S3 (ad esempio 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Reference Object: "precondition":\$1"ref":"myPreconditionId"\$1 | 
| coda |  Corrisponde all'`query_group `impostazione di Amazon Redshift, che consente di assegnare e dare priorità alle attività simultanee in base alla loro collocazione nelle code.  Amazon Redshift limita il numero di connessioni simultanee a 15. *Per ulteriori informazioni, consulta [Assigning Queries to Queues](https://docs.aws.amazon.com/AmazonRDS/latest/DeveloperGuide/cm-c-executing-queries.html) nella Amazon RDS Database Developer Guide.*  | Stringa | 
| reportProgressTimeout |  Timeout per chiamate successive di attività in remoto a `reportProgress`.  Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo.  | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| scheduleType |  Consente di specificare se la pianificazione per gli oggetti è nella pipeline. I valori sono `cron`, `ondemand` e `timeseries`. La pianificazione `timeseries` significa che le istanze sono programmate al termine di ogni intervallo. La pianificazione `Cron` significa che le istanze sono programmate all'inizio di ogni intervallo.  Una pianificazione `ondemand`consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo.  Per utilizzare le pipeline `ondemand`, chiama l'operazione `ActivatePipeline` per ogni esecuzione successiva.  Se utilizzi una pianificazione `ondemand`, devi specificarlo nell'oggetto predefinito e deve essere l'unica `scheduleType` specificata per gli oggetti della pipeline.  | Enumerazione | 
| transformSql |  L'espressione `SQL SELECT` utilizzata per trasformare i dati di input.  Esegui l'espressione `transformSql` nella tabella denominata `staging`.  Quando copi dati da DynamoDB o Amazon S3 AWS Data Pipeline , crea una tabella chiamata «staging» e inizialmente carica i dati al suo interno. I dati di questa tabella vengono utilizzati per aggiornare la tabella di destinazione.  Lo schema di output di `transformSql` deve corrispondere allo schema della tabella di destinazione finale. Se si specifica l'opzione `transformSql`, viene creata una seconda tabella intermedia dall'istruzione SQL specificata. I dati di questa seconda tabella intermedia vengono quindi aggiornati nella tabella di destinazione finale.  | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Reference Object: "activeInstances":\$1"ref":"myRunnableObjectId"\$1 | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Reference Object: "cascadeFailedOn":\$1"ref":"myRunnableObjectId"\$1 | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ Ora healthStatusUpdated | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto. | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Reference Object: "waitingOn":\$1"ref":"myRunnableObjectId"\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto. Indica la propria posizione nel ciclo di vita. Ad esempio, i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# ShellCommandActivity
<a name="dp-object-shellcommandactivity"></a>

 Consente di eseguire un comando o uno script. È possibile usare `ShellCommandActivity` per eseguire operazioni pianificate di tipo Cron o con serie temporali. 

Quando il `stage` campo è impostato su true e utilizzato con un`S3DataNode`, `ShellCommandActivity` supporta il concetto di staging dei dati, il che significa che puoi spostare i dati da Amazon S3 a una posizione di stage, ad esempio Amazon EC2 o il tuo ambiente locale, eseguire operazioni sui dati utilizzando script e `ShellCommandActivity` poi spostarli nuovamente su Amazon S3. 

In questo caso, quando il comando shell è connesso a un input `S3DataNode`, gli script shell operano direttamente sui dati utilizzando `${INPUT1_STAGING_DIR}`, `${INPUT2_STAGING_DIR}` e altri campi, con riferimento ai campi di input `ShellCommandActivity`. 

Allo stesso modo, l'output del comando shell può essere archiviato in una directory di output per essere inviato automaticamente ad Amazon S3, a cui si fa riferimento da `${OUTPUT1_STAGING_DIR}` e così via. `${OUTPUT2_STAGING_DIR}` 

Queste espressioni possono passare come argomenti della riga di comando al comando shell per l'utilizzo in logiche di trasformazione dei dati.

`ShellCommandActivity` restituisce codici e stringhe di errore in stile Linux. Se una `ShellCommandActivity` presenta un errore, l'`error` restituito è un valore diverso da zero.

## Esempio
<a name="shellcommandactivity-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto.

```
{
  "id" : "CreateDirectory",
  "type" : "ShellCommandActivity",
  "command" : "mkdir new-directory"
}
```

## Sintassi
<a name="shellcommandactivity-syntax"></a>


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule |  Questo oggetto viene richiamato entro l'esecuzione di un intervallo di `schedule`. Per impostare l'ordine di esecuzione delle dipendenze per questo oggetto, specificare un riferimento `schedule`a un altro oggetto.  Per soddisfare questo requisito, impostare esplicitamente un `schedule` sull'oggetto, ad esempio, specificando `"schedule": {"ref": "DefaultSchedule"}`.  Nella maggior parte dei casi, è preferibile inserire il riferimento `schedule` all'oggetto pipeline di default, in modo che tutti gli oggetti ereditano tale pianificazione. Se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), è possibile creare un oggetto padre che dispone di un riferimento alla pianificazione.  Per distribuire il carico, AWS Data Pipeline crea oggetti fisici leggermente prima del previsto, ma li esegue nei tempi previsti.  Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html)  | Oggetto di riferimento, ad esempio «schedule»: \$1"ref»:» myScheduleId «\$1 | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| command | Il comando da eseguire. Utilizzare \$1 per fare riferimento ai parametri posizionali e scriptArgument per specificare i parametri del comando. Questo valore ed eventuali parametri associati devono funzionare nell'ambiente da cui si sta eseguendo il Task Runner. | Stringa | 
| scriptUri | Un percorso URI di Amazon S3 per un file da scaricare ed eseguire come comando shell. Specifica solo uno scriptUri o solo un campo command. Se scriptUri non è in grado di utilizzare i parametri, utilizzare command. | Stringa | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| runsOn | La risorsa di calcolo per eseguire l'attività o il comando, ad esempio un'istanza Amazon EC2 o un cluster Amazon EMR. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myResourceId «\$1 | 
| workerGroup | Utilizzato per le attività di routing. Se si fornisce un valore runsOn ed esiste workerGroup, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Il timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| dependsOn | Specifica una dipendenza su un altro oggetto eseguibile. | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» «myActivityId\$1 | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite. | Enumerazione | 
| input | Posizione dei dati di input. | Oggetto di riferimento, ad esempio «input»: \$1"ref»:» myDataNode Id "\$1 | 
| lateAfterTimeout | Il tempo trascorso dall'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore. | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| output | Posizione dei dati di output. | Oggetto di riferimento, ad esempio «output»: \$1"ref»:» myDataNode Id "\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI di Amazon S3, ad esempio 's3://BucketName/Key/' per il caricamento dei log per la pipeline. | Stringa | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio «precondition»: \$1"ref»:» «\$1 myPreconditionId | 
| reportProgressTimeout | Il timeout per chiamate successive a reportProgress da parte di attività in remoto. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| scheduleType |  Consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo.  I valori possibili sono: `cron`, `ondemand` e `timeseries`. Se le istanze sono impostate su `timeseries` significa che sono programmate al termine di ogni intervallo.  Se le istanze sono impostate su `Cron` significa che sono programmate all'inizio di ogni intervallo.  Se sono impostate su `ondemand`, è possibile eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione `ondemand`, devi specificarlo nell'oggetto predefinito come l'unico `scheduleType` per gli oggetti della pipeline. Per utilizzare le pipeline `ondemand`, chiama l'operazione `ActivatePipeline` per ogni esecuzione successiva.   | Enumerazione | 
| scriptArgument | Un array di stringhe in formato JSON da passare al comando specificato dal comando. Ad esempio, se il comando è echo \$11 \$12, specificare scriptArgument come "param1", "param2". Per più argomenti e parametri, passare scriptArgument come segue: "scriptArgument":"arg1","scriptArgument":"param1","scriptArgument":"arg2","scriptArgument":"param2". scriptArgument può essere utilizzato solo con command; se si utilizza con scriptUri viene generato un errore. | Stringa | 
| fase | Stabilisce se è abilitata la gestione temporanea e consente ai comandi shell di accedere alle variabili dei dati gestiti temporaneamente, ad esempio \$1\$1INPUT1\$1STAGING\$1DIR\$1 e \$1\$1OUTPUT1\$1STAGING\$1DIR\$1. | Booleano | 
| stderr | Il percorso che riceve messaggi di errore del sistema reindirizzati dal comando. Se utilizzi il runsOn campo, deve trattarsi di un percorso Amazon S3 a causa della natura transitoria della risorsa che esegue la tua attività. Tuttavia, se specifichi il campo workerGroup, viene autorizzato un percorso file locale. | Stringa | 
| stdout | Il percorso Amazon S3 che riceve l'output reindirizzato dal comando. Se utilizzi il runsOn campo, deve trattarsi di un percorso Amazon S3 a causa della natura transitoria della risorsa che esegue la tua attività. Tuttavia, se specifichi il campo workerGroup, viene autorizzato un percorso file locale. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | L'elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | cancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | La descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | I log dei passaggi di Amazon EMR sono disponibili solo per i tentativi di attività di Amazon EMR. | Stringa | 
| errorId | errorId se l'oggetto non riuscito. | Stringa | 
| errorMessage | errorMessage se l'oggetto non riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione dell'oggetto. | DateTime | 
| hadoopJobLog | Registri di lavoro Hadoop disponibili sui tentativi di attività basate su Amazon EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | L'Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ Ora healthStatusUpdated | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per l'oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto. | DateTime | 
| @status | Lo stato dell'oggetto. | Stringa | 
| @version | La AWS Data Pipeline versione utilizzata per creare l'oggetto. | Stringa | 
| @waitingOn | La descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive l'oggetto con il formato errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La posizione di un oggetto nel ciclo di vita. I Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

## Vedi anche
<a name="shellcommandactivity-seealso"></a>
+ [CopyActivity](dp-object-copyactivity.md)
+ [EmrActivity](dp-object-emractivity.md)

# SqlActivity
<a name="dp-object-sqlactivity"></a>

Esegue una query SQL (script) su un database.

## Esempio
<a name="sqlactivity-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto.

```
{
  "id" : "MySqlActivity",
  "type" : "SqlActivity",
  "database" : { "ref": "MyDatabaseID" },
  "script" : "SQLQuery" | "scriptUri" : s3://scriptBucket/query.sql,
  "schedule" : { "ref": "MyScheduleID" },
}
```

## Sintassi
<a name="sqlactivity-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| database | Il database su cui eseguire lo script SQL fornito. | Oggetto di riferimento, ad esempio «database»: \$1"ref»:» myDatabaseId «\$1 | 

 


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule |  Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. È necessario specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. È possibile impostare una pianificazione esplicitamente sull'oggetto, ad esempio, specificando `"schedule": {"ref": "DefaultSchedule"}`.  Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione.  Se la pipeline dispone di una struttura di pianificazioni nidificate all'interno della pianificazione principale, è possibile creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html)  | Oggetto di riferimento, ad esempio «schedule»: \$1"ref»:» myScheduleId «\$1 | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| script | Lo script SQL da eseguire. È necessario specificare lo script o lo scriptUri. Quando lo script viene archiviato in Amazon S3, lo script non viene valutato come espressione. Specificare più valori per ScriptArgument è utile quando lo script è archiviato in Amazon S3. | Stringa | 
| scriptUri | Un URI che specifica il percorso di uno script SQL da eseguire in questa attività. | Stringa | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| runsOn | Le risorse di calcolo per eseguire l'attività o il comando. Ad esempio, un'istanza Amazon EC2 o un cluster Amazon EMR. | Oggetto di riferimento, ad esempio «runSon»: \$1"ref»:» myResourceId «\$1 | 
| workerGroup | Il gruppo di lavoro. Utilizzato per le attività di routing. Se si fornisce un valore runsOn ed esiste workerGroup, workerGroup verrà ignorato. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| dependsOn | Specifica una dipendenza su un altro oggetto eseguibile. | Oggetto di riferimento, ad esempio «dependsOn»: \$1"ref»:» «myActivityId\$1 | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite | Enumerazione | 
| input | Posizione dei dati di input. | Oggetto di riferimento, ad esempio «input»: \$1"ref»:» myDataNode Id "\$1 | 
| lateAfterTimeout | Il periodo di tempo dall'inizio programmato della pipeline all'interno del quale deve essere avviata l'esecuzione dell'oggetto. | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è ancora stato pianificato o non è ancora stato completato nel periodo di tempo trascorso dall'inizio programmato della pipeline, come specificato da ''. lateAfterTimeout | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| output | Posizione dei dati di output. Questo è utile solo per fare riferimento dall'interno di uno script (ad esempio\$1\$1output.tablename\$1) e per creare la tabella di output impostando 'createTableSql' nel nodo dati di output. L'output della query SQL non è scritto nel nodo dei dati di output. | Oggetto di riferimento, ad esempio «output»: \$1"ref»:» myDataNode Id "\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| pipelineLogUri | L'URI S3 (come 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| precondizione | Definisce eventualmente una precondizione. Un nodo dati non è contrassegnato come "READY" finché tutte le precondizioni non siano state soddisfatte. | Oggetto di riferimento, ad esempio «precondition»: \$1"ref»:» «\$1 myPreconditionId | 
| coda | [solo Amazon Redshift] Corrisponde all'impostazione query\$1group in Amazon Redshift che consente di assegnare e stabilire le priorità di attività simultanee in base al loro posizionamento nelle code. Amazon Redshift limita il numero di connessioni simultanee a 15. Per ulteriori informazioni, consulta [Assegnazione di query alle code](https://docs.aws.amazon.com/redshift/latest/dg/cm-c-executing-queries.html) nella Guida per gli sviluppatori di database Amazon Redshift. | Stringa | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| scheduleType |  Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. I valori sono `cron`, `ondemand` e `timeseries`.  La pianificazione `timeseries` significa che le istanze sono programmate al termine di ogni intervallo. La pianificazione `cron` significa che le istanze sono programmate all'inizio di ogni intervallo.  Una pianificazione `ondemand`consente di eseguire una pipeline una sola volta, per attivazione. Questo significa che non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione `ondemand`, devi specificarlo nell'oggetto predefinito e deve essere l'unico `scheduleType` specificato per gli oggetti della pipeline. Per utilizzare le pipeline `ondemand`, chiama l'operazione `ActivatePipeline` per ogni esecuzione successiva.  | Enumerazione | 
| scriptArgument | Un elenco di variabili per lo script. In alternativa, è possibile inserire le espressioni direttamente nel campo dello script. Per scriptArgument sono utili più valori quando lo script viene memorizzato in Amazon S3. Esempio: \$1 \$1format (@scheduledStartTime, "YY-MM-DD HH:MM:SS"\$1\$1n\$1 \$1format (PlusPeriod (@scheduledStartTime, «1 day»), "HH:MM:SS"\$1 YY-MM-DD  | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ healthStatusUpdated Ora | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# Resources
<a name="dp-object-resources"></a>

I seguenti sono gli oggetti risorsa: AWS Data Pipeline 

**Topics**
+ [Ec2Resource](dp-object-ec2resource.md)
+ [EmrCluster](dp-object-emrcluster.md)
+ [HttpProxy](dp-object-httpproxy.md)

# Ec2Resource
<a name="dp-object-ec2resource"></a>

Un'istanza Amazon EC2 che esegue il lavoro definito da un'attività di pipeline.

AWS Data Pipeline ora supporta IMDSv2 per l'istanza Amazon EC2, che utilizza un metodo orientato alla sessione per gestire meglio l'autenticazione durante il recupero delle informazioni sui metadati dalle istanze. Una sessione inizia e termina una serie di richieste che il software in esecuzione su un'istanza Amazon EC2 utilizza per accedere ai metadati e alle credenziali dell'istanza Amazon EC2 archiviati localmente. Il software avvia una sessione con una semplice richiesta HTTP PUT a IMDSv2. IMDSv2 restituisce un token segreto al software in esecuzione sull'istanza Amazon EC2, che utilizzerà il token come password per effettuare IMDSv2 richieste di metadati e credenziali.

**Nota**  
Per utilizzare IMDSv2 per la tua istanza Amazon EC2, dovrai modificare le impostazioni, poiché l'AMI predefinita non è compatibile con. IMDSv2 Puoi specificare una nuova versione AMI che puoi recuperare tramite il seguente parametro SSM:. `/aws/service/ami-amazon-linux-latest/amzn-ami-hvm-x86_64-ebs`

Per informazioni sulle istanze Amazon EC2 predefinite che vengono AWS Data Pipeline create se non specifichi un'istanza, consulta. [Istanze Amazon EC2 predefinite per regione AWS](dp-ec2-default-instance-types.md)

## Esempi
<a name="ec2resource-example"></a>

**EC2-Classic**

**Importante**  
Solo AWS gli account creati prima del 4 dicembre 2013 supportano la piattaforma EC2-Classic. Se disponi di uno di questi account, potresti avere la possibilità di creare oggetti EC2Resource per una pipeline in una rete EC2-Classic anziché in un VPC. Ti consigliamo vivamente di creare risorse per tutte le tue pipeline in VPC. Inoltre, se disponi di risorse esistenti in EC2-Classic, ti consigliamo di migrarle su un VPC.

L'oggetto di esempio seguente avvia un'istanza EC2 in EC2-Classic, con alcuni campi opzionali impostati.

```
{
  "id" : "MyEC2Resource",
  "type" : "Ec2Resource",
  "actionOnTaskFailure" : "terminate",
  "actionOnResourceFailure" : "retryAll",
  "maximumRetries" : "1",
  "instanceType" : "m5.large",
  "securityGroups" : [
    "test-group",
    "default"
  ],
  "keyPair" : "my-key-pair"
}
```

**EC2-VPC**

L'oggetto di esempio seguente avvia un'istanza EC2 in un VPC non di default, con alcuni campi opzionali impostati.

```
{
  "id" : "MyEC2Resource",
  "type" : "Ec2Resource",
  "actionOnTaskFailure" : "terminate",
  "actionOnResourceFailure" : "retryAll",
  "maximumRetries" : "1",
  "instanceType" : "m5.large",
  "securityGroupIds" : [
    "sg-12345678",
    "sg-12345678"
  ],
  "subnetId": "subnet-12345678",
  "associatePublicIpAddress": "true",
  "keyPair" : "my-key-pair"
}
```

## Sintassi
<a name="ec2resource-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| resourceRole | Il ruolo IAM che controlla le risorse a cui può accedere l'istanza Amazon EC2. | Stringa | 
| role | Il ruolo IAM AWS Data Pipeline utilizzato per creare l'istanza EC2. | Stringa | 

 


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule |  Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione.  Per impostare l'ordine di esecuzione delle dipendenze per questo oggetto, specificare un riferimento di pianificazione a un altro oggetto. Questa operazione può essere eseguita in uno dei seguenti modi: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/datapipeline/latest/DeveloperGuide/dp-object-ec2resource.html)  | Oggetto di riferimento, ad esempio "schedule":\$1"ref":"myScheduleId"\$1 | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| actionOnResourceFallimento | L'operazione intrapresa dopo il fallimento di una risorsa per questa risorsa. I valori validi sono "retryall" e "retrynone". | Stringa | 
| actionOnTaskFallimento | L'operazione intrapresa dopo il fallimento di un'attività per questa risorsa. I valori validi sono "continue" e "terminate". | Stringa | 
| associatePublicIpIndirizzo | Indica se assegnare automaticamente un indirizzo IP pubblico all'istanza. Se l'istanza è in Amazon EC2 o Amazon VPC, il valore predefinito è. true In caso contrario, il valore predefinito è false. | Booleano | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| availabilityZone | La zona di disponibilità in cui avviare l'istanza Amazon EC2. | Stringa | 
| disabilitare IMDSv1 | Il valore predefinito è false e abilita entrambi IMDSv1 e IMDSv2. Se lo imposti su true, disabilita IMDSv1 e fornisce solo IMDSv2s | Booleano | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite. | Enumerazione | 
| httpProxy | L'host proxy utilizzato dai client per connettersi ai AWS servizi. | Oggetto di riferimento, ad esempio  "httpProxy":\$1"ref":"myHttpProxyId"\$1 | 
| imageId | L'ID dell'AMI utilizzato per l'istanza. Per impostazione predefinita, AWS Data Pipeline utilizza il tipo di virtualizzazione AMI HVM. L'AMI specifica IDs utilizzata si basa su una regione. È possibile sovrascrivere l'AMI predefinita specificando l'AMI HVM di tua scelta. Per ulteriori informazioni sui tipi di AMI, consulta Tipi di [virtualizzazione dell'AMI Linux e Ricerca di](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/virtualization_types.html) [un AMI Linux nella Guida](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/finding-an-ami.html) per l'utente di *Amazon EC2*.  | Stringa | 
| initTimeout | Il tempo di attesa prima dell'avvio della risorsa.  | Periodo | 
| instanceCount | Obsoleta. | Numero intero | 
| instanceType | Il tipo di istanza Amazon EC2 da avviare. | Stringa | 
| keyPair | Nome della coppia di chiavi. Se avvii un'istanza Amazon EC2 senza specificare una coppia di key pair, non puoi accedervi. | Stringa | 
| lateAfterTimeout | Il tempo trascorso dall'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore. | Numero intero | 
| minInstanceCount | Obsoleta. | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio  "onFail":\$1"ref":"myActionId"\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o se è ancora in esecuzione. | Oggetto di riferimento, ad esempio "onLateAction":\$1"ref":"myActionId"\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio  "onSuccess":\$1"ref":"myActionId"\$1 | 
| parent | Padre dell'oggetto corrente da cui vengono ereditati gli slot. | Oggetto di riferimento, ad esempio  "parent":\$1"ref":"myBaseObjectId"\$1 | 
| pipelineLogUri | L'URI di Amazon S3 (ad esempio's3://BucketName/Key/') per il caricamento dei log per la pipeline. | Stringa | 
| region |  Il codice per la regione in cui deve essere eseguita l'istanza Amazon EC2. Per impostazione predefinita, l'istanza viene eseguita nella stessa regione della pipeline. È possibile eseguire l'istanza nella stessa regione del set di dati dipendenti. | Enumerazione | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate ed essere quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| runAsUser | L'utente che deve eseguire il. TaskRunner | Stringa | 
| runsOn | Campo non consentito su questo oggetto. | Oggetto di riferimento, ad esempio, "runsOn":\$1"ref":"myResourceId"\$1 | 
| scheduleType |  Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo oppure on demand. I valori sono: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/datapipeline/latest/DeveloperGuide/dp-object-ec2resource.html)  | Enumerazione | 
| securityGroupIds | Gli ID di uno o più gruppi di sicurezza Amazon EC2 da utilizzare per le istanze nel pool di risorse. | Stringa | 
| securityGroups | Uno o più gruppi di sicurezza Amazon EC2 da utilizzare per le istanze nel pool di risorse. | Stringa | 
| spotBidPrice | L'importo massimo per ora per la tua istanza Spot in dollari, un valore decimale compreso tra 0 e 20,00, esclusi. | Stringa | 
| subnetId | L'ID della sottorete Amazon EC2 in cui avviare l'istanza. | Stringa | 
| terminateAfter | Il numero di ore dopo cui terminare la risorsa. | Periodo | 
| useOnDemandOnLastAttempt | Nell'ultimo tentativo di richiesta di una risorsa Spot, effettuare una richiesta per istanze on demand invece che per istanze Spot. In questo modo, se tutti i tentativi precedenti non sono andati a buon fine, l'ultimo tentativo non viene interrotto. | Booleano | 
| workerGroup | Campo non consentito su questo oggetto. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio, "activeInstances":\$1"ref":"myRunnableObjectId"\$1 | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | cancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio, "cascadeFailedOn":\$1"ref":"myRunnableObjectId"\$1 | 
| emrStepLog | I log dei passaggi sono disponibili solo per i tentativi di attività di Amazon EMR. | Stringa | 
| errorId | ID dell'errore se l'oggetto non è riuscito. | Stringa | 
| errorMessage | Messaggio di errore se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @failureReason | Il motivo dell'errore della risorsa. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | I log dei lavori Hadoop sono disponibili sui tentativi di attività di Amazon EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ Ora healthStatusUpdated | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per l'oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto. | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | La descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio  "waitingOn":\$1"ref":"myRunnableObjectId"\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'ID della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La posizione di un oggetto nel ciclo di vita. I Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# EmrCluster
<a name="dp-object-emrcluster"></a>

Rappresenta la configurazione di un cluster Amazon EMR. Questo oggetto viene utilizzato da [EmrActivity](dp-object-emractivity.md) e [HadoopActivity](dp-object-hadoopactivity.md) per avviare un cluster.

**Topics**
+ [Pianificatori](#emrcluster-schedulers)
+ [Versioni di rilascio di Amazon EMR](#dp-emrcluster-release-versions)
+ [Autorizzazioni Amazon EMR](#w2aac52c17b9c11)
+ [Sintassi](#emrcluster-syntax)
+ [Esempi](emrcluster-example.md)
+ [Vedi anche](#emrcluster-seealso)

## Pianificatori
<a name="emrcluster-schedulers"></a>

I pianificatori forniscono un modo per specificare l'allocazione di risorse e la prioritizzazione dei processi all'interno di un cluster Hadoop. Gli amministratori o gli utenti possono scegliere un pianificatore per diverse classi di utenti e applicazioni. Un pianificatore può usare le code per allocare risorse per utenti e applicazioni. È possibile configurare tali code quando si crea il cluster. È quindi possibile configurare priorità per determinati tipi di lavoro e utenti rispetto ad altri. In questo modo si ottiene un utilizzo efficiente delle risorse del cluster, consentendo a più utenti di inviare dati al cluster. Esistono tre tipi di pianificatori disponibili:
+ [FairScheduler](https://hadoop.apache.org/docs/stable/hadoop-yarn/hadoop-yarn-site/FairScheduler.html)— Tenta di pianificare le risorse in modo uniforme per un periodo di tempo significativo.
+ [CapacityScheduler](https://hadoop.apache.org/docs/stable/hadoop-yarn/hadoop-yarn-site/CapacityScheduler.html)— Utilizza le code per consentire agli amministratori del cluster di assegnare gli utenti a code con priorità e allocazione delle risorse diverse. 
+ Predefinito: utilizzato dal cluster, che può essere configurato dal sito.

## Versioni di rilascio di Amazon EMR
<a name="dp-emrcluster-release-versions"></a>

Un rilascio di Amazon EMR è un insieme di applicazioni open source dell'ecosistema di big data. Ogni versione comprende diverse applicazioni, componenti e funzionalità per i big data che scegli di installare e configurare Amazon EMR quando crei un cluster. È possibile specificare la versione di rilascio con l'etichetta del rilascio. Le etichette di rilascio sono sotto forma di `emr-x.x.x` Ad esempio, `emr-5.30.0`. I cluster Amazon EMR si basano sull'etichetta di rilascio `emr-4.0.0` e successivamente utilizzano la `releaseLabel` proprietà per specificare l'etichetta di rilascio di un oggetto. `EmrCluster` Le versioni precedenti utilizzano la proprietà `amiVersion`.

**Importante**  
Tutti i cluster Amazon EMR creati utilizzando la versione 5.22.0 o successiva utilizzano [Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) per autenticare le richieste verso Amazon S3. Alcune versioni di rilascio precedenti utilizzano Signature Version 2. Il supporto di Signature Version 2 è stato interrotto. Per ulteriori informazioni, consulta [Amazon S3 Update – SigV2 Deprecation Period Extended and Modified](https://aws.amazon.com/blogs/aws/amazon-s3-update-sigv2-deprecation-period-extended-modified/). Ti consigliamo vivamente di utilizzare una versione di Amazon EMR che supporti la versione 4 di Signature. Per i rilasci di versioni precedenti, a partire da EMR 4.7.x, la versione più recente della serie è stata aggiornata per supportare Signature Version 4. Quando si utilizza una versione precedente del rilascio EMR, si consiglia di utilizzare la versione più recente della serie. Inoltre, evitare versioni precedenti a EMR 4.7.0.

### Considerazioni e limitazioni
<a name="dp-emrcluster-considerations"></a>

#### Usa la versione più recente di Task Runner
<a name="dp-task-runner-latest"></a>

Se si utilizza un `EmrCluster` oggetto autogestito con un'etichetta di rilascio, utilizzare la versione più recente di Task Runner. Per ulteriori informazioni sui Task Runner, consulta [Lavorare con Task Runner](dp-using-task-runner.md). Puoi configurare i valori delle proprietà per tutte le classificazioni di configurazione di Amazon EMR. Per ulteriori informazioni, consulta [Configurazione delle applicazioni](https://docs.aws.amazon.com/ElasticMapReduce/latest/ReleaseGuide/emr-configure-apps.html) nella *Amazon EMR Release* Guide, [Proprietà](dp-object-property.md) e riferimenti [EmrConfiguration](dp-object-emrconfiguration.md) agli oggetti. 

#### Support per IMDSv2
<a name="dp-emr-imdsv2-support"></a>

In precedenza, AWS Data Pipeline supportata solo IMDSv1. Ora AWS Data Pipeline supporta IMDSv2 Amazon EMR 5.23.1, 5.27.1 e 5.32 o versioni successive e Amazon EMR 6.2 o versioni successive. IMDSv2 utilizza un metodo orientato alla sessione per gestire meglio l'autenticazione durante il recupero delle informazioni sui metadati dalle istanze. È necessario configurare le istanze per effettuare IMDSv2 chiamate creando risorse gestite dall'utente utilizzando -2.0. TaskRunner

#### Amazon EMR 5.32 o versione successiva e Amazon EMR 6.x
<a name="dp-emr-6-classpath"></a>

Le serie di release di Amazon EMR 5.32 o successive e 6.x utilizzano la versione 3.x di Hadoop, che ha introdotto importanti cambiamenti nel modo in cui viene valutato il classpath di Hadoop rispetto alla versione 2.x di Hadoop. Le librerie comuni come Joda-Time sono state rimosse dal classpath.

Se [EmrActivity](dp-object-emractivity.md) o [HadoopActivity](dp-object-hadoopactivity.md) esegue un file Jar che ha dipendenze da una libreria rimossa in Hadoop 3.x, il passaggio ha esito negativo e restituisce l'errore o. `java.lang.NoClassDefFoundError` `java.lang.ClassNotFoundException` Questo può accadere per i file Jar eseguiti senza problemi utilizzando le versioni di release di Amazon EMR 5.x.

Per risolvere il problema, devi copiare le dipendenze dei file Jar nel classpath di Hadoop su un `EmrCluster` oggetto prima di avviare o il. `EmrActivity` `HadoopActivity` Forniamo uno script bash per farlo. Lo script bash è disponibile nella seguente posizione, dove si trova *MyRegion* la AWS regione in cui viene eseguito l'`EmrCluster`oggetto, ad esempio. `us-west-2`

```
s3://datapipeline-MyRegion/MyRegion/bootstrap-actions/latest/TaskRunner/copy-jars-to-hadoop-classpath.sh
```

Il modo di eseguire lo script dipende dal fatto che venga `EmrActivity` `HadoopActivity` eseguito su una risorsa gestita da AWS Data Pipeline o su una risorsa autogestita.

Se utilizzi una risorsa gestita da AWS Data Pipeline, aggiungi un `bootstrapAction` all'`EmrCluster`oggetto. `bootstrapAction`specifica lo script e i file Jar da copiare come argomenti. È possibile aggiungere fino a 255 `bootstrapAction` campi per `EmrCluster` oggetto e aggiungere un `bootstrapAction` campo a un `EmrCluster` oggetto che dispone già di azioni bootstrap.

Per specificare questo script come azione di bootstrap, usa la seguente sintassi, dove si trova la regione in cui `JarFileRegion` viene salvato il file Jar e ognuna *MyJarFile*n** è il percorso assoluto in Amazon S3 di un file Jar da copiare nel classpath Hadoop. Non specificate i file Jar che si trovano nel classpath Hadoop per impostazione predefinita.

```
s3://datapipeline-MyRegion/MyRegion/bootstrap-actions/latest/TaskRunner/copy-jars-to-hadoop-classpath.sh,JarFileRegion,MyJarFile1,MyJarFile2[, ...]
```

L'esempio seguente specifica un'azione di bootstrap che copia due file Jar in Amazon S3`my-jar-file.jar`: e il. `emr-dynamodb-tool-4.14.0-jar-with-dependencies.jar` La regione utilizzata nell'esempio è us-west-2.

```
{
  "id" : "MyEmrCluster",
  "type" : "EmrCluster",
  "keyPair" : "my-key-pair",
  "masterInstanceType" : "m5.xlarge",
  "coreInstanceType" : "m5.xlarge",
  "coreInstanceCount" : "2",
  "taskInstanceType" : "m5.xlarge",
  "taskInstanceCount": "2",
  "bootstrapAction" : ["s3://datapipeline-us-west-2/us-west-2/bootstrap-actions/latest/TaskRunner/copy-jars-to-hadoop-classpath.sh,us-west-2,s3://path/to/my-jar-file.jar,s3://dynamodb-dpl-us-west-2/emr-ddb-storage-handler/4.14.0/emr-dynamodb-tools-4.14.0-jar-with-dependencies.jar"]
}
```

È necessario salvare e attivare la pipeline affinché la modifica `bootstrapAction` alla nuova abbia effetto.

Se si utilizza una risorsa autogestita, è possibile scaricare lo script nell'istanza del cluster ed eseguirlo dalla riga di comando utilizzando SSH. Lo script crea una directory denominata `/etc/hadoop/conf/shellprofile.d` e un file denominato `datapipeline-jars.sh` in quella directory. I file jar forniti come argomenti della riga di comando vengono copiati in una directory denominata creata dallo script. `/home/hadoop/datapipeline_jars` Se il cluster è configurato in modo diverso, modifica lo script in modo appropriato dopo averlo scaricato.

La sintassi per eseguire lo script sulla riga di comando è leggermente diversa da quella `bootstrapAction` mostrata nell'esempio precedente. Utilizzate gli spazi anziché le virgole tra gli argomenti, come illustrato nell'esempio seguente.

```
./copy-jars-to-hadoop-classpath.sh us-west-2 s3://path/to/my-jar-file.jar s3://dynamodb-dpl-us-west-2/emr-ddb-storage-handler/4.14.0/emr-dynamodb-tools-4.14.0-jar-with-dependencies.jar
```

## Autorizzazioni Amazon EMR
<a name="w2aac52c17b9c11"></a>

Quando crei un ruolo IAM personalizzato, valuta attentamente le autorizzazioni minime necessarie al cluster per svolgere il suo lavoro. Assicurati di concedere l'accesso alle risorse richieste, come i file in Amazon S3 o i dati in Amazon RDS, Amazon Redshift o DynamoDB. Se si desidera impostare `visibleToAllUsers` su False, il ruolo deve disporre delle autorizzazioni appropriate. Si noti che `DataPipelineDefaultRole` non dispone di tali autorizzazioni. È necessario fornire un'unione dei `DataPipelineDefaultRole` ruoli `DefaultDataPipelineResourceRole` and come ruolo `EmrCluster` oggetto oppure creare un ruolo personalizzato per questo scopo.

## Sintassi
<a name="emrcluster-syntax"></a>


****  

| Campi Object Invocation | Description | Tipo di slot | 
| --- | --- | --- | 
| schedule | Questo oggetto viene richiamato entro l'esecuzione di un intervallo di pianificazione. Specificare un riferimento alla pianificazione di un altro oggetto per impostare l'ordine di esecuzione delle dipendenze per questo oggetto. È possibile soddisfare questo requisito impostando esplicitamente una pianificazione sull'oggetto, ad esempio, specificando "schedule": \$1"ref": "DefaultSchedule"\$1. Nella maggior parte dei casi, è meglio inserire il riferimento alla pianificazione nell'oggetto pipeline di default, in modo che tutti gli oggetti possano ereditare tale pianificazione. O, se la pipeline consiste di una struttura di pianificazioni (nidificate all'interno della pianificazione principale), è possibile creare un oggetto padre che dispone di un riferimento alla pianificazione. Per ulteriori informazioni sulle configurazioni di pianificazione opzionali di esempio, consulta [https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html](https://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-schedule.html) | Oggetto di riferimento, ad esempio  "schedule":\$1"ref":"myScheduleId"\$1 | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| actionOnResourceFallimento | L'operazione intrapresa dopo il fallimento di una risorsa per questa risorsa. I valori validi sono"retryall", che ritenta tutte le attività per il cluster per la durata specificata, e "retrynone". | Stringa | 
| actionOnTaskFallimento | L'operazione intrapresa dopo il fallimento dell'attività per questa risorsa. I valori validi sono "continue", ossia non terminare il cluster, e "terminate". | Stringa | 
| additionalMasterSecurityGroupIds | L'identificatore dei gruppi di sicurezza principali aggiuntivi del cluster EMR, che segue il modulo sg-01. XXXX6a Per ulteriori informazioni, consulta [Amazon EMR Additional Security Groups](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-additional-sec-groups.html) nella Amazon EMR Management Guide. | Stringa | 
| additionalSlaveSecurityGroupIds | Identificatore di gruppi di sicurezza slave aggiuntivi del cluster EMR, che segue il modulo sg-01XXXX6a. | Stringa | 
| amiVersion | La versione di Amazon Machine Image (AMI) utilizzata da Amazon EMR per installare i nodi del cluster. Per ulteriori informazioni, consulta la [Guida alla gestione di Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/). | Stringa | 
| applications | Applicazioni da installare nel cluster con argomenti separati da virgole. Hive e Pig vengono installati per impostazione predefinita. Questo parametro è applicabile solo per Amazon EMR versione 4.0 e successive. | Stringa | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| availabilityZone | La zona di disponibilità in cui eseguire il cluster. | Stringa | 
| bootstrapAction | Un'operazione da eseguire all'avvio del cluster. Puoi specificare argomenti separati da virgole. Per specificare più operazioni, fino a 255, aggiungere più campi bootstrapAction. Il comportamento predefinito è avviare il cluster senza operazioni di bootstrap. | Stringa | 
| configurazione | Configurazione per il cluster Amazon EMR. Questo parametro è applicabile solo per Amazon EMR versione 4.0 e successive. | Oggetto di riferimento, ad esempio, "configuration":\$1"ref":"myEmrConfigurationId"\$1 | 
| coreInstanceBidPrezzo | Il prezzo Spot massimo che sei disposto a pagare per le istanze Amazon EC2. Se viene specificato un prezzo di offerta, Amazon EMR utilizza le istanze Spot per il gruppo di istanze. Il prezzo è specificato in USD. | Stringa | 
| coreInstanceCount | Numero di nodi principali da utilizzare per il cluster. | Numero intero | 
| coreInstanceType | Il tipo di istanza Amazon EC2 da utilizzare per i nodi principali. Per informazioni, consultare [Istanze Amazon EC2 supportate per cluster Amazon EMR](dp-emr-supported-instance-types.md). | Stringa | 
| coreGroupConfiguration | La configurazione per il gruppo di istanze principali del cluster Amazon EMR. Questo parametro è applicabile solo per Amazon EMR versione 4.0 e successive. | Oggetto di riferimento, ad esempio “configuration”: \$1“ref”: “myEmrConfigurationId”\$1 | 
| coreEbsConfiguration | La configurazione per i volumi Amazon EBS che verranno collegati a ciascuno dei nodi principali del gruppo principale del cluster Amazon EMR. Per ulteriori informazioni, consulta [Tipi di istanze che supportano l'ottimizzazione di EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html) nella Guida per l'utente di Amazon EC2. | Oggetto di riferimento, ad esempio “coreEbsConfiguration”: \$1“ref”: “myEbsConfiguration”\$1 | 
| customAmiId | Si applica solo alla versione 5.7.0 e successive di Amazon EMR. Speciifica l'ID AMI di un'AMI personalizzata da utilizzare quando Amazon EMR effettua il provisioning delle istanze Amazon EC2. Può anche essere usato al posto delle azioni di bootstrap per personalizzare le configurazioni dei nodi del cluster. Per ulteriori informazioni, consulta il seguente argomento nella Amazon EMR Management Guide. [Utilizzo di un’AMI personalizzata](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-custom-ami.html) | Stringa | 
| EbsBlockDeviceConfig |  La configurazione di un dispositivo a blocchi Amazon EBS richiesto associato al gruppo di istanze. Include un numero specificato di volumi che saranno associati a ogni istanza presente nel gruppo di istanze. Include `volumesPerInstance` e `volumeSpecification`, dove:  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/datapipeline/latest/DeveloperGuide/dp-object-emrcluster.html)  | Oggetto di riferimento, ad esempio “EbsBlockDeviceConfig”: \$1“ref”: “myEbsBlockDeviceConfig”\$1 | 
| emrManagedMasterSecurityGroupId | L'identificatore del gruppo di sicurezza principale del cluster Amazon EMR, che segue la forma di. sg-01XXXX6a Per ulteriori informazioni, consulta [Configure Security Groups](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-security-groups.html) nella Amazon EMR Management Guide. | Stringa | 
| emrManagedSlaveSecurityGroupId | L'identificatore del gruppo di sicurezza slave del cluster Amazon EMR, che segue il modulo. sg-01XXXX6a | Stringa | 
| enableDebugging | Abilita il debug sul cluster Amazon EMR. | Stringa | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite. | Enumerazione | 
| hadoopSchedulerType | Il tipo di pianificatore del cluster. I tipi validi sono:  PARALLEL\$1FAIR\$1SCHEDULING,  PARALLEL\$1CAPACITY\$1SCHEDULING e  DEFAULT\$1SCHEDULER. | Enumerazione | 
| httpProxy | Host proxy che i clienti utilizzano per connettersi ai servizi AWS. | Oggetto di riferimento, ad esempio «HttpProxy»: \$1"ref»:» myHttpProxy Id "\$1 | 
| initTimeout | Il tempo di attesa prima dell'avvio della risorsa.  | Periodo | 
| keyPair | La coppia di chiavi Amazon EC2 da utilizzare per accedere al nodo master del cluster Amazon EMR. | Stringa | 
| lateAfterTimeout | Il tempo trascorso dopo l'avvio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| masterInstanceBidPrezzo | Il prezzo Spot massimo che sei disposto a pagare per le istanze Amazon EC2. Si tratta di un valore decimale compreso tra 0 e 20,00, esclusi. Il prezzo è specificato in USD. L'impostazione di questo valore abilita le istanze Spot per il nodo master del cluster Amazon EMR. Se viene specificato un prezzo di offerta, Amazon EMR utilizza le istanze Spot per il gruppo di istanze. | Stringa | 
| masterInstanceType | Il tipo di istanza Amazon EC2 da utilizzare per il nodo master. Per informazioni, consultare [Istanze Amazon EC2 supportate per cluster Amazon EMR](dp-emr-supported-instance-types.md). | Stringa | 
| masterGroupConfiguration | La configurazione per il gruppo di istanze master del cluster Amazon EMR. Questo parametro è applicabile solo per Amazon EMR versione 4.0 e successive. | Oggetto di riferimento, ad esempio “configuration”: \$1“ref”: “myEmrConfigurationId”\$1 | 
| masterEbsConfiguration | La configurazione per i volumi Amazon EBS che verranno collegati a ciascuno dei nodi master del gruppo principale nel cluster Amazon EMR. Per ulteriori informazioni, consulta [Tipi di istanze che supportano l'ottimizzazione di EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html) nella Guida per l'utente di Amazon EC2. | Oggetto di riferimento, ad esempio “masterEbsConfiguration”: \$1“ref”: “myEbsConfiguration”\$1 | 
| maxActiveInstances | Il numero massimo di istanze attive simultanee di un componente. Le riesecuzioni non contano ai fini del numero di istanze attive. | Numero intero | 
| maximumRetries | Numero massimo di tentativi in caso di errore. | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio, "onFail":\$1"ref":"myActionId"\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio, "onLateAction":\$1"ref":"myActionId"\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio, "onSuccess":\$1"ref":"myActionId"\$1 | 
| parent | Padre dell'oggetto corrente da cui vengono ereditati gli slot. | Oggetto di riferimento, ad esempio. "parent":\$1"ref":"myBaseObjectId"\$1 | 
| pipelineLogUri | L'URI di Amazon S3 (ad esempio 's3://BucketName/Key/ ') per caricare i log per la pipeline. | Stringa | 
| region | Il codice per la regione in cui deve essere eseguito il cluster Amazon EMR. Per impostazione predefinita, il cluster viene eseguito nella stessa regione della pipeline. È possibile eseguire il cluster nella stessa regione del set di dati dipendenti.  | Enumerazione | 
| releaseLabel | Etichetta release per il cluster EMR. | Stringa | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| resourceRole | Il ruolo IAM AWS Data Pipeline utilizzato per creare il cluster Amazon EMR. Il ruolo predefinito è DataPipelineDefaultRole.  | Stringa | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| role | Il ruolo IAM è passato ad Amazon EMR per creare nodi EC2. | Stringa | 
| runsOn | Campo non consentito su questo oggetto. | Oggetto di riferimento, ad esempio, "runsOn":\$1"ref":"myResourceId"\$1 | 
| Configurazione di sicurezza | L'identificatore della configurazione di sicurezza EMR che verrà applicata al cluster. Questo parametro è applicabile solo per Amazon EMR versione 4.8.0 e successive. | Stringa | 
| serviceAccessSecurityGroupId | L'identificatore per il gruppo di sicurezza dell'accesso al servizio del cluster Amazon EMR.  | Stringa. Segue la forma sg-01XXXX6a, ad esempio, sg-1234abcd. | 
| scheduleType | Il tipo di pianificazione consente di specificare se gli oggetti nella definizione di pipeline devono essere programmati all'inizio o alla fine dell'intervallo. I valori sono cron, ondemand e timeseries. La pianificazione timeseries significa che le istanze sono programmate al termine di ogni intervallo. La pianificazione cron significa che le istanze sono programmate all'inizio di ogni intervallo. Una pianificazione ondemandconsente di eseguire una pipeline una sola volta, per attivazione. Non è necessario clonare o ricreare la pipeline per eseguirla di nuovo. Se utilizzi una pianificazione ondemand, devi specificarlo nell'oggetto predefinito e deve essere l'unico scheduleType specificato per gli oggetti della pipeline. Per utilizzare le pipeline ondemand, chiama l'operazione ActivatePipeline per ogni esecuzione successiva. | Enumerazione | 
| subnetId | L'identificatore della sottorete in cui avviare il cluster Amazon EMR. | Stringa | 
| supportedProducts | Un parametro che installa software di terze parti su un cluster Amazon EMR, ad esempio una distribuzione di terze parti di Hadoop. | Stringa | 
| taskInstanceBidPrezzo | Il prezzo Spot massimo che sei disposto a pagare per le istanze EC2. Un valore decimale compreso tra 0 e 20,00, esclusi. Il prezzo è specificato in USD. Se viene specificato un prezzo di offerta, Amazon EMR utilizza le istanze Spot per il gruppo di istanze. | Stringa | 
| taskInstanceCount | Il numero di nodi di attività da utilizzare per il cluster Amazon EMR. | Numero intero | 
| taskInstanceType | Il tipo di istanza Amazon EC2 da utilizzare per i nodi di attività. | Stringa | 
| taskGroupConfiguration | La configurazione per il gruppo di attività del cluster Amazon EMR. Questo parametro è applicabile solo per Amazon EMR versione 4.0 e successive.  | Oggetto di riferimento, ad esempio “configuration”: \$1“ref”: “myEmrConfigurationId”\$1 | 
| taskEbsConfiguration | La configurazione per i volumi Amazon EBS che verranno collegati a ciascuno dei nodi di attività del gruppo di attività nel cluster Amazon EMR. Per ulteriori informazioni, consulta [Tipi di istanze che supportano l'ottimizzazione di EBS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html) nella Guida per l'utente di Amazon EC2. | Oggetto di riferimento, ad esempio “taskEbsConfiguration”: \$1“ref”: “myEbsConfiguration”\$1 | 
| terminateAfter | Termina la risorsa dopo queste numerose ore. | Numero intero | 
| VolumeSpecification |   Le specifiche del volume di Amazon EBS, come tipo di volume, IOPS e dimensione in Gigibyte (GiB), che verranno richieste per il volume Amazon EBS collegato a un'istanza Amazon EC2 nel cluster Amazon EMR. Il nodo può essere principale, master o di task.  `VolumeSpecification` include: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/it_it/datapipeline/latest/DeveloperGuide/dp-object-emrcluster.html)  | Oggetto di riferimento, ad esempio “VolumeSpecification”: \$1“ref”: “myVolumeSpecification”\$1 | 
| useOnDemandOnLastAttempt | Nell'ultimo tentativo di richiesta di una risorsa, effettuare una richiesta per istanze on demand invece che per istanze Spot. In questo modo, se tutti i tentativi precedenti non sono andati a buon fine, l'ultimo tentativo non viene interrotto.  | Booleano | 
| workerGroup | Campo non consentito su questo oggetto. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | I log dei passaggi sono disponibili solo per i tentativi di attività di Amazon EMR. | Stringa | 
| errorId | ID dell'errore se l'oggetto non è riuscito. | Stringa | 
| errorMessage | Messaggio di errore se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| @failureReason | Il motivo dell'errore della risorsa. | Stringa | 
| @finishedTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| hadoopJobLog | I log dei lavori Hadoop sono disponibili sui tentativi di attività di Amazon EMR. | Stringa | 
| @healthStatus | Lo stato di integrità dell'oggetto che riflette l'esito positivo o negativo dell'ultima istanza dell'oggetto che ha raggiunto lo stato di un'istanza terminata. | Stringa | 
| @healthStatusFromInstanceId | Id dell'ultimo oggetto dell'istanza che ha raggiunto lo stato terminato. | Stringa | 
| @ Ora healthStatusUpdated | L'ora in cui lo stato di integrità è stato aggiornato l'ultima volta. | DateTime | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| @lastDeactivatedTime | L'ora in cui l'oggetto è stato disattivato. | DateTime | 
| @ latestCompletedRun Ora | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata completata. | DateTime | 
| @latestRunTime | L'orario dell'esecuzione più recente durante il quale l'esecuzione è stata pianificata. | DateTime | 
| @nextRunTime | L'orario dell'esecuzione da programmare come successiva. | DateTime | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto. | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | La descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'ID della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La posizione di un oggetto nel ciclo di vita. I Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# Esempi
<a name="emrcluster-example"></a>

I seguenti sono esempi di questo tipo di oggetto.

**Topics**
+ [Avvia un cluster Amazon EMR con HadoopVersion](emrcluster-example-launch.md)
+ [Avvia un cluster Amazon EMR con etichetta di rilascio emr-4.x o successiva](emrcluster-example-release-label.md)
+ [Installa software aggiuntivo sul tuo cluster Amazon EMR](emrcluster-example-install-software.md)
+ [Disabilitare la crittografia lato server sulle versioni 3.x](emrcluster-example1-disable-encryption.md)
+ [Disabilitare la crittografia lato server sulle versioni 4.x](emrcluster-example2-disable-encryption.md)
+ [Configura Hadoop KMS e crea zone di crittografia in HDFS ACLs](emrcluster-example-hadoop-kms.md)
+ [Specificare ruoli IAM personalizzati](emrcluster-example-custom-iam-roles.md)
+ [Usa EmrCluster la risorsa nell'SDK AWS per Java](emrcluster-example-java.md)
+ [Configurare un cluster Amazon EMR in una sottorete privata](emrcluster-example-private-subnet.md)
+ [Collegare i volumi EBS ai nodi del cluster](emrcluster-example-ebs.md)

# Avvia un cluster Amazon EMR con HadoopVersion
<a name="emrcluster-example-launch"></a>

**Example**  <a name="example1"></a>
L'esempio seguente avvia un cluster Amazon EMR utilizzando AMI versione 1.0 e Hadoop 0.20.  

```
{
  "id" : "MyEmrCluster",
  "type" : "EmrCluster",
  "hadoopVersion" : "0.20",
  "keyPair" : "my-key-pair",
  "masterInstanceType" : "m3.xlarge",
  "coreInstanceType" : "m3.xlarge",
  "coreInstanceCount" : "10",
  "taskInstanceType" : "m3.xlarge",
  "taskInstanceCount": "10",
  "bootstrapAction" : ["s3://Region.elasticmapreduce/bootstrap-actions/configure-hadoop,arg1,arg2,arg3","s3://Region.elasticmapreduce/bootstrap-actions/configure-hadoop/configure-other-stuff,arg1,arg2"]
}
```

# Avvia un cluster Amazon EMR con etichetta di rilascio emr-4.x o successiva
<a name="emrcluster-example-release-label"></a>

**Example**  
L'esempio seguente avvia un cluster Amazon EMR utilizzando il `releaseLabel` campo più recente:  

```
{
  "id" : "MyEmrCluster",
  "type" : "EmrCluster",
  "keyPair" : "my-key-pair",
  "masterInstanceType" : "m3.xlarge",
  "coreInstanceType" : "m3.xlarge",
  "coreInstanceCount" : "10",
  "taskInstanceType" : "m3.xlarge",
  "taskInstanceCount": "10",
  "releaseLabel": "emr-4.1.0",
  "applications": ["spark", "hive", "pig"],
  "configuration": {"ref":"myConfiguration"}  
}
```

# Installa software aggiuntivo sul tuo cluster Amazon EMR
<a name="emrcluster-example-install-software"></a>

**Example**  <a name="example2"></a>
`EmrCluster`fornisce il `supportedProducts` campo che installa software di terze parti su un cluster Amazon EMR, ad esempio consente di installare una distribuzione personalizzata di Hadoop, come MapR. Accetta un elenco separato da virgole di argomenti per il software di terze parti da leggere e in base al quale agire. L'esempio seguente mostra come usare il campo `supportedProducts` di `EmrCluster` per creare un cluster personalizzato edizione MapR M3 con Karmasphere Analytics installato ed eseguire un oggetto `EmrActivity` su di esso.  

```
{
    "id": "MyEmrActivity",
    "type": "EmrActivity",
    "schedule": {"ref": "ResourcePeriod"},
    "runsOn": {"ref": "MyEmrCluster"},
    "postStepCommand": "echo Ending job >> /mnt/var/log/stepCommand.txt",    
    "preStepCommand": "echo Starting job > /mnt/var/log/stepCommand.txt",
    "step": "/home/hadoop/contrib/streaming/hadoop-streaming.jar,-input,s3n://elasticmapreduce/samples/wordcount/input,-output, \
     hdfs:///output32113/,-mapper,s3n://elasticmapreduce/samples/wordcount/wordSplitter.py,-reducer,aggregate"
  },
  {    
    "id": "MyEmrCluster",
    "type": "EmrCluster",
    "schedule": {"ref": "ResourcePeriod"},
    "supportedProducts": ["mapr,--edition,m3,--version,1.2,--key1,value1","karmasphere-enterprise-utility"],
    "masterInstanceType": "m3.xlarge",
    "taskInstanceType": "m3.xlarge"
}
```

# Disabilitare la crittografia lato server sulle versioni 3.x
<a name="emrcluster-example1-disable-encryption"></a>

**Example**  <a name="example3"></a>
Un'`EmrCluster`attività con una versione Hadoop 2.x creata da abilita la crittografia lato server per impostazione predefinita. AWS Data Pipeline Se si desidera disattivare la crittografia lato server, è necessario specificare un'operazione di bootstrap nella definizione di un oggetto del cluster.  
L'esempio seguente crea un'attività `EmrCluster` con la crittografia lato server disabilitata:  

```
{  
   "id":"NoSSEEmrCluster",
   "type":"EmrCluster",
   "hadoopVersion":"2.x",
   "keyPair":"my-key-pair",
   "masterInstanceType":"m3.xlarge",
   "coreInstanceType":"m3.large",
   "coreInstanceCount":"10",
   "taskInstanceType":"m3.large",
   "taskInstanceCount":"10",
   "bootstrapAction":["s3://Region.elasticmapreduce/bootstrap-actions/configure-hadoop,-e, fs.s3.enableServerSideEncryption=false"]
}
```

# Disabilitare la crittografia lato server sulle versioni 4.x
<a name="emrcluster-example2-disable-encryption"></a>

**Example**  <a name="example4"></a>
È necessario disabilitare la crittografia lato server utilizzando un oggetto `EmrConfiguration`.  
L'esempio seguente crea un'attività `EmrCluster` con la crittografia lato server disabilitata:  

```
   {
      "name": "ReleaseLabelCluster",
      "releaseLabel": "emr-4.1.0",
      "applications": ["spark", "hive", "pig"],
      "id": "myResourceId",
      "type": "EmrCluster",
      "configuration": {
        "ref": "disableSSE"
      }
    },
    {
      "name": "disableSSE",
      "id": "disableSSE",
      "type": "EmrConfiguration",
      "classification": "emrfs-site",
      "property": [{
        "ref": "enableServerSideEncryption"
      }
      ]
    },
    {
      "name": "enableServerSideEncryption",
      "id": "enableServerSideEncryption",
      "type": "Property",
      "key": "fs.s3.enableServerSideEncryption",
      "value": "false"
    }
```

# Configura Hadoop KMS e crea zone di crittografia in HDFS ACLs
<a name="emrcluster-example-hadoop-kms"></a>

**Example**  <a name="example5"></a>
I seguenti oggetti vengono creati ACLs per Hadoop KMS e creano zone di crittografia e chiavi di crittografia corrispondenti in HDFS:  

```
{
      "name": "kmsAcls",
      "id": "kmsAcls",
      "type": "EmrConfiguration",
      "classification": "hadoop-kms-acls",
      "property": [
        {"ref":"kmsBlacklist"},
        {"ref":"kmsAcl"}
      ]
    },
    {
      "name": "hdfsEncryptionZone",
      "id": "hdfsEncryptionZone",
      "type": "EmrConfiguration",
      "classification": "hdfs-encryption-zones",
      "property": [
        {"ref":"hdfsPath1"},
        {"ref":"hdfsPath2"}
      ]
    },
    {
      "name": "kmsBlacklist",
      "id": "kmsBlacklist",
      "type": "Property",
      "key": "hadoop.kms.blacklist.CREATE",
      "value": "foo,myBannedUser"
    },
    {
      "name": "kmsAcl",
      "id": "kmsAcl",
      "type": "Property",
      "key": "hadoop.kms.acl.ROLLOVER",
      "value": "myAllowedUser"
    },
    {
      "name": "hdfsPath1",
      "id": "hdfsPath1",
      "type": "Property",
      "key": "/myHDFSPath1",
      "value": "path1_key"
    },
    {
      "name": "hdfsPath2",
      "id": "hdfsPath2",
      "type": "Property",
      "key": "/myHDFSPath2",
      "value": "path2_key"
    }
```

# Specificare ruoli IAM personalizzati
<a name="emrcluster-example-custom-iam-roles"></a>

**Example**  <a name="example6"></a>
Per impostazione predefinita, AWS Data Pipeline passa `DataPipelineDefaultRole` come ruolo del servizio Amazon EMR e `DataPipelineDefaultResourceRole` come profilo dell'istanza Amazon EC2 per creare risorse per tuo conto. Tuttavia, puoi creare un ruolo di servizio Amazon EMR personalizzato e un profilo di istanza personalizzato e utilizzarli al loro posto. AWS Data Pipeline deve disporre di autorizzazioni sufficienti per creare cluster utilizzando il ruolo personalizzato e deve essere aggiunto AWS Data Pipeline come entità attendibile.  
L'oggetto di esempio seguente specifica i ruoli personalizzati per il cluster Amazon EMR:  

```
{  
   "id":"MyEmrCluster",
   "type":"EmrCluster",
   "hadoopVersion":"2.x",
   "keyPair":"my-key-pair",
   "masterInstanceType":"m3.xlarge",
   "coreInstanceType":"m3.large",
   "coreInstanceCount":"10",
   "taskInstanceType":"m3.large",
   "taskInstanceCount":"10",
   "role":"emrServiceRole",
   "resourceRole":"emrInstanceProfile"
}
```

# Usa EmrCluster la risorsa nell'SDK AWS per Java
<a name="emrcluster-example-java"></a>

**Example**  <a name="example7"></a>
L'esempio seguente mostra come utilizzare un `EmrCluster` e `EmrActivity` creare un cluster Amazon EMR 4.x per eseguire una fase Spark utilizzando Java SDK:  

```
public class dataPipelineEmr4 {

  public static void main(String[] args) {
    
	AWSCredentials credentials = null;
	credentials = new ProfileCredentialsProvider("/path/to/AwsCredentials.properties","default").getCredentials();
	DataPipelineClient dp = new DataPipelineClient(credentials);
	CreatePipelineRequest createPipeline = new CreatePipelineRequest().withName("EMR4SDK").withUniqueId("unique");
	CreatePipelineResult createPipelineResult = dp.createPipeline(createPipeline);
	String pipelineId = createPipelineResult.getPipelineId();
    
	PipelineObject emrCluster = new PipelineObject()
	    .withName("EmrClusterObj")
	    .withId("EmrClusterObj")
	    .withFields(
			new Field().withKey("releaseLabel").withStringValue("emr-4.1.0"),
			new Field().withKey("coreInstanceCount").withStringValue("3"),
			new Field().withKey("applications").withStringValue("spark"),
			new Field().withKey("applications").withStringValue("Presto-Sandbox"),
			new Field().withKey("type").withStringValue("EmrCluster"),
			new Field().withKey("keyPair").withStringValue("myKeyName"),
			new Field().withKey("masterInstanceType").withStringValue("m3.xlarge"),
			new Field().withKey("coreInstanceType").withStringValue("m3.xlarge")        
			);
  
	PipelineObject emrActivity = new PipelineObject()
	    .withName("EmrActivityObj")
	    .withId("EmrActivityObj")
	    .withFields(
			new Field().withKey("step").withStringValue("command-runner.jar,spark-submit,--executor-memory,1g,--class,org.apache.spark.examples.SparkPi,/usr/lib/spark/lib/spark-examples.jar,10"),
			new Field().withKey("runsOn").withRefValue("EmrClusterObj"),
			new Field().withKey("type").withStringValue("EmrActivity")
			);
      
	PipelineObject schedule = new PipelineObject()
	    .withName("Every 15 Minutes")
	    .withId("DefaultSchedule")
	    .withFields(
			new Field().withKey("type").withStringValue("Schedule"),
			new Field().withKey("period").withStringValue("15 Minutes"),
			new Field().withKey("startAt").withStringValue("FIRST_ACTIVATION_DATE_TIME")
			);
      
	PipelineObject defaultObject = new PipelineObject()
	    .withName("Default")
	    .withId("Default")
	    .withFields(
			new Field().withKey("failureAndRerunMode").withStringValue("CASCADE"),
			new Field().withKey("schedule").withRefValue("DefaultSchedule"),
			new Field().withKey("resourceRole").withStringValue("DataPipelineDefaultResourceRole"),
			new Field().withKey("role").withStringValue("DataPipelineDefaultRole"),
			new Field().withKey("pipelineLogUri").withStringValue("s3://myLogUri"),
			new Field().withKey("scheduleType").withStringValue("cron")
			);     
      
	List<PipelineObject> pipelineObjects = new ArrayList<PipelineObject>();
    
	pipelineObjects.add(emrActivity);
	pipelineObjects.add(emrCluster);
	pipelineObjects.add(defaultObject);
	pipelineObjects.add(schedule);
    
	PutPipelineDefinitionRequest putPipelineDefintion = new PutPipelineDefinitionRequest()
	    .withPipelineId(pipelineId)
	    .withPipelineObjects(pipelineObjects);
    
	PutPipelineDefinitionResult putPipelineResult = dp.putPipelineDefinition(putPipelineDefintion);
	System.out.println(putPipelineResult);
    
	ActivatePipelineRequest activatePipelineReq = new ActivatePipelineRequest()
	    .withPipelineId(pipelineId);
	ActivatePipelineResult activatePipelineRes = dp.activatePipeline(activatePipelineReq);
	
      System.out.println(activatePipelineRes);
      System.out.println(pipelineId);
    
    }

}
```

# Configurare un cluster Amazon EMR in una sottorete privata
<a name="emrcluster-example-private-subnet"></a>

**Example**  <a name="example8"></a>
Questo esempio include una configurazione che avvia il cluster in una sottorete privata in un VPC. Per ulteriori informazioni, consulta [Launch Amazon EMR Clusters in un VPC](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-vpc-launching-job-flows.html) nella *Amazon* EMR Management Guide. Questa configurazione è opzionale. È possibile utilizzarla in qualsiasi pipeline che utilizza un oggetto `EmrCluster`.  
Per avviare un cluster Amazon EMR in una sottorete privata, specifica `SubnetId` «,» e `serviceAccessSecurityGroupId` nella `emrManagedSlaveSecurityGroupId` tua configurazione. `emrManagedMasterSecurityGroupId` `EmrCluster`  

```
{
  "objects": [
    {
      "output": {
        "ref": "S3BackupLocation"
      },
      "input": {
        "ref": "DDBSourceTable"
      },
      "maximumRetries": "2",
      "name": "TableBackupActivity",
      "step": "s3://dynamodb-emr-#{myDDBRegion}/emr-ddb-storage-handler/2.1.0/emr-ddb-2.1.0.jar,org.apache.hadoop.dynamodb.tools.DynamoDbExport,#{output.directoryPath},#{input.tableName},#{input.readThroughputPercent}",
      "id": "TableBackupActivity",
      "runsOn": {
        "ref": "EmrClusterForBackup"
      },
      "type": "EmrActivity",
      "resizeClusterBeforeRunning": "false"
    },
    {
      "readThroughputPercent": "#{myDDBReadThroughputRatio}",
      "name": "DDBSourceTable",
      "id": "DDBSourceTable",
      "type": "DynamoDBDataNode",
      "tableName": "#{myDDBTableName}"
    },
    {
      "directoryPath": "#{myOutputS3Loc}/#{format(@scheduledStartTime, 'YYYY-MM-dd-HH-mm-ss')}",
      "name": "S3BackupLocation",
      "id": "S3BackupLocation",
      "type": "S3DataNode"
    },
    {
      "name": "EmrClusterForBackup",
      "coreInstanceCount": "1",
      "taskInstanceCount": "1",
      "taskInstanceType": "m4.xlarge",
      "coreInstanceType": "m4.xlarge",
      "releaseLabel": "emr-4.7.0",
      "masterInstanceType": "m4.xlarge",
      "id": "EmrClusterForBackup",
      "subnetId": "#{mySubnetId}",
      "emrManagedMasterSecurityGroupId": "#{myMasterSecurityGroup}",
      "emrManagedSlaveSecurityGroupId": "#{mySlaveSecurityGroup}",
      "serviceAccessSecurityGroupId": "#{myServiceAccessSecurityGroup}",
      "region": "#{myDDBRegion}",
      "type": "EmrCluster",
      "keyPair": "user-key-pair"
    },
    {
      "failureAndRerunMode": "CASCADE",
      "resourceRole": "DataPipelineDefaultResourceRole",
      "role": "DataPipelineDefaultRole",
      "pipelineLogUri": "#{myPipelineLogUri}",
      "scheduleType": "ONDEMAND",
      "name": "Default",
      "id": "Default"
    }
  ],
  "parameters": [
    {
      "description": "Output S3 folder",
      "id": "myOutputS3Loc",
      "type": "AWS::S3::ObjectKey"
    },
    {
      "description": "Source DynamoDB table name",
      "id": "myDDBTableName",
      "type": "String"
    },
    {
      "default": "0.25",
      "watermark": "Enter value between 0.1-1.0",
      "description": "DynamoDB read throughput ratio",
      "id": "myDDBReadThroughputRatio",
      "type": "Double"
    },
    {
      "default": "us-east-1",
      "watermark": "us-east-1",
      "description": "Region of the DynamoDB table",
      "id": "myDDBRegion",
      "type": "String"
    }
  ],
  "values": {
     "myDDBRegion": "us-east-1",
      "myDDBTableName": "ddb_table",
      "myDDBReadThroughputRatio": "0.25",
      "myOutputS3Loc": "s3://s3_path",
      "mySubnetId": "subnet_id",
      "myServiceAccessSecurityGroup":  "service access security group",
      "mySlaveSecurityGroup": "slave security group",
      "myMasterSecurityGroup": "master security group",
      "myPipelineLogUri": "s3://s3_path"
  }
}
```

# Collegare i volumi EBS ai nodi del cluster
<a name="emrcluster-example-ebs"></a>

**Example**  <a name="example8"></a>
È possibile allegare i volumi EBS a qualsiasi tipo di nodo nel cluster EMR all'interno della pipeline. Per allegare volumi EBS ai nodi, utilizzare `coreEbsConfiguration`, `masterEbsConfiguration` e `TaskEbsConfiguration` nella configurazione `EmrCluster`.   
Questo esempio di cluster Amazon EMR utilizza i volumi Amazon EBS per i nodi master, task e core. Per ulteriori informazioni, consulta [i volumi Amazon EBS in Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-storage.html) nella Amazon EMR *Management Guide.*  
Queste configurazioni sono opzionali. È possibile utilizzarle in qualsiasi pipeline che utilizza un oggetto `EmrCluster`.  
Nella pipeline, fare clic sulla configurazione dell'oggetto `EmrCluster`, scegliere **Master EBS Configuration (Configurazione Master EBS)**, **Core EBS Configuration (Configurazione EBS Core)** o **Task EBS Configuration (Configurazione EBS Task)**, quindi immettere i dettagli di configurazione simili a quello dell'esempio seguente.  

```
{
  "objects": [
    {
      "output": {
        "ref": "S3BackupLocation"
      },
      "input": {
        "ref": "DDBSourceTable"
      },
      "maximumRetries": "2",
      "name": "TableBackupActivity",
      "step": "s3://dynamodb-emr-#{myDDBRegion}/emr-ddb-storage-handler/2.1.0/emr-ddb-2.1.0.jar,org.apache.hadoop.dynamodb.tools.DynamoDbExport,#{output.directoryPath},#{input.tableName},#{input.readThroughputPercent}",
      "id": "TableBackupActivity",
      "runsOn": {
        "ref": "EmrClusterForBackup"
      },
      "type": "EmrActivity",
      "resizeClusterBeforeRunning": "false"
    },
    {
      "readThroughputPercent": "#{myDDBReadThroughputRatio}",
      "name": "DDBSourceTable",
      "id": "DDBSourceTable",
      "type": "DynamoDBDataNode",
      "tableName": "#{myDDBTableName}"
    },
    {
      "directoryPath": "#{myOutputS3Loc}/#{format(@scheduledStartTime, 'YYYY-MM-dd-HH-mm-ss')}",
      "name": "S3BackupLocation",
      "id": "S3BackupLocation",
      "type": "S3DataNode"
    },
    {
      "name": "EmrClusterForBackup",
      "coreInstanceCount": "1",
      "taskInstanceCount": "1",
      "taskInstanceType": "m4.xlarge",
      "coreInstanceType": "m4.xlarge",
      "releaseLabel": "emr-4.7.0",
      "masterInstanceType": "m4.xlarge",
      "id": "EmrClusterForBackup",
      "subnetId": "#{mySubnetId}",
      "emrManagedMasterSecurityGroupId": "#{myMasterSecurityGroup}",
      "emrManagedSlaveSecurityGroupId": "#{mySlaveSecurityGroup}",
      "region": "#{myDDBRegion}",
      "type": "EmrCluster",
      "coreEbsConfiguration": {
        "ref": "EBSConfiguration"
      },
      "masterEbsConfiguration": {
        "ref": "EBSConfiguration"
      },
      "taskEbsConfiguration": {
        "ref": "EBSConfiguration"
      },
      "keyPair": "user-key-pair"
    },
    {
       "name": "EBSConfiguration",
        "id": "EBSConfiguration",
        "ebsOptimized": "true",
        "ebsBlockDeviceConfig" : [
            { "ref": "EbsBlockDeviceConfig" }
        ],
        "type": "EbsConfiguration"
    },
    {
        "name": "EbsBlockDeviceConfig",
        "id": "EbsBlockDeviceConfig",
        "type": "EbsBlockDeviceConfig",
        "volumesPerInstance" : "2",
        "volumeSpecification" : {
            "ref": "VolumeSpecification"
        }
    },
    {
      "name": "VolumeSpecification",
      "id": "VolumeSpecification",
      "type": "VolumeSpecification",
      "sizeInGB": "500",
      "volumeType": "io1",
      "iops": "1000"
    },
    {
      "failureAndRerunMode": "CASCADE",
      "resourceRole": "DataPipelineDefaultResourceRole",
      "role": "DataPipelineDefaultRole",
      "pipelineLogUri": "#{myPipelineLogUri}",
      "scheduleType": "ONDEMAND",
      "name": "Default",
      "id": "Default"
    }
  ],
  "parameters": [
    {
      "description": "Output S3 folder",
      "id": "myOutputS3Loc",
      "type": "AWS::S3::ObjectKey"
    },
    {
      "description": "Source DynamoDB table name",
      "id": "myDDBTableName",
      "type": "String"
    },
    {
      "default": "0.25",
      "watermark": "Enter value between 0.1-1.0",
      "description": "DynamoDB read throughput ratio",
      "id": "myDDBReadThroughputRatio",
      "type": "Double"
    },
    {
      "default": "us-east-1",
      "watermark": "us-east-1",
      "description": "Region of the DynamoDB table",
      "id": "myDDBRegion",
      "type": "String"
    }
  ],
  "values": {
     "myDDBRegion": "us-east-1",
      "myDDBTableName": "ddb_table",
      "myDDBReadThroughputRatio": "0.25",
      "myOutputS3Loc": "s3://s3_path",
      "mySubnetId": "subnet_id",
      "mySlaveSecurityGroup": "slave security group",
      "myMasterSecurityGroup": "master security group",
      "myPipelineLogUri": "s3://s3_path"
  }
}
```

## Vedi anche
<a name="emrcluster-seealso"></a>
+ [EmrActivity](dp-object-emractivity.md)

# HttpProxy
<a name="dp-object-httpproxy"></a>

HttpProxy consente di configurare il proprio proxy e fare in modo che Task Runner acceda al AWS Data Pipeline servizio tramite esso. Non è necessario configurare un Task Runner in esecuzione con queste informazioni.

## Esempio di un in HttpProxy TaskRunner
<a name="example9"></a>

La seguente definizione di pipeline mostra un oggetto `HttpProxy`:

```
{
  "objects": [
    {
      "schedule": {
        "ref": "Once"
      },
      "pipelineLogUri": "s3://myDPLogUri/path",
      "name": "Default",
      "id": "Default"
    },
    {
      "name": "test_proxy",
      "hostname": "hostname",
      "port": "port",
      "username": "username",
      "*password": "password",
      "windowsDomain": "windowsDomain",
      "type": "HttpProxy",
      "id": "test_proxy",
    },
    {
      "name": "ShellCommand",
      "id": "ShellCommand",
      "runsOn": {
        "ref": "Resource"
      },
      "type": "ShellCommandActivity",
      "command": "echo 'hello world' "
    },
    {
      "period": "1 day",
      "startDateTime": "2013-03-09T00:00:00",
      "name": "Once",
      "id": "Once",
      "endDateTime": "2013-03-10T00:00:00",
      "type": "Schedule"
    },
    {
      "role": "dataPipelineRole",
      "httpProxy": {
        "ref": "test_proxy"
      },
      "actionOnResourceFailure": "retrynone",
      "maximumRetries": "0",
      "type": "Ec2Resource",
      "terminateAfter": "10 minutes",
      "resourceRole": "resourceRole",
      "name": "Resource",
      "actionOnTaskFailure": "terminate",
      "securityGroups": "securityGroups",
      "keyPair": "keyPair",
      "id": "Resource",
      "region": "us-east-1"
    }
  ],
  "parameters": []
}
```

## Sintassi
<a name="httpproxy-slots"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| hostname | Hosting del proxy che i clienti possano utilizzare per connettersi ai servizi AWS. | Stringa | 
| port | Porta dell'host proxy che i clienti possano utilizzare per connettersi ai Servizi AWS. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| \$1password | Password per il proxy. | Stringa | 
| s3 NoProxy | Disabilita il proxy HTTP durante la connessione ad Amazon S3 | Booleano | 
| username | Nome utente per il proxy | Stringa | 
| windowsDomain | Il nome del dominio di Windows per il proxy NTLM. | Stringa | 
| windowsWorkgroup | Il nome del gruppo di lavoro di Windows per il proxy NTLM. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# Precondizioni
<a name="dp-object-preconditions"></a>

I seguenti sono gli oggetti AWS Data Pipeline precondizionati:

**Topics**
+ [La dinamo esiste DBData](dp-dynamodbdataexists.md)
+ [La dinamo DBTable esiste](dp-dynamodbtableexists.md)
+ [Exists](dp-object-exists.md)
+ [S3 KeyExists](dp-object-S3KeyExists.md)
+ [S3 PrefixNotEmpty](dp-object-s3prefixnotempty.md)
+ [ShellCommandPrecondition](dp-object-shellcommandprecondition.md)

# La dinamo esiste DBData
<a name="dp-dynamodbdataexists"></a>

 Un prerequisito per verificare l'esistenza di dati in una tabella DynamoDB. 

## Sintassi
<a name="dp-dynamodbdataexists-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| role | Specifica il ruolo da utilizzare per eseguire la precondizione. | Stringa | 
| tableName | Tabella DynamoDB da verificare. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite | Enumerazione | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| preconditionTimeout | Il periodo dall'inizio dopo il quale la precondizione viene contrassegnata come non riuscita se ancora non è stata soddisfatta. | Periodo | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» myRunnableObject Id "\$1 | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| currentRetryCount | Numero di volte in cui la precondizione è stato provata in questo tentativo. | Stringa | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| lastRetryTime | L'ultima volta in cui la precondizione è stato provata all'interno di questo tentativo. | Stringa | 
| nodo | Il nodo per il quale viene eseguita questa precondizione | Oggetto di riferimento, ad esempio «node»: \$1"ref»:» myRunnableObject Id "\$1 | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto. | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# La dinamo DBTable esiste
<a name="dp-dynamodbtableexists"></a>

 Una precondizione per verificare l'esistenza della tabella DynamoDB. 

## Sintassi
<a name="dp-dynamodbtableexists-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| role | Specifica il ruolo da utilizzare per eseguire la precondizione. | Stringa | 
| tableName | Tabella DynamoDB da verificare. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| failureAndRerunModo | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite | Enumerazione | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| preconditionTimeout | Il periodo dall'inizio dopo il quale la precondizione viene contrassegnata come non riuscita se ancora non è stata soddisfatta. | Periodo | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» myRunnableObject Id "\$1 | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| currentRetryCount | Numero di volte in cui la precondizione è stato provata in questo tentativo. | Stringa | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| lastRetryTime | L'ultima volta in cui la precondizione è stato provata all'interno di questo tentativo. | Stringa | 
| nodo | Il nodo per il quale viene eseguita questa precondizione | Oggetto di riferimento, ad esempio «node»: \$1"ref»:» myRunnableObject Id "\$1 | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

# Exists
<a name="dp-object-exists"></a>

 Verifica se esiste un oggetto nodo di dati. 

**Nota**  
È consigliabile utilizzare precondizioni gestite dal sistema. Per ulteriori informazioni, consulta [Precondizioni](dp-concepts-preconditions.md).

## Esempio
<a name="exists-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. L'oggetto `InputData` fa riferimento a questo oggetto, `Ready`, più a un altro oggetto definito nello stesso file di definizione della pipeline. `CopyPeriod` è un oggetto `Schedule`.

```
{
  "id" : "InputData",
  "type" : "S3DataNode",
  "schedule" : { "ref" : "CopyPeriod" },
  "filePath" : "s3://amzn-s3-demo-bucket/InputData/#{@scheduledStartTime.format('YYYY-MM-dd-hh:mm')}.csv",
  "precondition" : { "ref" : "Ready" }
},
{
  "id" : "Ready",
  "type" : "Exists"
}
```

## Sintassi
<a name="exists-syntax"></a>


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite. | Enumerazione | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| preconditionTimeout | Il periodo dall'inizio dopo il quale la precondizione viene contrassegnata come non riuscita se ancora non è stata soddisfatta. | Periodo | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» myRunnableObject Id "\$1 | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| nodo | Il nodo per il quale viene eseguita questa precondizione. | Oggetto di riferimento, ad esempio «node»: \$1"ref»:» myRunnableObject Id "\$1 | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto. | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

## Vedi anche
<a name="exists-seealso"></a>
+ [ShellCommandPrecondition](dp-object-shellcommandprecondition.md)

# S3 KeyExists
<a name="dp-object-S3KeyExists"></a>

 Verifica se esiste una chiave in un nodo di dati Amazon S3.

## Esempio
<a name="dp-object-S3KeyExists-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. La precondizione sarà attivata quando esiste la chiave `s3://amzn-s3-demo-bucket/mykey`, a cui si fa riferimento tramite il parametro `s3Key`. 

```
{
"id" : "InputReady",
"type" : "S3KeyExists",
"role" : "test-role",
"s3Key" : "s3://amzn-s3-demo-bucket/mykey"
}
```

È inoltre possibile utilizzare `S3KeyExists` come precondizione nella seconda pipeline che attende il termine della prima pipeline. A tale scopo:

1. Scrivi un file su Amazon S3 al termine del completamento della prima pipeline.

1. Crea una precondizione `S3KeyExists` nella seconda pipeline.

## Sintassi
<a name="S3KeyExists-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| role | Specifica il ruolo da utilizzare per eseguire la precondizione. | Stringa | 
| s3Key | La chiave Amazon S3. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout prima di tentare nuovamente di completare il lavoro in remoto. Se impostato, un'attività remota che non viene completata entro il tempo impostato dopo l'avvio viene tentata di nuovo. | Periodo | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite. | Enumerazione | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maximumRetries | Numero massimo di tentativi che vengono avviati in caso di errore. | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| preconditionTimeout | Il periodo dall'inizio dopo il quale la precondizione viene contrassegnata come non riuscita se ancora non è stata soddisfatta. | Periodo | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a  reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi consecutivi. | Periodo | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» myRunnableObject Id "\$1 | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| currentRetryCount | Numero di volte in cui la precondizione è stato provata in questo tentativo. | Stringa | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| lastRetryTime | L'ultima volta in cui la precondizione è stato provata all'interno di questo tentativo. | Stringa | 
| nodo | Il nodo per il quale viene eseguita questa precondizione | Oggetto di riferimento, ad esempio «node»: \$1"ref»:» myRunnableObject Id "\$1 | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

## Vedi anche
<a name="S3KeyExists-seealso"></a>
+ [ShellCommandPrecondition](dp-object-shellcommandprecondition.md)

# S3 PrefixNotEmpty
<a name="dp-object-s3prefixnotempty"></a>

Una precondizione per verificare la presenza degli oggetti Amazon S3 con il prefisso specificato (rappresentato come URI).

## Esempio
<a name="s3prefixnotempty-example"></a>

Di seguito è riportato un esempio di questo tipo di oggetto utilizzando campi obbligatori, facoltativi e di espressioni.

```
{
  "id" : "InputReady",
  "type" : "S3PrefixNotEmpty",
  "role" : "test-role",
  "s3Prefix" : "#{node.filePath}"
}
```

## Sintassi
<a name="s3prefixnotempty-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| role | Specifica il ruolo da utilizzare per eseguire la precondizione. | Stringa | 
| s3Prefix | Il prefisso Amazon S3 per verificare l'esistenza di oggetti. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| failureAndRerunModalità | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite | Enumerazione | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| preconditionTimeout | Il periodo dall'inizio dopo il quale la precondizione viene contrassegnata come non riuscita se ancora non è stata soddisfatta. | Periodo | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» myRunnableObject Id "\$1 | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| currentRetryCount | Numero di volte in cui la precondizione è stato provata in questo tentativo. | Stringa | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| lastRetryTime | L'ultima volta in cui la precondizione è stato provata all'interno di questo tentativo. | Stringa | 
| nodo | Il nodo per il quale viene eseguita questa precondizione. | Oggetto di riferimento, ad esempio «node»: \$1"ref»:» myRunnableObject Id "\$1 | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto. | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto. | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

## Vedi anche
<a name="s3prefixnotempty-seealso"></a>
+ [ShellCommandPrecondition](dp-object-shellcommandprecondition.md)

# ShellCommandPrecondition
<a name="dp-object-shellcommandprecondition"></a>

 Un comando di Unix/Linux shell che può essere eseguito come condizione preliminare. 

## Esempio
<a name="shellcommandprecondition-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto.

```
{
  "id" : "VerifyDataReadiness",
  "type" : "ShellCommandPrecondition",
  "command" : "perl check-data-ready.pl"
}
```

## Sintassi
<a name="shellcommandprecondition-syntax"></a>


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| command | Il comando da eseguire. Questo valore ed eventuali parametri associati devono funzionare nell'ambiente da cui si sta eseguendo il Task Runner. | Stringa | 
| scriptUri | Un percorso URI di Amazon S3 per un file da scaricare ed eseguire come comando shell. Deve essere presente solo uno scriptUri o un campo di comando. Se lo scriptUri non è in grado di utilizzare i parametri, utilizzare il comando. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| attemptStatus | Lo stato segnalato più di recente dall'attività remota. | Stringa | 
| attemptTimeout | Timeout per il completamento del lavoro in remoto. Se questo campo è impostato, un'attività remota che non viene completata entro il tempo impostato di avvio viene tentata di nuovo. | Periodo | 
| failureAndRerunModo | Descrive il comportamento del nodo consumer quando le dipendenze presentano un errore o vengono di nuovo eseguite | Enumerazione | 
| lateAfterTimeout | Il tempo trascorso dopo l'inizio della pipeline entro il quale l'oggetto deve essere completato. Viene attivato solo quando il tipo di pianificazione non è impostato su. ondemand | Periodo | 
| maximumRetries | Numero massimo di tentativi in caso di errore | Numero intero | 
| onFail | Un'azione da eseguire quando l'oggetto corrente ha esito negativo. | Oggetto di riferimento, ad esempio «onFail»: \$1"ref»:» myActionId «\$1 | 
| onLateAction | Azioni che devono essere attivate se un oggetto non è stato ancora pianificato o non è ancora completo. | Oggetto di riferimento, ad esempio "onLateAction«: \$1" ref»:» myActionId «\$1 | 
| onSuccess | Un'operazione da eseguire quando l'oggetto corrente ha esito positivo. | Oggetto di riferimento, ad esempio «onSuccess»: \$1"ref»:» myActionId «\$1 | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| preconditionTimeout | Il periodo dall'inizio dopo il quale la precondizione viene contrassegnata come non riuscita se ancora non è stata soddisfatta. | Periodo | 
| reportProgressTimeout | Timeout per chiamate successive di attività in remoto a reportProgress. Se impostato, le attività in remoto che non presentano avanzamenti nel periodo specificato potrebbero essere considerate bloccate e sono quindi oggetto di un altro tentativo. | Periodo | 
| retryDelay | La durata del timeout tra due tentativi. | Periodo | 
| scriptArgument | Argomento da passare allo script della shell | Stringa | 
| stderr | Il percorso Amazon S3 che riceve i messaggi di errore di sistema reindirizzati dal comando. Se utilizzi il runsOn campo, deve trattarsi di un percorso Amazon S3 a causa della natura transitoria della risorsa che esegue la tua attività. Tuttavia, se specifichi il campo workerGroup, viene autorizzato un percorso file locale. | Stringa | 
| stdout | Il percorso Amazon S3 che riceve l'output reindirizzato dal comando. Se utilizzi il runsOn campo, deve trattarsi di un percorso Amazon S3 a causa della natura transitoria della risorsa che esegue la tua attività. Tuttavia, se specifichi il campo workerGroup, viene autorizzato un percorso file locale. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @activeInstances | Elenco di oggetti di istanze attive attualmente programmate. | Oggetto di riferimento, ad esempio «activeInstances»: \$1"ref»:» Id "\$1 myRunnableObject | 
| @actualEndTime | L'ora in cui è terminata l'esecuzione di questo oggetto. | DateTime | 
| @actualStartTime | L'ora in cui è stata avviata l'esecuzione di questo oggetto. | DateTime | 
| cancellationReason | CancellationReason se questo oggetto è stato annullato. | Stringa | 
| @cascadeFailedOn | Descrizione della catena di dipendenza che ha generato l'errore dell'oggetto. | Oggetto di riferimento, ad esempio "cascadeFailedOn«: \$1" ref»:» myRunnableObject Id "\$1 | 
| emrStepLog | Log della fase EMR disponibili solo sui tentativi delle attività EMR | Stringa | 
| errorId | ErrorId se l'oggetto non è riuscito. | Stringa | 
| errorMessage | ErrorMessage se l'oggetto non è riuscito. | Stringa | 
| errorStackTrace | Traccia dello stack di errore se l'oggetto non è riuscito. | Stringa | 
| hadoopJobLog | Log delle attività Hadoop disponibili per le attività basate su EMR. | Stringa | 
| hostname | Il nome host del client che si è aggiudicato il tentativo dell'attività. | Stringa | 
| nodo | Il nodo per il quale viene eseguita questa precondizione | Oggetto di riferimento, ad esempio «node»: \$1"ref»:» myRunnableObject Id "\$1 | 
| reportProgressTime | Il periodo di tempo più recente in cui l'attività remota ha segnalato un progresso. | DateTime | 
| @scheduledEndTime | L'orario di termine della pianificazione per un oggetto | DateTime | 
| @scheduledStartTime | L'orario di inizio della pianificazione per l'oggetto | DateTime | 
| @status | Lo stato di questo oggetto. | Stringa | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 
| @waitingOn | Descrizione dell'elenco di dipendenze per cui questo oggetto è in attesa. | Oggetto di riferimento, ad esempio «waitingOn»: \$1"ref»:» myRunnableObject Id "\$1 | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

## Vedi anche
<a name="shellcommandprecondition-seealso"></a>
+ [ShellCommandActivity](dp-object-shellcommandactivity.md)
+ [Exists](dp-object-exists.md)

# Database
<a name="dp-object-databases"></a>

I seguenti sono gli oggetti del AWS Data Pipeline database:

**Topics**
+ [JdbcDatabase](dp-object-jdbcdatabase.md)
+ [RdsDatabase](dp-object-rdsdatabase.md)
+ [RedshiftDatabase](dp-object-redshiftdatabase.md)

# JdbcDatabase
<a name="dp-object-jdbcdatabase"></a>

Rimuove un database JDBC.

## Esempio
<a name="jdbcdatabase-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto.

```
{
  "id" : "MyJdbcDatabase",
  "type" : "JdbcDatabase",
  "connectionString" : "jdbc:redshift://hostname:portnumber/dbname",
  "jdbcDriverClass" : "com.amazon.redshift.jdbc41.Driver",
  "jdbcDriverJarUri" : "s3://redshift-downloads/drivers/RedshiftJDBC41-1.1.6.1006.jar",
  "username" : "user_name",
  "*password" : "my_password"
}
```

## Sintassi
<a name="jdbcdatabase-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| connectionString | La stringa di connessione JDBC per accedere al database. | Stringa | 
| jdbcDriverClass | La classe del driver da caricare prima di stabilire la connessione JDBC. | Stringa | 
| \$1password | La password da fornire. | Stringa | 
| username | Il nome utente da fornire durante la connessione al database. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| databaseName | Nome del database logico a cui collegarsi | Stringa | 
| jdbcDriverJarUri | Il percorso in Amazon S3 del file JAR del driver JDBC utilizzato per la connessione al database. AWS Data Pipeline deve avere l'autorizzazione a leggere questo file JAR. | Stringa | 
| jdbcProperties | Coppie della forma A=B da impostare come proprietà sulle connessioni JDBC per questo database. | Stringa | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'ID della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# RdsDatabase
<a name="dp-object-rdsdatabase"></a>

Definisce un database Amazon RDS.

**Nota**  
RdsDatabase non supporta Aurora. Usalo [JdbcDatabase](dp-object-jdbcdatabase.md) per Aurora, invece.

## Esempio
<a name="rdsdatabase-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto.

```
{
  "id" : "MyRdsDatabase",
  "type" : "RdsDatabase",
  "region" : "us-east-1",
  "username" : "user_name",
  "*password" : "my_password",
  "rdsInstanceId" : "my_db_instance_identifier"
}
```

Per il motore Oracle, il campo `jdbcDriverJarUri` è obbligatorio ed è possibile specificare il seguente driver: `http://www.oracle.com/technetwork/database/features/jdbc/jdbc-drivers-12c-download-1958347.html`. Per il motore SQL, il campo `jdbcDriverJarUri` è obbligatorio ed è possibile specificare il seguente driver: `https://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=11774`. Per i motori MySQL e PostgreSQL, il campo `jdbcDriverJarUri` è facoltativo.

## Sintassi
<a name="rdsdatabase-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| \$1password | La password da fornire. | Stringa | 
| rdsInstanceId | La DBInstanceIdentifier proprietà dell'istanza DB. | Stringa | 
| username | Il nome utente da fornire durante la connessione al database. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| databaseName | Nome del database logico a cui collegarsi | Stringa | 
| jdbcDriverJarUri | Il percorso in Amazon S3 del file JAR del driver JDBC utilizzato per la connessione al database. AWS Data Pipeline deve avere l'autorizzazione a leggere questo file JAR. Per i motori MySQL e PostgreSQL, il driver predefinito viene utilizzato se questo campo non è specificato, ma è possibile sostituire l'impostazione predefinita utilizzando tale campo. Per i motori Oracle e SQL Server, questo campo è obbligatorio. | Stringa | 
| jdbcProperties | Coppie della forma A=B da impostare come proprietà sulle connessioni JDBC per questo database. | Stringa | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| region | Il codice per la regione in cui esiste il database. Ad esempio, us-east-1. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'ID della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# RedshiftDatabase
<a name="dp-object-redshiftdatabase"></a>

Definisce un database Amazon Redshift. `RedshiftDatabase`rappresenta le proprietà del database utilizzato dalla pipeline.

## Esempio
<a name="redshiftdatabase-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto.

```
{
  "id" : "MyRedshiftDatabase",
  "type" : "RedshiftDatabase",
  "clusterId" : "myRedshiftClusterId",
  "username" : "user_name",
  "*password" : "my_password",
  "databaseName" : "database_name"
}
```

Per impostazione predefinita, l'oggetto usa il driver Postgres, che richiede il campo `clusterId`. Per utilizzare il driver Amazon Redshift, specifica invece la stringa di connessione al database Amazon Redshift dalla console Amazon Redshift (inizia con «jdbc:redshift:») nel campo. `connectionString`

## Sintassi
<a name="redshiftdatabase-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| \$1password | La password da fornire. | Stringa | 
| username | Il nome utente da fornire durante la connessione al database. | Stringa | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| clusterId | L'identificatore fornito dall'utente al momento della creazione del cluster Amazon Redshift. Ad esempio, se l'endpoint per il tuo cluster Amazon Redshift è mydb.example.us-east-1.redshift.amazonaws.com, l'identificatore corretto è. mydb Nella console Amazon Redshift, puoi ottenere questo valore da Cluster Identifier o Cluster Name. | Stringa | 
| connectionString | L'endpoint JDBC per la connessione a un'istanza Amazon Redshift di proprietà di un account diverso dalla pipeline. Non è possibile specificare connectionString e clusterId. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| databaseName | Nome del database logico a cui collegarsi. | Stringa | 
| jdbcProperties | Coppie della forma A=B da impostare come proprietà sulle connessioni JDBC per questo database. | Stringa | 
| parent | Padre dell'oggetto corrente da cui vengono ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» Id "\$1 myBaseObject | 
| region | Il codice per la regione in cui esiste il database. Ad esempio, us-east-1. | Enumerazione | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'ID della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# Formati dei dati
<a name="dp-object-dataformats"></a>

Di seguito sono riportati gli oggetti in formato AWS Data Pipeline dati:

**Topics**
+ [Formato dei dati CSV](dp-object-csv.md)
+ [Formato di dati personalizzato](dp-object-custom.md)
+ [Formato Dynamo DBData](dp-object-dynamodbdataformat.md)
+ [Dinamo DBExport DataFormat](dp-object-dynamodbexportdataformat.md)
+ [RegEx Formato dei dati](dp-object-regex.md)
+ [Formato dei dati TSV](dp-object-tsv.md)

# Formato dei dati CSV
<a name="dp-object-csv"></a>

Un formato di dati separati da virgola in cui il separatore di colonna è una virgola e il separatore di record è un carattere in una nuova riga.

## Esempio
<a name="csv-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. 

```
{
  "id" : "MyOutputDataType",
  "type" : "CSV",
  "column" : [
    "Name STRING",
    "Score INT",
    "DateOfBirth TIMESTAMP"
  ]
}
```

## Sintassi
<a name="csv-syntax"></a>


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| column | Il nome della colonna con il tipo di dati specificato da ogni campo per i dati descritti da questo nodo di dati. Ex: hostname STRING Per più valori, utilizzare i nomi delle colonne e i tipi di dati separati da uno spazio. | Stringa | 
| escapeChar | Carattere, ad esempio"\$1", che indica al parser di ignorare il carattere successivo. | Stringa | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

# Formato di dati personalizzato
<a name="dp-object-custom"></a>

Un formato di dati personalizzato definito da una combinazione di un determinato separatore di colonne, da un separatore di record e da un carattere escape.

## Esempio
<a name="custom-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. 

```
{
  "id" : "MyOutputDataType",
  "type" : "Custom",
  "columnSeparator" : ",",
  "recordSeparator" : "\n",
  "column" : [
    "Name STRING",
    "Score INT",
    "DateOfBirth TIMESTAMP"
  ]
}
```

## Sintassi
<a name="custom-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| columnSeparator | Carattere che indica la fine di una colonna in un file di dati. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| column | Il nome della colonna con il tipo di dati specificato da ogni campo per i dati descritti da questo nodo di dati. Ex: hostname STRING Per più valori, utilizzare i nomi delle colonne e i tipi di dati separati da uno spazio. | Stringa | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| recordSeparator | Carattere che indica la fine di una riga in un file di dati, ad esempio "\$1n". Supporta solo caratteri singoli. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

# Formato Dynamo DBData
<a name="dp-object-dynamodbdataformat"></a>

Applica uno schema a una tabella DynamoDB per renderla accessibile tramite una query Hive. `DynamoDBDataFormat`viene utilizzato con un `HiveActivity` oggetto e un `DynamoDBDataNode` input e output. `DynamoDBDataFormat`richiede che tu specifichi tutte le colonne nella tua query Hive. Per una maggiore flessibilità nello specificare determinate colonne in una query Hive o nel supporto di Amazon S3, consulta. [Dinamo DBExport DataFormat](dp-object-dynamodbexportdataformat.md)

**Nota**  
I tipi DynamoDB Boolean non sono mappati sui tipi Hive Boolean. Tuttavia, è possibile mappare valori interi DynamoDB pari a 0 o 1 su tipi Hive Boolean.

## Esempio
<a name="dynamodbdataformat-example"></a>

L'esempio seguente mostra come usare `DynamoDBDataFormat` per assegnare uno schema a un input `DynamoDBDataNode`, che consente a un oggetto `HiveActivity` di accedere ai dati in base alle colonne denominate e copiare i dati in un output `DynamoDBDataNode`. 

```
{
  "objects": [
    {
      "id" : "Exists.1",
      "name" : "Exists.1",
      "type" : "Exists"
    },
    {
      "id" : "DataFormat.1",
      "name" : "DataFormat.1",
      "type" : "DynamoDBDataFormat",
      "column" : [ 
         "hash STRING", 
        "range STRING" 
      ]
    },
    {
      "id" : "DynamoDBDataNode.1",
      "name" : "DynamoDBDataNode.1",
      "type" : "DynamoDBDataNode",
      "tableName" : "$INPUT_TABLE_NAME",
      "schedule" : { "ref" : "ResourcePeriod" },
      "dataFormat" : { "ref" : "DataFormat.1" }
    },
    {
      "id" : "DynamoDBDataNode.2",
      "name" : "DynamoDBDataNode.2",
      "type" : "DynamoDBDataNode",
      "tableName" : "$OUTPUT_TABLE_NAME",
      "schedule" : { "ref" : "ResourcePeriod" },
      "dataFormat" : { "ref" : "DataFormat.1" }
    },
    {
      "id" : "EmrCluster.1",
      "name" : "EmrCluster.1",
      "type" : "EmrCluster",
      "schedule" : { "ref" : "ResourcePeriod" },
      "masterInstanceType" : "m1.small",
      "keyPair" : "$KEYPAIR"
    },
    {
      "id" : "HiveActivity.1",
      "name" : "HiveActivity.1",
      "type" : "HiveActivity",
      "input" : { "ref" : "DynamoDBDataNode.1" },
      "output" : { "ref" : "DynamoDBDataNode.2" },
      "schedule" : { "ref" : "ResourcePeriod" },
      "runsOn" : { "ref" : "EmrCluster.1" },
      "hiveScript" : "insert overwrite table ${output1} select * from ${input1} ;"
    },
    {
      "id" : "ResourcePeriod",
      "name" : "ResourcePeriod",
      "type" : "Schedule",
      "period" : "1 day",
      "startDateTime" : "2012-05-04T00:00:00",
      "endDateTime" : "2012-05-05T00:00:00"
    }
  ]
}
```

## Sintassi
<a name="dynamodbdataformat-syntax"></a>


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| column | Il nome della colonna con il tipo di dati specificato da ogni campo per i dati descritti da questo nodo di dati. Ad esempio, hostname STRING. Per più valori, utilizzare i nomi delle colonne e i tipi di dati separati da uno spazio. | Stringa | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | La versione della pipeline utilizzata per creare l'oggetto. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive l'oggetto con il formato errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# Dinamo DBExport DataFormat
<a name="dp-object-dynamodbexportdataformat"></a>

Applica uno schema a una tabella DynamoDB per renderla accessibile tramite una query Hive. Utilizzare `DynamoDBExportDataFormat` con un oggetto `HiveCopyActivity` e `DynamoDBDataNode` o con input e output `S3DataNode`. `DynamoDBExportDataFormat` ha i seguenti benefici: 
+ Fornisce supporto sia per DynamoDB che per Amazon S3
+ Consente di filtrare i dati in base a determinate colonne nella query Hive
+ Esporta tutti gli attributi da DynamoDB anche se hai uno schema sparso

**Nota**  
I tipi DynamoDB Boolean non sono mappati sui tipi Hive Boolean. Tuttavia, è possibile mappare valori interi DynamoDB pari a 0 o 1 su tipi Hive Boolean.

## Esempio
<a name="dynamodbexportdataformat-example"></a>

L'esempio seguente mostra come usare `HiveCopyActivity` e `DynamoDBExportDataFormat` per copiare i dati da una versione `DynamoDBDataNode` a un'altra, mentre i dati vengono filtrati in base a un timestamp.

```
{
  "objects": [
    {
      "id" : "DataFormat.1",
      "name" : "DataFormat.1",
      "type" : "DynamoDBExportDataFormat",
      "column" : "timeStamp BIGINT"
    },
    {
      "id" : "DataFormat.2",
      "name" : "DataFormat.2",
      "type" : "DynamoDBExportDataFormat"
    },
    {
      "id" : "DynamoDBDataNode.1",
      "name" : "DynamoDBDataNode.1",
      "type" : "DynamoDBDataNode",
      "tableName" : "item_mapped_table_restore_temp",
      "schedule" : { "ref" : "ResourcePeriod" },
      "dataFormat" : { "ref" : "DataFormat.1" }
    },
    {
      "id" : "DynamoDBDataNode.2",
      "name" : "DynamoDBDataNode.2",
      "type" : "DynamoDBDataNode",
      "tableName" : "restore_table",
      "region" : "us_west_1",
      "schedule" : { "ref" : "ResourcePeriod" },
      "dataFormat" : { "ref" : "DataFormat.2" }
    },
    {
      "id" : "EmrCluster.1",
      "name" : "EmrCluster.1",
      "type" : "EmrCluster",
      "schedule" : { "ref" : "ResourcePeriod" },
      "masterInstanceType" : "m1.xlarge",
      "coreInstanceCount" : "4"
    },
    {
      "id" : "HiveTransform.1",
      "name" : "Hive Copy Transform.1",
      "type" : "HiveCopyActivity",
      "input" : { "ref" : "DynamoDBDataNode.1" },
      "output" : { "ref" : "DynamoDBDataNode.2" },
      "schedule" : { "ref" : "ResourcePeriod" },
      "runsOn" : { "ref" : "EmrCluster.1" },
      "filterSql" : "`timeStamp` > unix_timestamp(\"#{@scheduledStartTime}\", \"yyyy-MM-dd'T'HH:mm:ss\")"
    },
    {
      "id" : "ResourcePeriod",
      "name" : "ResourcePeriod",
      "type" : "Schedule",
      "period" : "1 Hour",
      "startDateTime" : "2013-06-04T00:00:00",
      "endDateTime" : "2013-06-04T01:00:00"
    }
  ]
}
```

## Sintassi
<a name="dynamodbexportdataformat-syntax"></a>


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| column | Il nome della colonna con il tipo di dati specificato da ogni campo per i dati descritti da questo nodo di dati. Ex: hostname STRING | Stringa | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

# RegEx Formato dei dati
<a name="dp-object-regex"></a>

Un formato di dati personalizzato definito da un'espressione regolare.

## Esempio
<a name="regex-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. 

```
{
  "id" : "MyInputDataType",
  "type" : "RegEx",
  "inputRegEx" : "([^ ]*) ([^ ]*) ([^ ]*) (-|\\[[^\\]]*\\]) ([^ \"]*|\"[^\"]*\") (-|[0-9]*) (-|[0-9]*)(?: ([^ \"]*|\"[^\"]*\") ([^ \"]*|\"[^\"]*\"))?",
  "outputFormat" : "%1$s %2$s %3$s %4$s %5$s %6$s %7$s %8$s %9$s",
  "column" : [
    "host STRING",
    "identity STRING",
    "user STRING",
    "time STRING",
    "request STRING",
    "status STRING",
    "size STRING",
    "referer STRING",
    "agent STRING"
  ]
}
```

## Sintassi
<a name="regex-syntax"></a>


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| column | Il nome della colonna con il tipo di dati specificato da ogni campo per i dati descritti da questo nodo di dati. Ex: hostname STRING Per più valori, utilizzare i nomi delle colonne e i tipi di dati separati da uno spazio. | Stringa | 
| inputRegEx | L'espressione regolare per analizzare un file di input S3. inputRegEx fornisce un modo per recuperare colonne da dati relativamente non strutturati in un file. | Stringa | 
| outputFormat | I campi delle colonne recuperati da inputRegEx, ma a cui si fa riferimento come %1\$1s %2\$1s utilizzando la sintassi del formattatore Java. | Stringa | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» Id "\$1 myBaseObject | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

# Formato dei dati TSV
<a name="dp-object-tsv"></a>

Un formato di dati separati da virgola in cui il separatore di colonna è un carattere tab e il separatore di record è un carattere in una nuova riga.

## Esempio
<a name="tsv-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. 

```
{
  "id" : "MyOutputDataType",
  "type" : "TSV",
  "column" : [
    "Name STRING",
    "Score INT",
    "DateOfBirth TIMESTAMP"
  ]
}
```

## Sintassi
<a name="tsv-syntax"></a>


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| column | Il nome della colonna e il tipo di dati per i dati descritti da questo nodo di dati. Ad esempio "Name STRING" denota una colonna denominata Name con campi di tipo dati STRING. Separare più coppie di nomi di colonne e tipi di dati con virgole (come illustrato nell'esempio). | Stringa | 
| columnSeparator | Carattere che separa i campi in una colonna dai campi nella colonna successiva. Impostazione predefinita su '\$1t'. | Stringa | 
| escapeChar | Carattere, ad esempio"\$1", che indica al parser di ignorare il carattere successivo. | Stringa | 
| parent | Padre dell'oggetto corrente da cui vengono ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| recordSeparator | Carattere che separa i record. Impostazione predefinita su '\$1n'. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'ID della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# Azioni
<a name="dp-object-actions"></a>

I seguenti sono gli oggetti AWS Data Pipeline d'azione:

**Topics**
+ [SnsAlarm](dp-object-snsalarm.md)
+ [Interruzione](dp-object-terminate.md)

# SnsAlarm
<a name="dp-object-snsalarm"></a>

 Invia un messaggio di notifica Amazon SNS quando un'attività fallisce o termina con successo. 

## Esempio
<a name="snsalarm-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. I valori per `node.input` e `node.output` provengono dal nodo di dati o da un'attività che fa riferimento a questo oggetto nel relativo campo `onSuccess`. 

```
{
  "id" : "SuccessNotify",
  "name" : "SuccessNotify",
  "type" : "SnsAlarm",
  "topicArn" : "arn:aws:sns:us-east-1:28619EXAMPLE:ExampleTopic",
  "subject" : "COPY SUCCESS: #{node.@scheduledStartTime}",
  "message" : "Files were copied from #{node.input} to #{node.output}."
}
```

## Sintassi
<a name="snsalarm-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| message | Il testo del corpo della notifica Amazon SNS. | Stringa | 
| role | Il ruolo IAM da utilizzare per creare l'allarme Amazon SNS. | Stringa | 
| subject | L'oggetto del messaggio di notifica di Amazon SNS. | Stringa | 
| topicArn | L'ARN dell'argomento Amazon SNS di destinazione per il messaggio. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| nodo | Il nodo per il quale viene eseguita questa azione. | Oggetto di riferimento, ad esempio «node»: \$1"ref»:» myRunnableObject Id "\$1 | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# Interruzione
<a name="dp-object-terminate"></a>

Un'azione per attivare l'annullamento di un'attività, una risorsa o un nodo di dati in sospeso o incompiuto. AWS Data Pipeline tenta di impostare l'attività, la risorsa o il nodo dati nello stato ANNULLATO se non inizia con il valore. `lateAfterTimeout` 

Non è possibile terminare azioni che includono risorse `onSuccess`, `OnFail` o `onLateAction`.

## Esempio
<a name="terminate-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. In questo esempio, il campo `onLateAction` di `MyActivity` contiene un riferimento all'azione `DefaultAction1`. Quando si fornisce un'azione per `onLateAction`, è necessario fornire un valore `lateAfterTimeout` per indicare il periodo di tempo dall'inizio programmato della pipeline dopo il quale l'attività è considerata in ritardo.

```
{
  "name" : "MyActivity",
  "id" : "DefaultActivity1",
  "schedule" : {
    "ref" : "MySchedule"
  },
  "runsOn" : {
    "ref" : "MyEmrCluster"
  },
  "lateAfterTimeout" : "1 Hours",
  "type" : "EmrActivity",
  "onLateAction" : {
    "ref" : "DefaultAction1"
  },
  "step" : [
    "s3://amzn-s3-demo-bucket/myPath/myStep.jar,firstArg,secondArg",
    "s3://amzn-s3-demo-bucket/myPath/myOtherStep.jar,anotherArg"
  ]
},
{
  "name" : "TerminateTasks",
  "id" : "DefaultAction1",
  "type" : "Terminate"
}
```

## Sintassi
<a name="terminate-syntax"></a>


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| parent | Padre dell'oggetto corrente da cui vengono ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| nodo | Il nodo per il quale viene eseguita questa azione. | Oggetto di riferimento, ad esempio «node»: \$1"ref»:» myRunnableObject Id "\$1 | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'ID della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# Schedule
<a name="dp-object-schedule"></a>

Definisce la temporizzazione di un evento programmato, ad esempio quando si esegue un'attività.

**Nota**  
Quando l'ora di inizio di una pianificazione è AWS Data Pipeline passata, riempie la pipeline e avvia immediatamente le esecuzioni di pianificazione a partire dall'ora di inizio specificata. Per il test/lo sviluppo, utilizzare un intervallo relativamente breve. Altrimenti, AWS Data Pipeline tenta di mettere in coda e pianificare tutte le esecuzioni della pipeline per quell'intervallo. AWS Data Pipeline tenta di prevenire riempimenti accidentali se il componente della pipeline risale a prima di 1 giorno fa `scheduledStartTime` bloccando l'attivazione della pipeline.

## Esempi
<a name="schedule-example"></a>

Di seguito è illustrato un esempio di questo tipo di oggetto. Definisce una pianificazione per ogni ora, a partire da 00:00:00 il 2012-09-01 e finisce alle 00:00:00 il 2012-10-01. Il primo periodo termina alle 01:00:00 il 2012-09-01.

```
{
  "id" : "Hourly",
  "type" : "Schedule",
  "period" : "1 hours",
  "startDateTime" : "2012-09-01T00:00:00",
  "endDateTime" : "2012-10-01T00:00:00"
}
```

La pipeline seguente inizierà al `FIRST_ACTIVATION_DATE_TIME` e verrà eseguita ogni ora fino alle 22:00:00 il 2014-04-25.

```
{
     "id": "SchedulePeriod",
     "name": "SchedulePeriod",
     "startAt": "FIRST_ACTIVATION_DATE_TIME",
     "period": "1 hours",
     "type": "Schedule",
     "endDateTime": "2014-04-25T22:00:00"
   }
```

La pipeline seguente inizierà al `FIRST_ACTIVATION_DATE_TIME` e verrà eseguita ogni ora e completata dopo tre occorrenze.

```
{
     "id": "SchedulePeriod",
     "name": "SchedulePeriod",
     "startAt": "FIRST_ACTIVATION_DATE_TIME",
     "period": "1 hours",
     "type": "Schedule",
     "occurrences": "3"
   }
```

La seguente pipeline inizierà alle 22:00:00 il 2014-04-25, verrà eseguita ogni ora e terminerà dopo tre occorrenze.

```
{
     "id": "SchedulePeriod",
     "name": "SchedulePeriod",
     "startDateTime": "2014-04-25T22:00:00",
     "period": "1 hours",
     "type": "Schedule",
     "occurrences": "3"
   }
```

On-demand utilizzando l'oggetto predefinito

```
{
  "name": "Default",
  "resourceRole": "DataPipelineDefaultResourceRole",
  "role": "DataPipelineDefaultRole",
  "scheduleType": "ondemand"
}
```

On-demand con un oggetto di pianificazione esplicita

```
{
  "name": "Default",
  "resourceRole": "DataPipelineDefaultResourceRole",
  "role": "DataPipelineDefaultRole",
  "scheduleType": "ondemand"
},
{
  "name": "DefaultSchedule",
  "type": "Schedule",
  "id": "DefaultSchedule",
  "period": "ONDEMAND_PERIOD",
  "startAt": "ONDEMAND_ACTIVATION_TIME"
},
```

I seguenti esempi illustrano come una pianificazione può essere ereditata dall'oggetto predefinito, essere esplicitamente impostata per l'oggetto o derivare da un riferimento padre:

Pianificazione ereditata da un oggetto predefinito

```
{
  "objects": [
  {       
      "id": "Default",
      "failureAndRerunMode":"cascade",
      "resourceRole": "DataPipelineDefaultResourceRole",
      "role": "DataPipelineDefaultRole",
      "pipelineLogUri": "s3://myLogsbucket",
      "scheduleType": "cron",
      "schedule": {
        "ref": "DefaultSchedule"
      }
   },
   {
      "type": "Schedule",
      "id": "DefaultSchedule",
      "occurrences": "1",
      "period": "1 Day",
      "startAt": "FIRST_ACTIVATION_DATE_TIME"
    },
    { 
      "id": "A_Fresh_NewEC2Instance",
      "type": "Ec2Resource",
      "terminateAfter": "1 Hour"
    },
    {
      "id": "ShellCommandActivity_HelloWorld",
      "runsOn": {
        "ref": "A_Fresh_NewEC2Instance"
      },
      "type": "ShellCommandActivity",
      "command": "echo 'Hello World!'"
    }
  ]
}
```

Pianificazione esplicita sull'oggetto

```
{
  "objects": [
  {       
      "id": "Default",
      "failureAndRerunMode":"cascade",
      "resourceRole": "DataPipelineDefaultResourceRole",
      "role": "DataPipelineDefaultRole",
      "pipelineLogUri": "s3://myLogsbucket",
      "scheduleType": "cron"
      
   },
   {
      "type": "Schedule",
      "id": "DefaultSchedule",
      "occurrences": "1",
      "period": "1 Day",
      "startAt": "FIRST_ACTIVATION_DATE_TIME"
    },
    { 
      "id": "A_Fresh_NewEC2Instance",
      "type": "Ec2Resource",
      "terminateAfter": "1 Hour"
    },
    {
      "id": "ShellCommandActivity_HelloWorld",
      "runsOn": {
        "ref": "A_Fresh_NewEC2Instance"
      },
      "schedule": {
        "ref": "DefaultSchedule"
      },
      "type": "ShellCommandActivity",
      "command": "echo 'Hello World!'"
    }
  ]
}
```

Pianificazione da un riferimento padre

```
{
  "objects": [
  {       
      "id": "Default",
      "failureAndRerunMode":"cascade",
      "resourceRole": "DataPipelineDefaultResourceRole",
      "role": "DataPipelineDefaultRole",
      "pipelineLogUri": "s3://myLogsbucket",
      "scheduleType": "cron"
      
   },
   {       
      "id": "parent1",
      "schedule": {
        "ref": "DefaultSchedule"
      }
      
   },
   {
      "type": "Schedule",
      "id": "DefaultSchedule",
      "occurrences": "1",
      "period": "1 Day",
      "startAt": "FIRST_ACTIVATION_DATE_TIME"
    },
    { 
      "id": "A_Fresh_NewEC2Instance",
      "type": "Ec2Resource",
      "terminateAfter": "1 Hour"
    },
    {
      "id": "ShellCommandActivity_HelloWorld",
      "runsOn": {
        "ref": "A_Fresh_NewEC2Instance"
      },
      "parent": {
        "ref": "parent1"
      },
      "type": "ShellCommandActivity",
      "command": "echo 'Hello World!'"
    }
  ]
}
```

## Sintassi
<a name="schedule-syntax"></a>


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| punto | Frequenza di esecuzione della pipeline. Il formato è "N [minuti\$1ore\$1giorni\$1settimane\$1mesi]", dove N è un numero seguito da uno degli specificatori di tempo. Ad esempio, "15 minuti" esegue la pipeline ogni 15 minuti. La durata minima è pari a 15 minuti, mentre la durata massima è di 3 anni. | Periodo | 

 


****  

| Gruppo richiesto (uno dei seguenti è obbligatorio) | Description | Tipo di slot | 
| --- | --- | --- | 
| startAt | La data e l'ora in cui avviare l'esecuzione della pipeline programmata. Il valore valido è FIRST\$1ACTIVATION\$1DATE\$1TIME, che viene sostituito dalla creazione di una pipeline on demand. | Enumerazione | 
| startDateTime | La data e l'ora di avvio delle esecuzioni programmate. È necessario utilizzare uno startDateTime o startAt ma non entrambi. | DateTime | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| endDateTime | La data e l'ora in cui terminare le esecuzioni programmate. Deve essere una data e un'ora successive al valore di startDateTime o startAt. Il comportamento predefinito è quello di pianificare l'esecuzione finché la pipeline non viene terminata.  | DateTime | 
| occorrenze | Il numero di volte in cui eseguire la pipeline quando viene attivata. Non è possibile utilizzare le occorrenze con. endDateTime | Numero intero | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @firstActivationTime | L'ora della creazione di oggetti. | DateTime | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

# Utilità
<a name="dp-object-utilities"></a>

I seguenti oggetti della utility configurano altri oggetti della pipeline:

**Topics**
+ [ShellScriptConfig](dp-object-shellscriptconfig.md)
+ [EmrConfiguration](dp-object-emrconfiguration.md)
+ [Proprietà](dp-object-property.md)

# ShellScriptConfig
<a name="dp-object-shellscriptconfig"></a>

Da utilizzare con un'attività per eseguire uno script di shell per preActivityTask Config e postActivityTask Config. Questo oggetto è disponibile per [HadoopActivity](dp-object-hadoopactivity.md), [HiveActivity[HiveCopyActivity](dp-object-hivecopyactivity.md)](dp-object-hiveactivity.md), e. [PigActivity](dp-object-pigactivity.md) Specificare un URI S3 e un elenco di argomenti per lo script.

## Esempio
<a name="shellscriptconfig-example"></a>

A ShellScriptConfig con argomenti:

```
{
   "id" : "ShellScriptConfig_1”,
   "name" : “prescript”,
   "type" : "ShellScriptConfig",
   "scriptUri": “s3://my-bucket/shell-cleanup.sh”,
   "scriptArgument" : ["arg1","arg2"]
 }
```

## Sintassi
<a name="shellscriptconfig-syntax"></a>

Questo oggetto include i campi seguenti.


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| parent | Padre dell'oggetto corrente da cui vengono ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| scriptArgument | Un elenco di argomenti da utilizzare con lo script della shell. | Stringa | 
| scriptUri | L'URI dello script in Amazon S3 che deve essere scaricato ed eseguito. | Stringa | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'ID della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

# EmrConfiguration
<a name="dp-object-emrconfiguration"></a>

L' EmrConfiguration oggetto è la configurazione utilizzata per i cluster EMR con versioni 4.0.0 o successive. Le configurazioni (sotto forma di elenco) sono un parametro per la chiamata API. RunJobFlow L'API di configurazione per Amazon EMR richiede una classificazione e proprietà. AWS Data Pipeline utilizza EmrConfiguration con gli oggetti Property corrispondenti per configurare un'[EmrCluster](dp-object-emrcluster.md)applicazione come Hadoop, Hive, Spark o Pig su cluster EMR avviati in un'esecuzione di pipeline. Poiché la configurazione può essere modificata solo per i nuovi cluster, non è possibile fornire un oggetto per le risorse esistenti. EmrConfiguration Per ulteriori informazioni, consulta [https://docs.aws.amazon.com/ElasticMapReduce/latest/ReleaseGuide/](https://docs.aws.amazon.com/ElasticMapReduce/latest/ReleaseGuide/).

## Esempio
<a name="emrconfiguration-example"></a>

Il seguente oggetto di configurazione imposta le proprietà `io.file.buffer.size` e `fs.s3.block.size` in `core-site.xml`:

```
[
   {  
      "classification":"core-site",
      "properties":
      {
         "io.file.buffer.size": "4096",
         "fs.s3.block.size": "67108864"
      }
   }
]
```

La definizione dell'oggetto pipeline corrispondente utilizza un EmrConfiguration oggetto e un elenco di oggetti Property nel `property` campo:

```
{
  "objects": [
    {
      "name": "ReleaseLabelCluster",
      "releaseLabel": "emr-4.1.0",
      "applications": ["spark", "hive", "pig"],
      "id": "ResourceId_I1mCc",
      "type": "EmrCluster",
      "configuration": {
        "ref": "coresite"
      }
    },
    {
      "name": "coresite",
      "id": "coresite",
      "type": "EmrConfiguration",
      "classification": "core-site",
      "property": [{
        "ref": "io-file-buffer-size"
      },
      {
        "ref": "fs-s3-block-size"
      }
      ]
    },
    {
      "name": "io-file-buffer-size",
      "id": "io-file-buffer-size",
      "type": "Property",
      "key": "io.file.buffer.size",
      "value": "4096"
    },
    {
      "name": "fs-s3-block-size",
      "id": "fs-s3-block-size",
      "type": "Property",
      "key": "fs.s3.block.size",
      "value": "67108864"
    }
  ]
}
```

L'esempio seguente è una configurazione nidificata utilizzata per impostare l'ambiente Hadoop con la classificazione `hadoop-env`:

```
[
  {
    "classification": "hadoop-env",
    "properties": {},
    "configurations": [
      {
        "classification": "export",
        "properties": {
          "YARN_PROXYSERVER_HEAPSIZE": "2396"
        }
      }
    ]
  }
]
```

L'oggetto di definizione corrispondente della pipeline che utilizza questa configurazione è il seguente:

```
{
  "objects": [
    {
      "name": "ReleaseLabelCluster",
      "releaseLabel": "emr-4.0.0",
      "applications": ["spark", "hive", "pig"],
      "id": "ResourceId_I1mCc",
      "type": "EmrCluster",
      "configuration": {
        "ref": "hadoop-env"
      }
    },
    {
      "name": "hadoop-env",
      "id": "hadoop-env",
      "type": "EmrConfiguration",
      "classification": "hadoop-env",
      "configuration": {
        "ref": "export"
      }
    },
    {
      "name": "export",
      "id": "export",
      "type": "EmrConfiguration",
      "classification": "export",
      "property": {
        "ref": "yarn-proxyserver-heapsize"
      }
    },
    {
      "name": "yarn-proxyserver-heapsize",
      "id": "yarn-proxyserver-heapsize",
      "type": "Property",
      "key": "YARN_PROXYSERVER_HEAPSIZE",
      "value": "2396"
    },
  ]
}
```

L'esempio seguente modifica una proprietà specifica di Hive per un cluster EMR:

```
{
    "objects": [
        {
            "name": "hivesite",
            "id": "hivesite",
            "type": "EmrConfiguration",
            "classification": "hive-site",
            "property": [
                {
                    "ref": "hive-client-timeout"
                }
            ]
        },
        {
            "name": "hive-client-timeout",
            "id": "hive-client-timeout",
            "type": "Property",
            "key": "hive.metastore.client.socket.timeout",
            "value": "2400s"
        }
    ]
}
```

## Sintassi
<a name="emrconfiguration-syntax"></a>

Questo oggetto include i campi seguenti.


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| classificazione | Classificazione della configurazione. | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| configurazione | Sottoconfigurazione per questa configurazione. | Oggetto di riferimento, ad esempio «configuration»: \$1"ref»:» Id "\$1 myEmrConfiguration | 
| parent | Padre dell'oggetto corrente da cui saranno ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 
| property | Proprietà di configurazione. | Oggetto di riferimento, ad esempio «property»: \$1"ref»:» myPropertyId «\$1 | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato | Stringa | 
| @pipelineId | L'id della pipeline a cui appartiene questo oggetto | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects | Stringa | 

## Vedi anche
<a name="emrconfiguration-seealso"></a>
+ [EmrCluster](dp-object-emrcluster.md)
+ [Proprietà](dp-object-property.md)
+ [Guida al rilascio di Amazon EMR](https://docs.aws.amazon.com/ElasticMapReduce/latest/ReleaseGuide/)

# Proprietà
<a name="dp-object-property"></a>

Una singola proprietà chiave-valore da utilizzare con un EmrConfiguration oggetto.

## Esempio
<a name="property-example"></a>

La seguente definizione della pipeline mostra un EmrConfiguration oggetto e gli oggetti Property corrispondenti per lanciare un: EmrCluster

```
{
  "objects": [
    {
      "name": "ReleaseLabelCluster",
      "releaseLabel": "emr-4.1.0",
      "applications": ["spark", "hive", "pig"],
      "id": "ResourceId_I1mCc",
      "type": "EmrCluster",
      "configuration": {
        "ref": "coresite"
      }
    },
    {
      "name": "coresite",
      "id": "coresite",
      "type": "EmrConfiguration",
      "classification": "core-site",
      "property": [{
        "ref": "io-file-buffer-size"
      },
      {
        "ref": "fs-s3-block-size"
      }
      ]
    },
    {
      "name": "io-file-buffer-size",
      "id": "io-file-buffer-size",
      "type": "Property",
      "key": "io.file.buffer.size",
      "value": "4096"
    },
    {
      "name": "fs-s3-block-size",
      "id": "fs-s3-block-size",
      "type": "Property",
      "key": "fs.s3.block.size",
      "value": "67108864"
    }
  ]
}
```

## Sintassi
<a name="property-syntax"></a>

Questo oggetto include i campi seguenti.


****  

| Campi obbligatori | Description | Tipo di slot | 
| --- | --- | --- | 
| Chiave | key | Stringa | 
| value | value | Stringa | 

 


****  

| Campi opzionali | Description | Tipo di slot | 
| --- | --- | --- | 
| parent | Padre dell'oggetto corrente da cui vengono ereditati gli slot. | Oggetto di riferimento, ad esempio «parent»: \$1"ref»:» myBaseObject Id "\$1 | 

 


****  

| Campi Runtime | Description | Tipo di slot | 
| --- | --- | --- | 
| @version | Versione della pipeline con cui l'oggetto è stato creato. | Stringa | 

 


****  

| Campi di sistema | Description | Tipo di slot | 
| --- | --- | --- | 
| @error | Errore che descrive il formato oggetto errato. | Stringa | 
| @pipelineId | L'ID della pipeline a cui appartiene questo oggetto. | Stringa | 
| @sphere | La sfera di un oggetto indica la propria posizione nel ciclo di vita: i Component Objects generano Instance Objects che eseguono Attempt Objects. | Stringa | 

## Vedi anche
<a name="property-seealso"></a>
+ [EmrCluster](dp-object-emrcluster.md)
+ [EmrConfiguration](dp-object-emrconfiguration.md)
+ [Guida al rilascio di Amazon EMR](https://docs.aws.amazon.com/ElasticMapReduce/latest/ReleaseGuide/)