Amazon Redshift 範例 - AWS SDK for JavaScript

AWS SDK for JavaScript V3 API參考指南詳細描述 AWS SDK for JavaScript 第 3 版 (V3) 的所有API操作。

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon Redshift 範例

在此範例中,一系列 Node.js 模組用於建立、修改、描述 的參數,然後使用下列Redshift用戶端類別方法刪除 Amazon Redshift 叢集:

如需 Amazon Redshift 使用者的詳細資訊,請參閱 Amazon Redshift 入門指南。

先決條件任務

若要設定和執行此範例,您必須先完成這些任務:

  • 設定專案環境以執行這些節點 TypeScript 範例,並安裝必要的 AWS SDK for JavaScript 和第三方模組。請遵循 上的指示 GitHub

  • 透過使用者登入資料建立共用組態檔。如需提供共用憑證檔案的詳細資訊,請參閱 和 AWS SDKs 工具參考指南 中的共用組態和憑證檔案

重要

這些範例示範如何使用 ECMAScript6() 匯入/匯出用戶端服務物件和命令ES6。

建立 Amazon Redshift 叢集

此範例示範如何使用 建立 Amazon Redshift 叢集 AWS SDK for JavaScript。如需詳細資訊,請參閱 CreateCluster

重要

您即將建立的叢集為即時 (而不是在沙盒中執行)。您需要支付叢集的標準 Amazon Redshift 使用費,直到刪除叢集為止。如果您在建立叢集時以相同的位置刪除叢集,則總費用最少。

建立libs目錄,並使用檔案名稱 建立 Node.js 模組redshiftClient.js。複製並貼上下列程式碼,以建立 Amazon Redshift 用戶端物件。Replace (取代) REGION 您的 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 };

您可以在 上找到此 GitHub範例程式碼。

以檔名 redshift-create-cluster.js 建立一個 Node.js 模組。請務必SDK如先前所示設定 ,包括安裝所需的用戶端和套件。建立參數物件,指定要佈建的節點類型,以及在叢集中自動建立的資料庫執行個體主要登入憑證,最後是叢集類型。

注意

Replace (取代) CLUSTER_NAME 使用叢集的名稱。用於 NODE_TYPE 指定要佈建的節點類型,例如 'dc2.large'。MASTER_USERNAME 以及 MASTER_USER_PASSWORD 是叢集中資料庫執行個體主要使用者的登入憑證。用於 CLUSTER_TYPE,輸入叢集的類型。如果您指定 single-node,則不需要 NumberOfNodes 參數。其餘參數為選用。

// 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();

若要執行範例,請在命令提示中輸入以下內容。

node redshift-create-cluster.js

您可以在 上找到 GitHub此範例程式碼。

修改 Amazon Redshift 叢集

此範例示範如何使用 修改 Amazon Redshift 叢集的主要使用者密碼 AWS SDK for JavaScript。如需有關您可以修改哪些其他設定的詳細資訊,請參閱 ModifyCluster

建立libs目錄,並使用檔案名稱 建立 Node.js 模組redshiftClient.js。複製並貼上下列程式碼,以建立 Amazon Redshift 用戶端物件。Replace (取代) REGION 您的 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 };

您可以在 上找到此 GitHub範例程式碼。

以檔名 redshift-modify-cluster.js 建立一個 Node.js 模組。請務必SDK如先前所示設定 ,包括安裝所需的用戶端和套件。指定 AWS 區域、您要修改的叢集名稱,以及新的主要使用者密碼。

注意

Replace (取代) CLUSTER_NAME 使用叢集的名稱,以及 MASTER_USER_PASSWORD 使用新的主要使用者密碼。

// 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();

若要執行範例,請在命令提示中輸入以下內容。

node redshift-modify-cluster.js

您可以在 上找到此 GitHub範例程式碼。

檢視 Amazon Redshift 叢集的詳細資訊

此範例說明如何使用 檢視 Amazon Redshift 叢集的詳細資訊 AWS SDK for JavaScript。如需選用的詳細資訊,請參閱 DescribeClusters

建立libs目錄,並使用檔案名稱 建立 Node.js 模組redshiftClient.js。複製並貼上下列程式碼,以建立 Amazon Redshift 用戶端物件。Replace (取代) REGION 您的 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 };

您可以在 上找到此 GitHub範例程式碼。

以檔名 redshift-describe-clusters.js 建立一個 Node.js 模組。請務必SDK如先前所示設定 ,包括安裝所需的用戶端和套件。指定 AWS 區域、您要修改的叢集名稱,以及新的主要使用者密碼。

注意

Replace (取代) CLUSTER_NAME 使用叢集的名稱。

// 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();

若要執行範例,請在命令提示中輸入以下內容。

node redshift-describe-clusters.js

您可以在 上找到 GitHub此範例程式碼。

刪除 Amazon Redshift 叢集

此範例說明如何使用 檢視 Amazon Redshift 叢集的詳細資訊 AWS SDK for JavaScript。如需有關您可以修改哪些其他設定的詳細資訊,請參閱 DeleteCluster

建立libs目錄,並使用檔案名稱 建立 Node.js 模組redshiftClient.js。複製並貼上下列程式碼,以建立 Amazon Redshift 用戶端物件。Replace (取代) REGION 您的 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 };

您可以在 上找到此 GitHub範例程式碼。

使用名為 的檔案建立 Node.js 模組redshift-delete-clusters.js。請務必SDK如先前所示設定 ,包括安裝所需的用戶端和套件。指定 AWS 區域、您要修改的叢集名稱,以及新的主要使用者密碼。指定您是否希望在刪除之前儲存叢集的最終快照,以及如果是,則指定快照的 ID。

注意

Replace (取代) CLUSTER_NAME 使用叢集的名稱。對於 SkipFinalClusterSnapshot,指定是否在刪除叢集之前建立叢集的最終快照。如果您指定「假」,請在 中指定最終叢集快照的 ID CLUSTER_SNAPSHOT_ID。 您可以按一下叢集儀表板上叢集快照欄中的連結,然後向下捲動至快照窗格,以取得此 ID。請注意, 主幹rs:不是快照 ID 的一部分。

// 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();

若要執行範例,請在命令提示中輸入以下內容。

node redshift-delete-cluster.js

您可以在 上找到 GitHub此範例程式碼。