AWS Data Pipeline n'est plus disponible pour les nouveaux clients. Les clients existants de AWS Data Pipeline peut continuer à utiliser le service normalement. En savoir plus
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
EmrConfiguration
L' EmrConfiguration objet est la configuration utilisée pour les EMR clusters dotés de versions 4.0.0 ou supérieures. Les configurations (sous forme de liste) sont un paramètre de l' RunJobFlow APIappel. La configuration API d'Amazon repose EMR sur une classification et des propriétés. AWS Data Pipeline utilise EmrConfiguration avec les objets Property correspondants pour configurer une EmrCluster application telle que Hadoop, Hive, Spark ou Pig sur des EMR clusters lancés lors d'une exécution de pipeline. Comme la configuration ne peut être modifiée que pour les nouveaux clusters, vous ne pouvez pas fournir d' EmrConfiguration objet pour les ressources existantes. Pour de plus amples informations, veuillez consulter https://docs.aws.amazon.com/ElasticMapReduce/latest/ReleaseGuide/.
Exemple
L'objet de configuration suivant définit les propriétés io.file.buffer.size
et fs.s3.block.size
dans core-site.xml
:
[ { "classification":"core-site", "properties": { "io.file.buffer.size": "4096", "fs.s3.block.size": "67108864" } } ]
La définition d'objet de pipeline correspondante utilise un EmrConfiguration objet et une liste d'objets Property dans le property
champ :
{ "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'exemple suivant illustre une configuration imbriquée utilisée pour définir l'environnement Hadoop avec la classification hadoop-env
:
[ { "classification": "hadoop-env", "properties": {}, "configurations": [ { "classification": "export", "properties": { "YARN_PROXYSERVER_HEAPSIZE": "2396" } } ] } ]
L'objet de définition de pipeline correspondant qui utilise cette configuration se trouve ci-après :
{ "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'exemple suivant modifie une propriété spécifique à Hive pour 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" } ] }
Syntaxe
Cet objet inclut les champs suivants.
Champs obligatoires | Description | Type d'option |
---|---|---|
classification | Classification de la configuration. | Chaîne |
Champs facultatifs | Description | Type d'option |
---|---|---|
configuration | Sous-configuration de la configuration. | Objet de référence, par exemple « configuration » : {"ref » : » myEmrConfiguration Id "} |
parent | Parent de l'objet actuel à partir duquel les emplacements sont hérités. | Objet de référence, par exemple « parent » : {"ref » : » myBaseObject Id "} |
property | Propriété de configuration | Objet de référence, par exemple « property » : {"ref » : » myPropertyId «} |
Champs liés à l'exécution | Description | Type d'option |
---|---|---|
@Version | Version du pipeline avec laquelle l'objet été créé. | Chaîne |
Champs système | Description | Type d'option |
---|---|---|
@error | Erreur décrivant l'objet mal formé. | Chaîne |
@pipelineId | Id du pipeline auquel l'objet appartient. | Chaîne |
@sphere | La sphère d'un objet désigne sa place dans le cycle de vie : les objets « composant » entraînent les objets « instance » qui exécutent les objets « tentative » | Chaîne |