

 La [Guía de referencia de la API de AWS SDK for JavaScript V3](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/) describe en detalle todas las operaciones de la API para la versión 3 (V3) de AWS SDK for JavaScript. 

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Ejemplos de Amazon Redshift
<a name="redshift-examples-section"></a>

En este ejemplo, se utilizan una serie de módulos de Node.js para crear, modificar, describir los parámetros y, a continuación, eliminar clústeres de Amazon Redshift mediante los siguientes métodos de la clase de cliente de `Redshift`:
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Class/CreateClusterCommand/](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Class/CreateClusterCommand/)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Class/ModifyClusterCommand/](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Class/ModifyClusterCommand/)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Class/DescribeClustersCommand/](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Class/DescribeClustersCommand/)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Class/DeleteClusterCommand/](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-redshift/Class/DeleteClusterCommand/)

Para obtener más información sobre los usuarios de Amazon Redshift, consulte la [Guía de introducción de Amazon Redshift](https://docs.aws.amazon.com/redshift/latest/gsg/getting-started.html).

## Tareas previas necesarias
<a name="s3-example-configuring-buckets-prerequisites"></a>

Para configurar y ejecutar este ejemplo, primero debe completar estas tareas:
+ Configure el entorno del proyecto para ejecutar estos ejemplos de Node TypeScript e instale los módulos necesarios de AWS SDK for JavaScript y de terceros. Siga las instrucciones en [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javascriptv3/example_code/redshift/README.md).
+ Cree un archivo de configuraciones compartidas con sus credenciales de usuario. Para obtener más información sobre proporcionar un archivo de credenciales compartido, consulte [Archivos de configuración y credenciales compartidos](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html) en la *Guía de referencia de las herramientas y los SDK de AWS*.

**importante**  
Estos ejemplos muestran cómo importar/exportar comandos y objetos del servicio de cliente mediante ECMAScript6 (ES6).  
Requiere la versión 13.x o superior de Node.js. Para descargar e instalar la versión más reciente de Node.js, consulte [Descargas de Node.js](https://nodejs.org/en/download).
Si prefiere utilizar la sintaxis CommonJS, consulte [Sintaxis ES6/commonJS de JavaScript](sdk-example-javascript-syntax.md)

## Crea un clúster de Amazon Redshift.
<a name="redshift-create-cluster"></a>

En este ejemplo, se muestra cómo crear un clúster de Amazon Redshift con AWS SDK for JavaScript. Para obtener más información, consulte [CreateCluster](https://docs.aws.amazon.com/redshift/latest/APIReference/API_CreateCluster).

**importante**  
*El clúster que está a punto de lanzar se ejecutará en un entorno real (no en un entorno aislado). Debe pagar las tarifas de uso estándar de Amazon Redshift por el clúster hasta que lo elimine. Si elimina el clúster en la misma sesión en que lo creó, los cargos totales son mínimos.* 

Cree un directorio `libs` y cree un módulo Node.js con el nombre de archivo `redshiftClient.js`. Copie y pegue el siguiente código en él, para crear el objeto de cliente de Amazon Redshift. Sustituya *REGION* por su región de AWS.

```
import  { RedshiftClient }  from  "@aws-sdk/client-redshift";
// Set the AWS Region.
const REGION = "REGION"; //e.g. "us-east-1"
// Create Redshift service object.
const redshiftClient = new RedshiftClient({ region: REGION });
export { redshiftClient };
```

Este código de ejemplo se puede encontrar [aquí en GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/redshift/src/libs/redshiftClient.js).

Cree un módulo de Node.js con el nombre de archivo `redshift-create-cluster.js`. Asegúrese de configurar el SDK como se mostró anteriormente, incluida la instalación de los clientes y paquetes necesarios. Cree un objeto de parámetros, especificando el tipo de nodo que se va a aprovisionar y las credenciales maestras de inicio de sesión de la instancia de base de datos creada automáticamente en el clúster y, por último, el tipo de clúster.

**nota**  
Sustituya *CLUSTER\$1NAME* por el nombre de su clúster. En *NODE\$1TYPE*, especifique el tipo de nodo que se va a aprovisionar, como “dc2.large”, por ejemplo. *MASTER\$1USERNAME* y *MASTER\$1USER\$1PASSWORD* son las credenciales de inicio de sesión del usuario maestro de la instancia de base de datos en el clúster. En *CLUSTER\$1TYPE*, introduzca el tipo de clúster. Si especifica `single-node`, no necesitará el parámetro `NumberOfNodes`. El resto de los parámetros son opcionales. 

```
// Import required AWS SDK clients and commands for Node.js
import { CreateClusterCommand } from "@aws-sdk/client-redshift";
import { redshiftClient } from "./libs/redshiftClient.js";

const params = {
  ClusterIdentifier: "CLUSTER_NAME", // Required
  NodeType: "NODE_TYPE", //Required
  MasterUsername: "MASTER_USER_NAME", // Required - must be lowercase
  MasterUserPassword: "MASTER_USER_PASSWORD", // Required - must contain at least one uppercase letter, and one number
  ClusterType: "CLUSTER_TYPE", // Required
  IAMRoleARN: "IAM_ROLE_ARN", // Optional - the ARN of an IAM role with permissions your cluster needs to access other AWS services on your behalf, such as Amazon S3.
  ClusterSubnetGroupName: "CLUSTER_SUBNET_GROUPNAME", //Optional - the name of a cluster subnet group to be associated with this cluster. Defaults to 'default' if not specified.
  DBName: "DATABASE_NAME", // Optional - defaults to 'dev' if not specified
  Port: "PORT_NUMBER", // Optional - defaults to '5439' if not specified
};

const run = async () => {
  try {
    const data = await redshiftClient.send(new CreateClusterCommand(params));
    console.log(
      `Cluster ${data.Cluster.ClusterIdentifier} successfully created`,
    );
    return data; // For unit tests.
  } catch (err) {
    console.log("Error", err);
  }
};
run();
```

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

```
node redshift-create-cluster.js  
```

Este código de ejemplo se puede encontrar [aquí en GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/redshift/src/redshift-create-cluster.js).

## Modificación de un clúster de Amazon Redshift
<a name="redshift-modify-cluster"></a>

En este ejemplo se muestra cómo modificar la contraseña de usuario maestro de un clúster de Amazon Redshift usando AWS SDK for JavaScript. Para obtener más información sobre qué otra configuración puede modificar, consulte [ModifyCluster](https://docs.aws.amazon.com/redshift/latest/APIReference/API_ModifyCluster.html).

Cree un directorio `libs` y cree un módulo Node.js con el nombre de archivo `redshiftClient.js`. Copie y pegue el siguiente código en él, para crear el objeto de cliente de Amazon Redshift. Sustituya *REGION* por su región de AWS.

```
import  { RedshiftClient }  from  "@aws-sdk/client-redshift";
// Set the AWS Region.
const REGION = "REGION"; //e.g. "us-east-1"
// Create Redshift service object.
const redshiftClient = new RedshiftClient({ region: REGION });
export { redshiftClient };
```

Este código de ejemplo se puede encontrar [aquí en GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/redshift/src/libs/redshiftClient.js).

Cree un módulo de Node.js con el nombre de archivo `redshift-modify-cluster.js`. Asegúrese de configurar el SDK como se mostró anteriormente, incluida la instalación de los clientes y paquetes necesarios. Especifique la región de AWS, el nombre del clúster que desea modificar y la nueva contraseña de usuario maestro.

**nota**  
Sustituya *CLUSTER\$1NAME* por el nombre del clúster y *MASTER\$1USER\$1PASSWORD* por la nueva contraseña de usuario maestro. 

```
// Import required AWS SDK clients and commands for Node.js
import { ModifyClusterCommand } from "@aws-sdk/client-redshift";
import { redshiftClient } from "./libs/redshiftClient.js";

// Set the parameters
const params = {
  ClusterIdentifier: "CLUSTER_NAME",
  MasterUserPassword: "NEW_MASTER_USER_PASSWORD",
};

const run = async () => {
  try {
    const data = await redshiftClient.send(new ModifyClusterCommand(params));
    console.log("Success was modified.", data);
    return data; // For unit tests.
  } catch (err) {
    console.log("Error", err);
  }
};
run();
```

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

```
node redshift-modify-cluster.js 
```

Este código de ejemplo se puede encontrar [aquí en GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/redshift/src/redshift-modify-cluster.js).

## Visualización de los detalles de un clúster de Amazon Redshift
<a name="redshift-describe-cluster"></a>

En este ejemplo, se muestra cómo consultar los detalles de un clúster de Amazon Redshift con AWS SDK for JavaScript. Para obtener más información sobre lo opcional, consulte [DescribecLusters](https://docs.aws.amazon.com/redshift/latest/APIReference/API_DescribeClusters.html).

Cree un directorio `libs` y cree un módulo Node.js con el nombre de archivo `redshiftClient.js`. Copie y pegue el siguiente código en él, para crear el objeto de cliente de Amazon Redshift. Sustituya *REGION* por su región de AWS.

```
import  { RedshiftClient }  from  "@aws-sdk/client-redshift";
// Set the AWS Region.
const REGION = "REGION"; //e.g. "us-east-1"
// Create Redshift service object.
const redshiftClient = new RedshiftClient({ region: REGION });
export { redshiftClient };
```

Este código de ejemplo se puede encontrar [aquí en GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/redshift/src/libs/redshiftClient.js).

Cree un módulo de Node.js con el nombre de archivo `redshift-describe-clusters.js`. Asegúrese de configurar el SDK como se mostró anteriormente, incluida la instalación de los clientes y paquetes necesarios. Especifique la región de AWS, el nombre del clúster que desea modificar y la nueva contraseña de usuario maestro.

**nota**  
Sustituya *CLUSTER\$1NAME* por el nombre de su clúster. 

```
// Import required AWS SDK clients and commands for Node.js
import { DescribeClustersCommand } from "@aws-sdk/client-redshift";
import { redshiftClient } from "./libs/redshiftClient.js";

const params = {
  ClusterIdentifier: "CLUSTER_NAME",
};

const run = async () => {
  try {
    const data = await redshiftClient.send(new DescribeClustersCommand(params));
    console.log("Success", data);
    return data; // For unit tests.
  } catch (err) {
    console.log("Error", err);
  }
};
run();
```

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

```
node redshift-describe-clusters.js 
```

Este código de ejemplo se puede encontrar [aquí en GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/redshift/src/redshift-describe-clusters.js).

## Eliminar un clúster de Amazon Redshift
<a name="redshift-delete-cluster"></a>

En este ejemplo, se muestra cómo consultar los detalles de un clúster de Amazon Redshift con AWS SDK for JavaScript. Para obtener más información sobre qué otra configuración puede modificar, consulte [DeleteCluster](https://docs.aws.amazon.com/redshift/latest/APIReference/API_DeleteCluster.html).

Cree un directorio `libs` y cree un módulo Node.js con el nombre de archivo `redshiftClient.js`. Copie y pegue el siguiente código en él, para crear el objeto de cliente de Amazon Redshift. Sustituya *REGION* por su región de AWS.

```
import  { RedshiftClient }  from  "@aws-sdk/client-redshift";
// Set the AWS Region.
const REGION = "REGION"; //e.g. "us-east-1"
// Create Redshift service object.
const redshiftClient = new RedshiftClient({ region: REGION });
export { redshiftClient };
```

Este código de ejemplo se puede encontrar [aquí en GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/redshift/src/libs/redshiftClient.js).

Cree un módulo de Node.js con el nombre de archivo `redshift-delete-clusters.js`. Asegúrese de configurar el SDK como se mostró anteriormente, incluida la instalación de los clientes y paquetes necesarios. Especifique la región de AWS, el nombre del clúster que desea modificar y la nueva contraseña de usuario maestro. Especifique si desea guardar una instantánea final del clúster antes de eliminarlo y, de ser así, el ID de la instantánea.

**nota**  
Sustituya *CLUSTER\$1NAME* por el nombre de su clúster. Para *SkipFinalClusterSnapshot*, especifique si desea crear una instantánea final del clúster antes de eliminarlo. Si especifica “false”, especifique el ID de la instantánea final del clúster en *CLUSTER\$1SNAPSHOT\$1ID*. Puede obtener este ID haciendo clic en el enlace de la columna **Instantáneas** del clúster en el panel de control **Clústeres** y desplazándose hacia abajo hasta el panel **Instantáneas**. Tenga en cuenta que la raíz `rs:` no forma parte del ID de la instantánea.

```
// Import required AWS SDK clients and commands for Node.js
import { DeleteClusterCommand } from "@aws-sdk/client-redshift";
import { redshiftClient } from "./libs/redshiftClient.js";

const params = {
  ClusterIdentifier: "CLUSTER_NAME",
  SkipFinalClusterSnapshot: false,
  FinalClusterSnapshotIdentifier: "CLUSTER_SNAPSHOT_ID",
};

const run = async () => {
  try {
    const data = await redshiftClient.send(new DeleteClusterCommand(params));
    console.log("Success, cluster deleted. ", data);
    return data; // For unit tests.
  } catch (err) {
    console.log("Error", err);
  }
};
run();
```

Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.

```
node redshift-delete-cluster.js  
```

Este código de ejemplo se puede encontrar [aquí en GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/blob/main/javascriptv3/example_code/redshift/src/redshift-delete-cluster.js).