Utilizzo di CreateDBCluster con un SDK AWS - Esempi di codice per SDK AWS

Sono disponibili altri esempi per SDK AWS nel repository GitHub della documentazione degli esempi per SDK AWS.

Utilizzo di CreateDBCluster con un SDK AWS

Gli esempi di codice seguenti mostrano come utilizzare CreateDBCluster.

Java
SDK per Java 2.x
Nota

Ulteriori informazioni su GitHub. Trova l’esempio completo e scopri di più sulla configurazione e l’esecuzione nel Repository di esempi di codice AWS.

/** * Creates a new Amazon Neptune DB cluster asynchronously. * * @param dbName the name of the DB cluster to be created * @return a CompletableFuture that, when completed, provides the ID of the created DB cluster * @throws CompletionException if the operation fails for any reason, including if the request would exceed the maximum quota */ public CompletableFuture<String> createDBClusterAsync(String dbName) { CreateDbClusterRequest request = CreateDbClusterRequest.builder() .dbClusterIdentifier(dbName) .engine("neptune") .deletionProtection(false) .backupRetentionPeriod(1) .build(); return getAsyncClient().createDBCluster(request) .whenComplete((response, exception) -> { if (exception != null) { Throwable cause = exception.getCause(); if (cause instanceof ServiceQuotaExceededException) { throw new CompletionException("The operation was denied because the request would exceed the maximum quota.", cause); } throw new CompletionException("Failed to create Neptune DB cluster: " + exception.getMessage(), exception); } }) .thenApply(response -> { String clusterId = response.dbCluster().dbClusterIdentifier(); logger.info("DB Cluster created: " + clusterId); return clusterId; }); }
  • Per informazioni dettagliate sull’API, consulta CreateDBCluster nella documentazione di riferimento dell’API AWS SDK for Java 2.x.

Python
SDK per Python (Boto3)
Nota

Ulteriori informazioni su GitHub. Trova l’esempio completo e scopri di più sulla configurazione e l’esecuzione nel Repository di esempi di codice AWS.

def create_db_cluster(neptune_client, db_name: str) -> str: """ Creates a Neptune DB cluster and returns its identifier. Args: neptune_client (boto3.client): The Neptune client object. db_name (str): The desired cluster identifier. Returns: str: The DB cluster identifier. Raises: RuntimeError: For any failure or AWS error, with a user-friendly message. """ request = { 'DBClusterIdentifier': db_name, 'Engine': 'neptune', 'DeletionProtection': False, 'BackupRetentionPeriod': 1 } try: response = neptune_client.create_db_cluster(**request) cluster = response.get('DBCluster') or {} cluster_id = cluster.get('DBClusterIdentifier') if not cluster_id: raise RuntimeError("Cluster created but no ID returned.") print(f"DB Cluster created: {cluster_id}") return cluster_id except ClientError as e: code = e.response["Error"]["Code"] message = e.response["Error"]["Message"] if code in ("ServiceQuotaExceededException", "DBClusterQuotaExceededFault"): raise RuntimeError("You have exceeded the quota for Neptune DB clusters.") from e else: raise RuntimeError(f"AWS error [{code}]: {message}") from e except Exception as e: raise RuntimeError(f"Unexpected error creating DB cluster '{db_name}': {e}") from e
  • Per informazioni dettagliate sull’API, consulta CreateDBCluster nella documentazione di riferimento dell’API AWS SDK per Python (Boto3).