/AWS1/IF_NEP=>CREATEDBCLUSTER()¶
About CreateDBCluster¶
Creates a new Amazon Neptune DB cluster.
You can use the ReplicationSourceIdentifier parameter to create the DB
cluster as a Read Replica of another DB cluster or Amazon Neptune DB instance.
Note that when you create a new cluster using CreateDBCluster directly,
deletion protection is disabled by default (when you create a new production cluster in
the console, deletion protection is enabled by default). You can only delete a DB
cluster if its DeletionProtection field is set to false.
Method Signature¶
METHODS /AWS1/IF_NEP~CREATEDBCLUSTER
IMPORTING
!IT_AVAILABILITYZONES TYPE /AWS1/CL_NEPAZS_W=>TT_AVAILABILITYZONES OPTIONAL
!IV_BACKUPRETENTIONPERIOD TYPE /AWS1/NEPINTEGEROPTIONAL OPTIONAL
!IV_CHARACTERSETNAME TYPE /AWS1/NEPSTRING OPTIONAL
!IV_COPYTAGSTOSNAPSHOT TYPE /AWS1/NEPBOOLEANOPTIONAL OPTIONAL
!IV_DATABASENAME TYPE /AWS1/NEPSTRING OPTIONAL
!IV_DBCLUSTERIDENTIFIER TYPE /AWS1/NEPSTRING OPTIONAL
!IV_DBCLUSTERPARAMGROUPNAME TYPE /AWS1/NEPSTRING OPTIONAL
!IT_VPCSECURITYGROUPIDS TYPE /AWS1/CL_NEPVPCSECGRPIDLIST_W=>TT_VPCSECURITYGROUPIDLIST OPTIONAL
!IV_DBSUBNETGROUPNAME TYPE /AWS1/NEPSTRING OPTIONAL
!IV_ENGINE TYPE /AWS1/NEPSTRING OPTIONAL
!IV_ENGINEVERSION TYPE /AWS1/NEPSTRING OPTIONAL
!IV_PORT TYPE /AWS1/NEPINTEGEROPTIONAL OPTIONAL
!IV_MASTERUSERNAME TYPE /AWS1/NEPSTRING OPTIONAL
!IV_MASTERUSERPASSWORD TYPE /AWS1/NEPSTRING OPTIONAL
!IV_OPTIONGROUPNAME TYPE /AWS1/NEPSTRING OPTIONAL
!IV_PREFERREDBACKUPWINDOW TYPE /AWS1/NEPSTRING OPTIONAL
!IV_PREFERREDMAINTENANCEWIN00 TYPE /AWS1/NEPSTRING OPTIONAL
!IV_REPLSOURCEIDENTIFIER TYPE /AWS1/NEPSTRING OPTIONAL
!IT_TAGS TYPE /AWS1/CL_NEPTAG=>TT_TAGLIST OPTIONAL
!IV_STORAGEENCRYPTED TYPE /AWS1/NEPBOOLEANOPTIONAL OPTIONAL
!IV_KMSKEYID TYPE /AWS1/NEPSTRING OPTIONAL
!IV_PRESIGNEDURL TYPE /AWS1/NEPSTRING OPTIONAL
!IV_ENBIAMDATABASEAUTHNTCTN TYPE /AWS1/NEPBOOLEANOPTIONAL OPTIONAL
!IT_ENABLECLOUDWATCHLOGSEXP TYPE /AWS1/CL_NEPLOGTYPELIST_W=>TT_LOGTYPELIST OPTIONAL
!IV_DELETIONPROTECTION TYPE /AWS1/NEPBOOLEANOPTIONAL OPTIONAL
!IO_SERVERLESSV2SCALINGCONF TYPE REF TO /AWS1/CL_NEPSERVERLESSV2SCAC00 OPTIONAL
!IV_GLOBALCLUSTERIDENTIFIER TYPE /AWS1/NEPGLOBALCLUSTERID OPTIONAL
!IV_STORAGETYPE TYPE /AWS1/NEPSTRING OPTIONAL
RETURNING
VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_nepcreatedbclustrslt
RAISING
/AWS1/CX_NEPDBCLSTALREXFAULT
/AWS1/CX_NEPDBCLUSTNOTFNDFAULT
/AWS1/CX_NEPDBCLSTPRMGRNOTFN00
/AWS1/CX_NEPDBCLSTQUOTAEXCDF00
/AWS1/CX_NEPDBINSTNOTFNDFAULT
/AWS1/CX_NEPDBSNETGRDOESNOTC00
/AWS1/CX_NEPDBSNETGRNOTFNDFA00
/AWS1/CX_NEPGLBCLSTNOTFNDFAULT
/AWS1/CX_NEPINSUFFICIENTSTRG00
/AWS1/CX_NEPINVDBCLSTSTATEFA00
/AWS1/CX_NEPINVDBINSTSTATEFA00
/AWS1/CX_NEPINVDBSNETGRSTATE00
/AWS1/CX_NEPINVGLBCLSTSTATEF00
/AWS1/CX_NEPINVALIDSUBNET
/AWS1/CX_NEPINVVPCNETWORKSTA00
/AWS1/CX_NEPKMSKEYNOTACCIBLE00
/AWS1/CX_NEPSTRGQUOTAEXCDFAULT
/AWS1/CX_NEPCLIENTEXC
/AWS1/CX_NEPSERVEREXC
/AWS1/CX_RT_TECHNICAL_GENERIC
/AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
iv_dbclusteridentifier TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
The DB cluster identifier. This parameter is stored as a lowercase string.
Constraints:
Must contain from 1 to 63 letters, numbers, or hyphens.
First character must be a letter.
Cannot end with a hyphen or contain two consecutive hyphens.
Example:
my-cluster1
iv_engine TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
The name of the database engine to be used for this DB cluster.
Valid Values:
neptune
Optional arguments:¶
it_availabilityzones TYPE /AWS1/CL_NEPAZS_W=>TT_AVAILABILITYZONES TT_AVAILABILITYZONES¶
A list of EC2 Availability Zones that instances in the DB cluster can be created in.
iv_backupretentionperiod TYPE /AWS1/NEPINTEGEROPTIONAL /AWS1/NEPINTEGEROPTIONAL¶
The number of days for which automated backups are retained. You must specify a minimum value of 1.
Default: 1
Constraints:
Must be a value from 1 to 35
iv_charactersetname TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
(Not supported by Neptune)
iv_copytagstosnapshot TYPE /AWS1/NEPBOOLEANOPTIONAL /AWS1/NEPBOOLEANOPTIONAL¶
If set to
true, tags are copied to any snapshot of the DB cluster that is created.
iv_databasename TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
The name for your database of up to 64 alpha-numeric characters. If you do not provide a name, Amazon Neptune will not create a database in the DB cluster you are creating.
iv_dbclusterparamgroupname TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
The name of the DB cluster parameter group to associate with this DB cluster. If this argument is omitted, the default is used.
Constraints:
If supplied, must match the name of an existing DBClusterParameterGroup.
it_vpcsecuritygroupids TYPE /AWS1/CL_NEPVPCSECGRPIDLIST_W=>TT_VPCSECURITYGROUPIDLIST TT_VPCSECURITYGROUPIDLIST¶
A list of EC2 VPC security groups to associate with this DB cluster.
iv_dbsubnetgroupname TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
A DB subnet group to associate with this DB cluster.
Constraints: Must match the name of an existing DBSubnetGroup. Must not be default.
Example:
mySubnetgroup
iv_engineversion TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
The version number of the database engine to use for the new DB cluster.
Example:
1.2.1.0
iv_port TYPE /AWS1/NEPINTEGEROPTIONAL /AWS1/NEPINTEGEROPTIONAL¶
The port number on which the instances in the DB cluster accept connections.
Default:
8182
iv_masterusername TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
Not supported by Neptune.
iv_masteruserpassword TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
Not supported by Neptune.
iv_optiongroupname TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
(Not supported by Neptune)
iv_preferredbackupwindow TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
The daily time range during which automated backups are created if automated backups are enabled using the
BackupRetentionPeriodparameter.The default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region. To see the time blocks available, see Neptune Maintenance Window in the Amazon Neptune User Guide.
Constraints:
Must be in the format
hh24:mi-hh24:mi.Must be in Universal Coordinated Time (UTC).
Must not conflict with the preferred maintenance window.
Must be at least 30 minutes.
iv_preferredmaintenancewin00 TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).
Format:
ddd:hh24:mi-ddd:hh24:miThe default is a 30-minute window selected at random from an 8-hour block of time for each Amazon Region, occurring on a random day of the week. To see the time blocks available, see Neptune Maintenance Window in the Amazon Neptune User Guide.
Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun.
Constraints: Minimum 30-minute window.
iv_replsourceidentifier TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
The Amazon Resource Name (ARN) of the source DB instance or DB cluster if this DB cluster is created as a Read Replica.
it_tags TYPE /AWS1/CL_NEPTAG=>TT_TAGLIST TT_TAGLIST¶
The tags to assign to the new DB cluster.
iv_storageencrypted TYPE /AWS1/NEPBOOLEANOPTIONAL /AWS1/NEPBOOLEANOPTIONAL¶
Specifies whether the DB cluster is encrypted.
iv_kmskeyid TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
The Amazon KMS key identifier for an encrypted DB cluster.
The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a DB cluster with the same Amazon account that owns the KMS encryption key used to encrypt the new DB cluster, then you can use the KMS key alias instead of the ARN for the KMS encryption key.
If an encryption key is not specified in
KmsKeyId:
If
ReplicationSourceIdentifieridentifies an encrypted source, then Amazon Neptune will use the encryption key used to encrypt the source. Otherwise, Amazon Neptune will use your default encryption key.If the
StorageEncryptedparameter is true andReplicationSourceIdentifieris not specified, then Amazon Neptune will use your default encryption key.Amazon KMS creates the default encryption key for your Amazon account. Your Amazon account has a different default encryption key for each Amazon Region.
If you create a Read Replica of an encrypted DB cluster in another Amazon Region, you must set
KmsKeyIdto a KMS key ID that is valid in the destination Amazon Region. This key is used to encrypt the Read Replica in that Amazon Region.
iv_presignedurl TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
This parameter is not currently supported.
iv_enbiamdatabaseauthntctn TYPE /AWS1/NEPBOOLEANOPTIONAL /AWS1/NEPBOOLEANOPTIONAL¶
If set to
true, enables Amazon Identity and Access Management (IAM) authentication for the entire DB cluster (this cannot be set at an instance level).Default:
false.
it_enablecloudwatchlogsexp TYPE /AWS1/CL_NEPLOGTYPELIST_W=>TT_LOGTYPELIST TT_LOGTYPELIST¶
A list of the log types that this DB cluster should export to CloudWatch Logs. Valid log types are:
audit(to publish audit logs) andslowquery(to publish slow-query logs). See Publishing Neptune logs to Amazon CloudWatch logs.
iv_deletionprotection TYPE /AWS1/NEPBOOLEANOPTIONAL /AWS1/NEPBOOLEANOPTIONAL¶
A value that indicates whether the DB cluster has deletion protection enabled. The database can't be deleted when deletion protection is enabled. By default, deletion protection is enabled.
io_serverlessv2scalingconf TYPE REF TO /AWS1/CL_NEPSERVERLESSV2SCAC00 /AWS1/CL_NEPSERVERLESSV2SCAC00¶
Contains the scaling configuration of a Neptune Serverless DB cluster.
For more information, see Using Amazon Neptune Serverless in the Amazon Neptune User Guide.
iv_globalclusteridentifier TYPE /AWS1/NEPGLOBALCLUSTERID /AWS1/NEPGLOBALCLUSTERID¶
The ID of the Neptune global database to which this new DB cluster should be added.
iv_storagetype TYPE /AWS1/NEPSTRING /AWS1/NEPSTRING¶
The storage type for the new DB cluster.
Valid Values:
standard– ( the default ) Configures cost-effective database storage for applications with moderate to small I/O usage. When set tostandard, the storage type is not returned in the response.
iopt1– Enables I/O-Optimized storage that's designed to meet the needs of I/O-intensive graph workloads that require predictable pricing with low I/O latency and consistent I/O throughput.Neptune I/O-Optimized storage is only available starting with engine release 1.3.0.0.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_nepcreatedbclustrslt /AWS1/CL_NEPCREATEDBCLUSTRSLT¶
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->createdbcluster(
io_serverlessv2scalingconf = new /aws1/cl_nepserverlessv2scac00(
iv_maxcapacity = '0.1'
iv_mincapacity = '0.1'
)
it_availabilityzones = VALUE /aws1/cl_nepazs_w=>tt_availabilityzones(
( new /aws1/cl_nepazs_w( |string| ) )
)
it_enablecloudwatchlogsexp = VALUE /aws1/cl_neplogtypelist_w=>tt_logtypelist(
( new /aws1/cl_neplogtypelist_w( |string| ) )
)
it_tags = VALUE /aws1/cl_neptag=>tt_taglist(
(
new /aws1/cl_neptag(
iv_key = |string|
iv_value = |string|
)
)
)
it_vpcsecuritygroupids = VALUE /aws1/cl_nepvpcsecgrpidlist_w=>tt_vpcsecuritygroupidlist(
( new /aws1/cl_nepvpcsecgrpidlist_w( |string| ) )
)
iv_backupretentionperiod = 123
iv_charactersetname = |string|
iv_copytagstosnapshot = ABAP_TRUE
iv_databasename = |string|
iv_dbclusteridentifier = |string|
iv_dbclusterparamgroupname = |string|
iv_dbsubnetgroupname = |string|
iv_deletionprotection = ABAP_TRUE
iv_enbiamdatabaseauthntctn = ABAP_TRUE
iv_engine = |string|
iv_engineversion = |string|
iv_globalclusteridentifier = |string|
iv_kmskeyid = |string|
iv_masterusername = |string|
iv_masteruserpassword = |string|
iv_optiongroupname = |string|
iv_port = 123
iv_preferredbackupwindow = |string|
iv_preferredmaintenancewin00 = |string|
iv_presignedurl = |string|
iv_replsourceidentifier = |string|
iv_storageencrypted = ABAP_TRUE
iv_storagetype = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
lo_dbcluster = lo_result->get_dbcluster( ).
IF lo_dbcluster IS NOT INITIAL.
lv_integeroptional = lo_dbcluster->get_allocatedstorage( ).
LOOP AT lo_dbcluster->get_availabilityzones( ) into lo_row.
lo_row_1 = lo_row.
IF lo_row_1 IS NOT INITIAL.
lv_string = lo_row_1->get_value( ).
ENDIF.
ENDLOOP.
lv_integeroptional = lo_dbcluster->get_backupretentionperiod( ).
lv_string = lo_dbcluster->get_charactersetname( ).
lv_string = lo_dbcluster->get_databasename( ).
lv_string = lo_dbcluster->get_dbclusteridentifier( ).
lv_string = lo_dbcluster->get_dbclusterparametergroup( ).
lv_string = lo_dbcluster->get_dbsubnetgroup( ).
lv_string = lo_dbcluster->get_status( ).
lv_string = lo_dbcluster->get_percentprogress( ).
lv_tstamp = lo_dbcluster->get_earliestrestorabletime( ).
lv_string = lo_dbcluster->get_endpoint( ).
lv_string = lo_dbcluster->get_readerendpoint( ).
lv_boolean = lo_dbcluster->get_multiaz( ).
lv_string = lo_dbcluster->get_engine( ).
lv_string = lo_dbcluster->get_engineversion( ).
lv_tstamp = lo_dbcluster->get_latestrestorabletime( ).
lv_integeroptional = lo_dbcluster->get_port( ).
lv_string = lo_dbcluster->get_masterusername( ).
LOOP AT lo_dbcluster->get_dbclustoptiongrpmember00( ) into lo_row_2.
lo_row_3 = lo_row_2.
IF lo_row_3 IS NOT INITIAL.
lv_string = lo_row_3->get_dbclusteroptiongroupname( ).
lv_string = lo_row_3->get_status( ).
ENDIF.
ENDLOOP.
lv_string = lo_dbcluster->get_preferredbackupwindow( ).
lv_string = lo_dbcluster->get_preferredmaintenancewi00( ).
lv_string = lo_dbcluster->get_replsourceidentifier( ).
LOOP AT lo_dbcluster->get_readreplicaidentifiers( ) into lo_row_4.
lo_row_5 = lo_row_4.
IF lo_row_5 IS NOT INITIAL.
lv_string = lo_row_5->get_value( ).
ENDIF.
ENDLOOP.
LOOP AT lo_dbcluster->get_dbclustermembers( ) into lo_row_6.
lo_row_7 = lo_row_6.
IF lo_row_7 IS NOT INITIAL.
lv_string = lo_row_7->get_dbinstanceidentifier( ).
lv_boolean = lo_row_7->get_isclusterwriter( ).
lv_string = lo_row_7->get_dbclustparamgroupstatus( ).
lv_integeroptional = lo_row_7->get_promotiontier( ).
ENDIF.
ENDLOOP.
LOOP AT lo_dbcluster->get_vpcsecuritygroups( ) into lo_row_8.
lo_row_9 = lo_row_8.
IF lo_row_9 IS NOT INITIAL.
lv_string = lo_row_9->get_vpcsecuritygroupid( ).
lv_string = lo_row_9->get_status( ).
ENDIF.
ENDLOOP.
lv_string = lo_dbcluster->get_hostedzoneid( ).
lv_boolean = lo_dbcluster->get_storageencrypted( ).
lv_string = lo_dbcluster->get_kmskeyid( ).
lv_string = lo_dbcluster->get_dbclusterresourceid( ).
lv_string = lo_dbcluster->get_dbclusterarn( ).
LOOP AT lo_dbcluster->get_associatedroles( ) into lo_row_10.
lo_row_11 = lo_row_10.
IF lo_row_11 IS NOT INITIAL.
lv_string = lo_row_11->get_rolearn( ).
lv_string = lo_row_11->get_status( ).
lv_string = lo_row_11->get_featurename( ).
ENDIF.
ENDLOOP.
lv_boolean = lo_dbcluster->get_iamdatabaseauthntctnenbd( ).
lv_string = lo_dbcluster->get_clonegroupid( ).
lv_tstamp = lo_dbcluster->get_clustercreatetime( ).
lv_booleanoptional = lo_dbcluster->get_copytagstosnapshot( ).
LOOP AT lo_dbcluster->get_enabledcloudwatchlogsexp( ) into lo_row_12.
lo_row_13 = lo_row_12.
IF lo_row_13 IS NOT INITIAL.
lv_string = lo_row_13->get_value( ).
ENDIF.
ENDLOOP.
lo_clusterpendingmodifiedv = lo_dbcluster->get_pendingmodifiedvalues( ).
IF lo_clusterpendingmodifiedv IS NOT INITIAL.
lo_pendingcloudwatchlogsex = lo_clusterpendingmodifiedv->get_pendingcloudwatchlogsexp( ).
IF lo_pendingcloudwatchlogsex IS NOT INITIAL.
LOOP AT lo_pendingcloudwatchlogsex->get_logtypestoenable( ) into lo_row_12.
lo_row_13 = lo_row_12.
IF lo_row_13 IS NOT INITIAL.
lv_string = lo_row_13->get_value( ).
ENDIF.
ENDLOOP.
LOOP AT lo_pendingcloudwatchlogsex->get_logtypestodisable( ) into lo_row_12.
lo_row_13 = lo_row_12.
IF lo_row_13 IS NOT INITIAL.
lv_string = lo_row_13->get_value( ).
ENDIF.
ENDLOOP.
ENDIF.
lv_string = lo_clusterpendingmodifiedv->get_dbclusteridentifier( ).
lv_booleanoptional = lo_clusterpendingmodifiedv->get_iamdatabaseauthntctnenbd( ).
lv_string = lo_clusterpendingmodifiedv->get_engineversion( ).
lv_integeroptional = lo_clusterpendingmodifiedv->get_backupretentionperiod( ).
lv_string = lo_clusterpendingmodifiedv->get_storagetype( ).
lv_integeroptional = lo_clusterpendingmodifiedv->get_allocatedstorage( ).
lv_integeroptional = lo_clusterpendingmodifiedv->get_iops( ).
ENDIF.
lv_booleanoptional = lo_dbcluster->get_deletionprotection( ).
lv_booleanoptional = lo_dbcluster->get_crossaccountclone( ).
lv_tstamp = lo_dbcluster->get_automaticrestarttime( ).
lo_serverlessv2scalingconf = lo_dbcluster->get_serverlessv2scalingconf( ).
IF lo_serverlessv2scalingconf IS NOT INITIAL.
lv_doubleoptional = lo_serverlessv2scalingconf->get_mincapacity( ).
lv_doubleoptional = lo_serverlessv2scalingconf->get_maxcapacity( ).
ENDIF.
lv_globalclusteridentifier = lo_dbcluster->get_globalclusteridentifier( ).
lv_tstamp = lo_dbcluster->get_iooptimizednextalwedmo00( ).
lv_string = lo_dbcluster->get_storagetype( ).
ENDIF.
ENDIF.