/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the glue-2017-03-31.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.Glue.Model { /// /// A development endpoint where a developer can remotely debug extract, transform, and /// load (ETL) scripts. /// public partial class DevEndpoint { private Dictionary _arguments = new Dictionary(); private string _availabilityZone; private DateTime? _createdTimestamp; private string _endpointName; private string _extraJarsS3Path; private string _extraPythonLibsS3Path; private string _failureReason; private string _glueVersion; private DateTime? _lastModifiedTimestamp; private string _lastUpdateStatus; private int? _numberOfNodes; private int? _numberOfWorkers; private string _privateAddress; private string _publicAddress; private string _publicKey; private List _publicKeys = new List(); private string _roleArn; private string _securityConfiguration; private List _securityGroupIds = new List(); private string _status; private string _subnetId; private string _vpcId; private WorkerType _workerType; private string _yarnEndpointAddress; private int? _zeppelinRemoteSparkInterpreterPort; /// /// Gets and sets the property Arguments. /// /// A map of arguments used to configure the DevEndpoint. /// /// /// /// Valid arguments are: /// ///
  • /// /// "--enable-glue-datacatalog": "" /// ///
/// /// You can specify a version of Python support for development endpoints by using the /// Arguments parameter in the CreateDevEndpoint or UpdateDevEndpoint /// APIs. If no arguments are provided, the version defaults to Python 2. /// ///
[AWSProperty(Min=0, Max=100)] public Dictionary Arguments { get { return this._arguments; } set { this._arguments = value; } } // Check to see if Arguments property is set internal bool IsSetArguments() { return this._arguments != null && this._arguments.Count > 0; } /// /// Gets and sets the property AvailabilityZone. /// /// The Amazon Web Services Availability Zone where this DevEndpoint is located. /// /// public string AvailabilityZone { get { return this._availabilityZone; } set { this._availabilityZone = value; } } // Check to see if AvailabilityZone property is set internal bool IsSetAvailabilityZone() { return this._availabilityZone != null; } /// /// Gets and sets the property CreatedTimestamp. /// /// The point in time at which this DevEndpoint was created. /// /// public DateTime CreatedTimestamp { get { return this._createdTimestamp.GetValueOrDefault(); } set { this._createdTimestamp = value; } } // Check to see if CreatedTimestamp property is set internal bool IsSetCreatedTimestamp() { return this._createdTimestamp.HasValue; } /// /// Gets and sets the property EndpointName. /// /// The name of the DevEndpoint. /// /// public string EndpointName { get { return this._endpointName; } set { this._endpointName = value; } } // Check to see if EndpointName property is set internal bool IsSetEndpointName() { return this._endpointName != null; } /// /// Gets and sets the property ExtraJarsS3Path. /// /// The path to one or more Java .jar files in an S3 bucket that should be /// loaded in your DevEndpoint. /// /// /// /// You can only use pure Java/Scala libraries with a DevEndpoint. /// /// /// public string ExtraJarsS3Path { get { return this._extraJarsS3Path; } set { this._extraJarsS3Path = value; } } // Check to see if ExtraJarsS3Path property is set internal bool IsSetExtraJarsS3Path() { return this._extraJarsS3Path != null; } /// /// Gets and sets the property ExtraPythonLibsS3Path. /// /// The paths to one or more Python libraries in an Amazon S3 bucket that should be loaded /// in your DevEndpoint. Multiple values must be complete paths separated /// by a comma. /// /// /// /// You can only use pure Python libraries with a DevEndpoint. Libraries /// that rely on C extensions, such as the pandas /// Python data analysis library, are not currently supported. /// /// /// public string ExtraPythonLibsS3Path { get { return this._extraPythonLibsS3Path; } set { this._extraPythonLibsS3Path = value; } } // Check to see if ExtraPythonLibsS3Path property is set internal bool IsSetExtraPythonLibsS3Path() { return this._extraPythonLibsS3Path != null; } /// /// Gets and sets the property FailureReason. /// /// The reason for a current failure in this DevEndpoint. /// /// public string FailureReason { get { return this._failureReason; } set { this._failureReason = value; } } // Check to see if FailureReason property is set internal bool IsSetFailureReason() { return this._failureReason != null; } /// /// Gets and sets the property GlueVersion. /// /// Glue version determines the versions of Apache Spark and Python that Glue supports. /// The Python version indicates the version supported for running your ETL scripts on /// development endpoints. /// /// /// /// For more information about the available Glue versions and corresponding Spark and /// Python versions, see Glue /// version in the developer guide. /// /// /// /// Development endpoints that are created without specifying a Glue version default to /// Glue 0.9. /// /// /// /// You can specify a version of Python support for development endpoints by using the /// Arguments parameter in the CreateDevEndpoint or UpdateDevEndpoint /// APIs. If no arguments are provided, the version defaults to Python 2. /// /// [AWSProperty(Min=1, Max=255)] public string GlueVersion { get { return this._glueVersion; } set { this._glueVersion = value; } } // Check to see if GlueVersion property is set internal bool IsSetGlueVersion() { return this._glueVersion != null; } /// /// Gets and sets the property LastModifiedTimestamp. /// /// The point in time at which this DevEndpoint was last modified. /// /// public DateTime LastModifiedTimestamp { get { return this._lastModifiedTimestamp.GetValueOrDefault(); } set { this._lastModifiedTimestamp = value; } } // Check to see if LastModifiedTimestamp property is set internal bool IsSetLastModifiedTimestamp() { return this._lastModifiedTimestamp.HasValue; } /// /// Gets and sets the property LastUpdateStatus. /// /// The status of the last update. /// /// public string LastUpdateStatus { get { return this._lastUpdateStatus; } set { this._lastUpdateStatus = value; } } // Check to see if LastUpdateStatus property is set internal bool IsSetLastUpdateStatus() { return this._lastUpdateStatus != null; } /// /// Gets and sets the property NumberOfNodes. /// /// The number of Glue Data Processing Units (DPUs) allocated to this DevEndpoint. /// /// public int NumberOfNodes { get { return this._numberOfNodes.GetValueOrDefault(); } set { this._numberOfNodes = value; } } // Check to see if NumberOfNodes property is set internal bool IsSetNumberOfNodes() { return this._numberOfNodes.HasValue; } /// /// Gets and sets the property NumberOfWorkers. /// /// The number of workers of a defined workerType that are allocated to the /// development endpoint. /// /// /// /// The maximum number of workers you can define are 299 for G.1X, and 149 /// for G.2X. /// /// public int NumberOfWorkers { get { return this._numberOfWorkers.GetValueOrDefault(); } set { this._numberOfWorkers = value; } } // Check to see if NumberOfWorkers property is set internal bool IsSetNumberOfWorkers() { return this._numberOfWorkers.HasValue; } /// /// Gets and sets the property PrivateAddress. /// /// A private IP address to access the DevEndpoint within a VPC if the DevEndpoint /// is created within one. The PrivateAddress field is present only when /// you create the DevEndpoint within your VPC. /// /// public string PrivateAddress { get { return this._privateAddress; } set { this._privateAddress = value; } } // Check to see if PrivateAddress property is set internal bool IsSetPrivateAddress() { return this._privateAddress != null; } /// /// Gets and sets the property PublicAddress. /// /// The public IP address used by this DevEndpoint. The PublicAddress /// field is present only when you create a non-virtual private cloud (VPC) DevEndpoint. /// /// public string PublicAddress { get { return this._publicAddress; } set { this._publicAddress = value; } } // Check to see if PublicAddress property is set internal bool IsSetPublicAddress() { return this._publicAddress != null; } /// /// Gets and sets the property PublicKey. /// /// The public key to be used by this DevEndpoint for authentication. This /// attribute is provided for backward compatibility because the recommended attribute /// to use is public keys. /// /// public string PublicKey { get { return this._publicKey; } set { this._publicKey = value; } } // Check to see if PublicKey property is set internal bool IsSetPublicKey() { return this._publicKey != null; } /// /// Gets and sets the property PublicKeys. /// /// A list of public keys to be used by the DevEndpoints for authentication. /// Using this attribute is preferred over a single public key because the public keys /// allow you to have a different private key per client. /// /// /// /// If you previously created an endpoint with a public key, you must remove that key /// to be able to set a list of public keys. Call the UpdateDevEndpoint API /// operation with the public key content in the deletePublicKeys attribute, /// and the list of new keys in the addPublicKeys attribute. /// /// /// [AWSProperty(Max=5)] public List PublicKeys { get { return this._publicKeys; } set { this._publicKeys = value; } } // Check to see if PublicKeys property is set internal bool IsSetPublicKeys() { return this._publicKeys != null && this._publicKeys.Count > 0; } /// /// Gets and sets the property RoleArn. /// /// The Amazon Resource Name (ARN) of the IAM role used in this DevEndpoint. /// /// public string RoleArn { get { return this._roleArn; } set { this._roleArn = value; } } // Check to see if RoleArn property is set internal bool IsSetRoleArn() { return this._roleArn != null; } /// /// Gets and sets the property SecurityConfiguration. /// /// The name of the SecurityConfiguration structure to be used with this /// DevEndpoint. /// /// [AWSProperty(Min=1, Max=255)] public string SecurityConfiguration { get { return this._securityConfiguration; } set { this._securityConfiguration = value; } } // Check to see if SecurityConfiguration property is set internal bool IsSetSecurityConfiguration() { return this._securityConfiguration != null; } /// /// Gets and sets the property SecurityGroupIds. /// /// A list of security group identifiers used in this DevEndpoint. /// /// public List SecurityGroupIds { get { return this._securityGroupIds; } set { this._securityGroupIds = value; } } // Check to see if SecurityGroupIds property is set internal bool IsSetSecurityGroupIds() { return this._securityGroupIds != null && this._securityGroupIds.Count > 0; } /// /// Gets and sets the property Status. /// /// The current status of this DevEndpoint. /// /// public string Status { get { return this._status; } set { this._status = value; } } // Check to see if Status property is set internal bool IsSetStatus() { return this._status != null; } /// /// Gets and sets the property SubnetId. /// /// The subnet ID for this DevEndpoint. /// /// public string SubnetId { get { return this._subnetId; } set { this._subnetId = value; } } // Check to see if SubnetId property is set internal bool IsSetSubnetId() { return this._subnetId != null; } /// /// Gets and sets the property VpcId. /// /// The ID of the virtual private cloud (VPC) used by this DevEndpoint. /// /// public string VpcId { get { return this._vpcId; } set { this._vpcId = value; } } // Check to see if VpcId property is set internal bool IsSetVpcId() { return this._vpcId != null; } /// /// Gets and sets the property WorkerType. /// /// The type of predefined worker that is allocated to the development endpoint. Accepts /// a value of Standard, G.1X, or G.2X. /// ///
  • /// /// For the Standard worker type, each worker provides 4 vCPU, 16 GB of memory /// and a 50GB disk, and 2 executors per worker. /// ///
  • /// /// For the G.1X worker type, each worker maps to 1 DPU (4 vCPU, 16 GB of /// memory, 64 GB disk), and provides 1 executor per worker. We recommend this worker /// type for memory-intensive jobs. /// ///
  • /// /// For the G.2X worker type, each worker maps to 2 DPU (8 vCPU, 32 GB of /// memory, 128 GB disk), and provides 1 executor per worker. We recommend this worker /// type for memory-intensive jobs. /// ///
/// /// Known issue: when a development endpoint is created with the G.2X WorkerType /// configuration, the Spark drivers for the development endpoint will run on 4 vCPU, /// 16 GB of memory, and a 64 GB disk. /// ///
public WorkerType WorkerType { get { return this._workerType; } set { this._workerType = value; } } // Check to see if WorkerType property is set internal bool IsSetWorkerType() { return this._workerType != null; } /// /// Gets and sets the property YarnEndpointAddress. /// /// The YARN endpoint address used by this DevEndpoint. /// /// public string YarnEndpointAddress { get { return this._yarnEndpointAddress; } set { this._yarnEndpointAddress = value; } } // Check to see if YarnEndpointAddress property is set internal bool IsSetYarnEndpointAddress() { return this._yarnEndpointAddress != null; } /// /// Gets and sets the property ZeppelinRemoteSparkInterpreterPort. /// /// The Apache Zeppelin port for the remote Apache Spark interpreter. /// /// public int ZeppelinRemoteSparkInterpreterPort { get { return this._zeppelinRemoteSparkInterpreterPort.GetValueOrDefault(); } set { this._zeppelinRemoteSparkInterpreterPort = value; } } // Check to see if ZeppelinRemoteSparkInterpreterPort property is set internal bool IsSetZeppelinRemoteSparkInterpreterPort() { return this._zeppelinRemoteSparkInterpreterPort.HasValue; } } }