Skip to content

API for EMR Serverless

ABAP Package /AWS1/API_EMS_IMPL
ABAP SDK "TLA" EMS
ABAP Interface /AWS1/IF_EMS

The "TLA" is a Three Letter Abbreviation that appears in ABAP class names, data dictionary objects and other ABAP objects throughout the AWS SDK for SAP ABAP. The TLA for EMR Serverless is EMS. This TLA helps squeeze ABAP objects into the 30-character length limit of the ABAP data dictionary.

Installation

To install the AWS SDK for SAP ABAP, import the Core transport, along with the transport for the EMR Serverless module and other API modules you are interested in. A few modules are included in the Core transport itself. For more information, see the Developer Guide guide.

About The Service

Amazon EMR Serverless is a new deployment option for Amazon EMR. Amazon EMR Serverless provides a serverless runtime environment that simplifies running analytics applications using the latest open source frameworks such as Apache Spark and Apache Hive. With Amazon EMR Serverless, you don’t have to configure, optimize, secure, or operate clusters to run applications with these frameworks.

The API reference to Amazon EMR Serverless is emr-serverless. The emr-serverless prefix is used in the following scenarios:

  • It is the prefix in the CLI commands for Amazon EMR Serverless. For example, aws emr-serverless start-job-run.

  • It is the prefix before IAM policy actions for Amazon EMR Serverless. For example, "Action": ["emr-serverless:StartJobRun"]. For more information, see Policy actions for Amazon EMR Serverless.

  • It is the prefix used in Amazon EMR Serverless service endpoints. For example, emr-serverless.us-east-2.amazonaws.com.

Using the SDK

In your code, create a client using the SDK module for EMR Serverless, which is created with factory method /AWS1/CL_EMS_FACTORY=>create(). In this example we will assume you have configured an SDK profile in transaction /AWS1/IMG called ZFINANCE.

DATA(go_session)   = /aws1/cl_rt_session_aws=>create( 'ZFINANCE' ).
DATA(go_ems)       = /aws1/cl_ems_factory=>create( go_session ).

Your variable go_ems is an instance of /AWS1/IF_EMS, and all of the operations in the EMR Serverless service are accessed by calling methods in /AWS1/IF_EMS.

API Operations

For an overview of ABAP method calls corresponding to API operations in EMR Serverless, see the Operation List.

Factory Method

/AWS1/CL_EMS_FACTORY=>create( )

Creates an object of type /AWS1/IF_EMS.

IMPORTING

Optional arguments:

IV_PROTOCOL TYPE /AWS1/RT_PROTOCOL /AWS1/RT_PROTOCOL

IO_SESSION TYPE REF TO /AWS1/CL_RT_SESSION_BASE /AWS1/CL_RT_SESSION_BASE

IV_REGION TYPE /AWS1/RT_REGION_ID /AWS1/RT_REGION_ID

IV_CUSTOM_ENDPOINT TYPE /AWS1/RT_ENDPOINT /AWS1/RT_ENDPOINT

RETURNING

OO_CLIENT TYPE REF TO /AWS1/IF_EMS /AWS1/IF_EMS

/AWS1/IF_EMS represents the ABAP client for the EMR Serverless service, representing each operation as a method call. For more information see the API Page page.

Configuring Programmatically

DATA(lo_config) = DATA(go_ems)->get_config( ).

lo_config is a variable of type /AWS1/CL_EMS_CONFIG. See the documentation for /AWS1/CL_EMS_CONFIG for details on the settings that can be configured.

Paginators

Paginators for EMR Serverless can be created via get_paginator() which returns a paginator object of type /AWS1/IF_EMS_PAGINATOR. The operation method that is being paginated is called using the paginator object, which accepts any necessary parameters to provide to the underlying API operation. This returns an iterator object which can be used to iterate over paginated results using has_next() and get_next() methods.

Details about the paginator methods available for service EMR Serverless can be found in interface /AWS1/IF_EMS_PAGINATOR.