EmrConfiguration - AWS Data Pipeline

AWS Data Pipeline non è più disponibile per i nuovi clienti. Clienti esistenti di AWS Data Pipeline possono continuare a utilizzare il servizio normalmente. Ulteriori informazioni

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à.

EmrConfiguration

L' EmrConfiguration oggetto è la configurazione utilizzata per EMR i cluster con versioni 4.0.0 o successive. Le configurazioni (sotto forma di elenco) sono un parametro della chiamata. RunJobFlow API La configurazione API per Amazon EMR richiede una classificazione e proprietà. AWS Data Pipeline viene utilizzata EmrConfiguration con gli oggetti Property corrispondenti per configurare un'EmrClusterapplicazione come Hadoop, Hive, Spark o Pig su EMR cluster 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/.

Esempio

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 della 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

Questo oggetto include i campi seguenti.

Campi obbligatori Descrizione Tipo di slot
classificazione Classificazione della configurazione. Stringa

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

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

Campi di sistema Descrizione 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