Skip to content

/AWS1/IF_GLU=>CREATEDEVENDPOINT()

About CreateDevEndpoint

Creates a new development endpoint.

Method Signature

METHODS /AWS1/IF_GLU~CREATEDEVENDPOINT
  IMPORTING
    !IV_ENDPOINTNAME TYPE /AWS1/GLUGENERICSTRING OPTIONAL
    !IV_ROLEARN TYPE /AWS1/GLUROLEARN OPTIONAL
    !IT_SECURITYGROUPIDS TYPE /AWS1/CL_GLUSTRINGLIST_W=>TT_STRINGLIST OPTIONAL
    !IV_SUBNETID TYPE /AWS1/GLUGENERICSTRING OPTIONAL
    !IV_PUBLICKEY TYPE /AWS1/GLUGENERICSTRING OPTIONAL
    !IT_PUBLICKEYS TYPE /AWS1/CL_GLUPUBLICKEYSLIST_W=>TT_PUBLICKEYSLIST OPTIONAL
    !IV_NUMBEROFNODES TYPE /AWS1/GLUINTEGERVALUE OPTIONAL
    !IV_WORKERTYPE TYPE /AWS1/GLUWORKERTYPE OPTIONAL
    !IV_GLUEVERSION TYPE /AWS1/GLUGLUEVERSIONSTRING OPTIONAL
    !IV_NUMBEROFWORKERS TYPE /AWS1/GLUNULLABLEINTEGER OPTIONAL
    !IV_EXTRAPYTHONLIBSS3PATH TYPE /AWS1/GLUGENERICSTRING OPTIONAL
    !IV_EXTRAJARSS3PATH TYPE /AWS1/GLUGENERICSTRING OPTIONAL
    !IV_SECURITYCONFIGURATION TYPE /AWS1/GLUNAMESTRING OPTIONAL
    !IT_TAGS TYPE /AWS1/CL_GLUTAGSMAP_W=>TT_TAGSMAP OPTIONAL
    !IT_ARGUMENTS TYPE /AWS1/CL_GLUMAPVALUE_W=>TT_MAPVALUE OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_glucreatedevendptrsp
  RAISING
    /AWS1/CX_GLUACCESSDENIEDEX
    /AWS1/CX_GLUALREADYEXISTSEX
    /AWS1/CX_GLUIDEMPOTENTPRMMIS00
    /AWS1/CX_GLUINTERNALSERVICEEX
    /AWS1/CX_GLUINVALIDINPUTEX
    /AWS1/CX_GLUOPERATIONTIMEOUTEX
    /AWS1/CX_GLURESRCNUMLMTEXCDEX
    /AWS1/CX_GLUVALIDATIONEX
    /AWS1/CX_GLUCLIENTEXC
    /AWS1/CX_GLUSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.

IMPORTING

Required arguments:

iv_endpointname TYPE /AWS1/GLUGENERICSTRING /AWS1/GLUGENERICSTRING

The name to be assigned to the new DevEndpoint.

iv_rolearn TYPE /AWS1/GLUROLEARN /AWS1/GLUROLEARN

The IAM role for the DevEndpoint.

Optional arguments:

it_securitygroupids TYPE /AWS1/CL_GLUSTRINGLIST_W=>TT_STRINGLIST TT_STRINGLIST

Security group IDs for the security groups to be used by the new DevEndpoint.

iv_subnetid TYPE /AWS1/GLUGENERICSTRING /AWS1/GLUGENERICSTRING

The subnet ID for the new DevEndpoint to use.

iv_publickey TYPE /AWS1/GLUGENERICSTRING /AWS1/GLUGENERICSTRING

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.

it_publickeys TYPE /AWS1/CL_GLUPUBLICKEYSLIST_W=>TT_PUBLICKEYSLIST TT_PUBLICKEYSLIST

A list of public keys to be used by the development endpoints for authentication. The use of 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 with the public key content in the deletePublicKeys attribute, and the list of new keys in the addPublicKeys attribute.

iv_numberofnodes TYPE /AWS1/GLUINTEGERVALUE /AWS1/GLUINTEGERVALUE

The number of Glue Data Processing Units (DPUs) to allocate to this DevEndpoint.

iv_workertype TYPE /AWS1/GLUWORKERTYPE /AWS1/GLUWORKERTYPE

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.

iv_glueversion TYPE /AWS1/GLUGLUEVERSIONSTRING /AWS1/GLUGLUEVERSIONSTRING

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.

