Skip to content

/AWS1/CL_RDS=>CREATEDBSHARDGROUP()

About CreateDBShardGroup

Creates a new DB shard group for Aurora Limitless Database. You must enable Aurora Limitless Database to create a DB shard group.

Valid for: Aurora DB clusters only

Method Signature

IMPORTING

Required arguments:

iv_dbshardgroupidentifier TYPE /AWS1/RDSSTRING /AWS1/RDSSTRING

The name of the DB shard group.

iv_dbclusteridentifier TYPE /AWS1/RDSSTRING /AWS1/RDSSTRING

The name of the primary DB cluster for the DB shard group.

iv_maxacu TYPE /AWS1/RT_DOUBLE_AS_STRING /AWS1/RT_DOUBLE_AS_STRING

The maximum capacity of the DB shard group in Aurora capacity units (ACUs).

Optional arguments:

iv_computeredundancy TYPE /AWS1/RDSINTEGEROPTIONAL /AWS1/RDSINTEGEROPTIONAL

Specifies whether to create standby standby DB data access shard for the DB shard group. Valid values are the following:

  • 0 - Creates a DB shard group without a standby DB data access shard. This is the default value.

  • 1 - Creates a DB shard group with a standby DB data access shard in a different Availability Zone (AZ).

  • 2 - Creates a DB shard group with two standby DB data access shard in two different AZs.

iv_minacu TYPE /AWS1/RT_DOUBLE_AS_STRING /AWS1/RT_DOUBLE_AS_STRING

The minimum capacity of the DB shard group in Aurora capacity units (ACUs).

iv_publiclyaccessible TYPE /AWS1/RDSBOOLEANOPTIONAL /AWS1/RDSBOOLEANOPTIONAL

Specifies whether the DB shard group is publicly accessible.

When the DB shard group is publicly accessible, its Domain Name System (DNS) endpoint resolves to the private IP address from within the DB shard group's virtual private cloud (VPC). It resolves to the public IP address from outside of the DB shard group's VPC. Access to the DB shard group is ultimately controlled by the security group it uses. That public access is not permitted if the security group assigned to the DB shard group doesn't permit it.

When the DB shard group isn't publicly accessible, it is an internal DB shard group with a DNS name that resolves to a private IP address.

Default: The default behavior varies depending on whether DBSubnetGroupName is specified.

If DBSubnetGroupName isn't specified, and PubliclyAccessible isn't specified, the following applies:

  • If the default VPC in the target Region doesn’t have an internet gateway attached to it, the DB shard group is private.

  • If the default VPC in the target Region has an internet gateway attached to it, the DB shard group is public.

If DBSubnetGroupName is specified, and PubliclyAccessible isn't specified, the following applies:

  • If the subnets are part of a VPC that doesn’t have an internet gateway attached to it, the DB shard group is private.

  • If the subnets are part of a VPC that has an internet gateway attached to it, the DB shard group is public.

it_tags TYPE /AWS1/CL_RDSTAG=>TT_TAGLIST TT_TAGLIST

Tags

RETURNING

oo_output TYPE REF TO /aws1/cl_rdsdbshardgroup /AWS1/CL_RDSDBSHARDGROUP

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->/aws1/if_rds~createdbshardgroup(
  it_tags = VALUE /aws1/cl_rdstag=>tt_taglist(
    (
      new /aws1/cl_rdstag(
        iv_key = |string|
        iv_value = |string|
      )
    )
  )
  iv_computeredundancy = 123
  iv_dbclusteridentifier = |string|
  iv_dbshardgroupidentifier = |string|
  iv_maxacu = |0.1|
  iv_minacu = |0.1|
  iv_publiclyaccessible = ABAP_TRUE
).

This is an example of reading all possible response values

lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv_string = lo_result->get_dbshardgroupresourceid( ).
  lv_dbshardgroupidentifier = lo_result->get_dbshardgroupidentifier( ).
  lv_string = lo_result->get_dbclusteridentifier( ).
  lv_doubleoptional = lo_result->get_maxacu( ).
  lv_doubleoptional = lo_result->get_minacu( ).
  lv_integeroptional = lo_result->get_computeredundancy( ).
  lv_string = lo_result->get_status( ).
  lv_booleanoptional = lo_result->get_publiclyaccessible( ).
  lv_string = lo_result->get_endpoint( ).
  lv_string = lo_result->get_dbshardgrouparn( ).
  LOOP AT lo_result->get_taglist( ) into lo_row.
    lo_row_1 = lo_row.
    IF lo_row_1 IS NOT INITIAL.
      lv_string = lo_row_1->get_key( ).
      lv_string = lo_row_1->get_value( ).
    ENDIF.
  ENDLOOP.
ENDIF.