EmrConfiguration - AWS Data Pipeline

AWS Data Pipeline 不再提供給新客戶。現有客戶 AWS Data Pipeline 可繼續正常使用此服務。進一步了解

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

EmrConfiguration

該 EmrConfiguration 對象是用於版本 4.0.0 或更高版本的EMR集群的配置。配置(作為列表)是 RunJobFlow API調用的參數。Amazon API 的配置EMR採用分類和屬性。 AWS Data Pipeline EmrConfiguration 與對應的 Property 對象一起使用配置應用EmrCluster程序,如 Hadoop,蜂巢,星火或豬在管道執行中啟動的EMR集群。由於只能變更新叢集的組態,因此您無法為現有資源提供 EmrConfiguration 物件。如需詳細資訊,請參閱https://docs.aws.amazon.com/ElasticMapReduce/latest/ReleaseGuide/

範例

以下組態物件會設定 core-site.xml 中的 io.file.buffer.sizefs.s3.block.size 屬性:

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

對應的管線物件定義會在property欄位中使用 EmrConfiguration 物件和 Property 物件清單:

{ "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" } ] }

以下範例是一個巢狀組態,使用 hadoop-env 分類設定 Hadoop 環境:

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

以下是使用此組態的對應管道定義物件:

{ "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" }, ] }

下列範例會修改叢集的 Hive 特定內容: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" } ] }

語法

此物件包含以下欄位。

必要欄位 描述 槽類型
分類 組態的分類。 字串

選用欄位 描述 槽類型
組態 此組態的子組態。 引用對象,例如「配置」:{「ref」:「myEmrConfigurationId」}
parent 目前物件的父系,其插槽會被繼承。 引用對象,例如「父」:{「ref」:「myBaseObjectID」}
屬性 組態屬性。 引用對象,例如「屬性」:{「ref」:」myPropertyId「}

執行時間欄位 描述 槽類型
@version 建立物件使用的管道版本。 字串

系統欄位 描述 槽類型
@error 描述格式錯誤物件的錯誤 字串
@pipelineId 此物件所屬管道的 ID 字串
@sphere 物件範圍代表其在生命週期中的位置:Component 物件會引發執行 Attempt 物件的 Instance 物件 字串

另請參閱