iv_numberofworkers TYPE /AWS1/GLUNULLABLEINTEGER /AWS1/GLUNULLABLEINTEGER

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.

iv_extrapythonlibss3path TYPE /AWS1/GLUGENERICSTRING /AWS1/GLUGENERICSTRING

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 yet supported.

iv_extrajarss3path TYPE /AWS1/GLUGENERICSTRING /AWS1/GLUGENERICSTRING

The path to one or more Java .jar files in an S3 bucket that should be loaded in your DevEndpoint.

iv_securityconfiguration TYPE /AWS1/GLUNAMESTRING /AWS1/GLUNAMESTRING

The name of the SecurityConfiguration structure to be used with this DevEndpoint.

it_tags TYPE /AWS1/CL_GLUTAGSMAP_W=>TT_TAGSMAP TT_TAGSMAP

The tags to use with this DevEndpoint. You may use tags to limit access to the DevEndpoint. For more information about tags in Glue, see Amazon Web Services Tags in Glue in the developer guide.

it_arguments TYPE /AWS1/CL_GLUMAPVALUE_W=>TT_MAPVALUE TT_MAPVALUE

A map of arguments used to configure the DevEndpoint.

RETURNING

oo_output TYPE REF TO /aws1/cl_glucreatedevendptrsp /AWS1/CL_GLUCREATEDEVENDPTRSP

Domain /AWS1/RT_ACCOUNT_ID
Primitive Type NUMC

Examples

Syntax Example

This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.

DATA(lo_result) = lo_client->createdevendpoint(
  it_arguments = VALUE /aws1/cl_glumapvalue_w=>tt_mapvalue(
    (
      VALUE /aws1/cl_glumapvalue_w=>ts_mapvalue_maprow(
        value = new /aws1/cl_glumapvalue_w( |string| )
        key = |string|
      )
    )
  )
  it_publickeys = VALUE /aws1/cl_glupublickeyslist_w=>tt_publickeyslist(
    ( new /aws1/cl_glupublickeyslist_w( |string| ) )
  )
  it_securitygroupids = VALUE /aws1/cl_glustringlist_w=>tt_stringlist(
    ( new /aws1/cl_glustringlist_w( |string| ) )
  )
  it_tags = VALUE /aws1/cl_glutagsmap_w=>tt_tagsmap(
    (
      VALUE /aws1/cl_glutagsmap_w=>ts_tagsmap_maprow(
        value = new /aws1/cl_glutagsmap_w( |string| )
        key = |string|
      )
    )
  )
  iv_endpointname = |string|
  iv_extrajarss3path = |string|
  iv_extrapythonlibss3path = |string|
  iv_glueversion = |string|
  iv_numberofnodes = 123
  iv_numberofworkers = 123
  iv_publickey = |string|
  iv_rolearn = |string|
  iv_securityconfiguration = |string|
  iv_subnetid = |string|
  iv_workertype = |string|
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_genericstring = lo_result->get_endpointname( ).
  lv_genericstring = lo_result->get_status( ).
  LOOP AT lo_result->get_securitygroupids( ) into lo_row.
    lo_row_1 = lo_row.
    IF lo_row_1 IS NOT INITIAL.
      lv_genericstring = lo_row_1->get_value( ).
    ENDIF.
  ENDLOOP.
  lv_genericstring = lo_result->get_subnetid( ).
  lv_rolearn = lo_result->get_rolearn( ).
  lv_genericstring = lo_result->get_yarnendpointaddress( ).
  lv_integervalue = lo_result->get_zeppelinremotesparkint00( ).
  lv_integervalue = lo_result->get_numberofnodes( ).
  lv_workertype = lo_result->get_workertype( ).
  lv_glueversionstring = lo_result->get_glueversion( ).
  lv_nullableinteger = lo_result->get_numberofworkers( ).
  lv_genericstring = lo_result->get_availabilityzone( ).
  lv_genericstring = lo_result->get_vpcid( ).
  lv_genericstring = lo_result->get_extrapythonlibss3path( ).
  lv_genericstring = lo_result->get_extrajarss3path( ).
  lv_genericstring = lo_result->get_failurereason( ).
  lv_namestring = lo_result->get_securityconfiguration( ).
  lv_timestampvalue = lo_result->get_createdtimestamp( ).
  LOOP AT lo_result->get_arguments( ) into ls_row_2.
    lv_key = ls_row_2-key.
    lo_value = ls_row_2-value.
    IF lo_value IS NOT INITIAL.
      lv_genericstring = lo_value->get_value( ).
    ENDIF.
  ENDLOOP.
ENDIF.