Aurora DSQL の開始方法
Amazon Aurora DSQL は、トランザクションワークロード用に最適化されたサーバーレスの分散リレーショナルデータベースです。以下のセクションでは、単一リージョンおよびマルチリージョンの Aurora DSQL クラスターを作成し、それらに接続して、サンプルスキーマを作成してロードする方法について説明します。AWS コンソールを使用してクラスターにアクセスし、必要に応じて他の PostgreSQL クライアントを使用してデータベースとやり取りします。最終的に、テストまたは本番ワークロードに使用可能な、動作中の Aurora DSQL クラスターが設定されます。
トピック
前提条件
Aurora DSQL の使用を開始する前に、以下の前提条件を満たしていることを確認してください。
-
IAM ID には、コンソールにサインインするためのアクセス許可が必要です。
-
IAM ID は、以下の条件を満たしている必要があります。
-
AWS アカウント内の任意のリソースに対して任意のアクションを実行できるアクセス許可
-
AmazonAuroraDSQLConsoleFullAccessAWS マネージドポリシーがアタッチされています。
-
ステップ 1: Aurora DSQL 単一リージョンクラスターを作成する
Aurora DSQL の基本単位は、データを保存するクラスターです。このタスクでは、単一の AWS リージョンにクラスターを作成します。
Aurora DSQL で単一リージョンクラスターを作成するには
-
AWS マネジメントコンソールにサインインし、https://console.aws.amazon.com/dsql
で Aurora DSQL コンソールを開きます。 -
[クラスターを作成] を選択し、[シングルリージョン] を選択します。
-
(オプション) デフォルトの Name タグの値を変更します。
-
(オプション) このクラスターにタグを追加します。
-
(オプション) [クラスター設定] で、次のいずれかのオプションを選択します。
-
[暗号化の設定をカスタマイズ (詳細設定)] を選択して、AWS KMS keyを選択または作成します。
-
削除オペレーションでクラスターが削除されないようにするために、[削除保護を有効にする] を選択します。デフォルトでは、削除保護が選択されています。
-
[リソースベースのポリシー (詳細)] を選択して、このクラスターのアクセスコントロールポリシーを指定します。
-
-
[クラスターを作成] を選択します。
-
コンソールでは、[ロール] ページが返されます。クラスターが作成されていることを示す通知バナーが表示されます。[クラスター ID] を選択して、クラスターの詳細ビューを開きます。
ステップ 2: Aurora DSQL クラスターに接続する
Aurora DSQL は、DSQL クエリエディタ、AWS CloudShell、ローカル psql クライアント、その他の PostgreSQL 互換ツールなど、クラスターに接続する複数の方法をサポートしています。このステップでは、Aurora DSQL クエリエディタを使用して接続します。これにより、新しいクラスターの操作をすばやく開始できます。
クエリエディタを使用して接続するには
-
Aurora DSQL コンソール (https://console.aws.amazon.com/dsql
) で、[クラスター] ページを開き、クラスターの作成が完了し、そのステータスがアクティブであることを確認します。 -
リストからクラスターを選択、または [クラスター ID] を選択してクラスターの詳細ページを開きます。
-
[クエリエディタで接続]を選択します。
-
先ほど作成したクラスターの [管理者] として接続を選択します。
-
必要に応じて、カスタムロールに接続できます。「データベースロールと IAM 認証の使用」を参照してください。
-
ステップ 3: Aurora DSQL でサンプル SQL コマンドを実行する
SQL ステートメントを実行して Aurora DSQL クラスターをテストします。クエリエディタでクラスターを開いたら、各サンプルクエリをステップバイステップで選択して実行します。
Aurora DSQL でサンプル SQL コマンドを実行する
-
testという名前のスキーマを作成します。CREATE SCHEMA IF NOT EXISTS test; -
自動的に生成された UUID をプライマリキーとして使用する hello_world テーブルを作成します。
CREATE TABLE IF NOT EXISTS test.hello_world ( id UUID PRIMARY KEY DEFAULT gen_random_uuid(), message VARCHAR(255) NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); -
サンプル行を挿入します。
INSERT INTO test.hello_world (message) VALUES ('Hello, World!'); -
挿入された値を読み取ります。
SELECT * FROM test.hello_world; -
オプションでクリーンアップします。
DROP TABLE test.hello_world; DROP SCHEMA test;
ステップ 4: マルチリージョンクラスターを作成する
マルチリージョンクラスターを作成する際は、以下のリージョンを指定します。
- リモートリージョン
-
これは、2 番目のクラスターを作成するリージョンです。このリージョンに 2 番目のクラスターを作成し、最初のクラスターにピア接続します。Aurora DSQL は、最初のクラスターに対するすべての書き込みをリモートクラスターにレプリケートします。任意のクラスターで読み取りと書き込みが可能です。
- ウィットネスリージョン
-
このリージョンは、マルチリージョンクラスターに書き込まれるすべてのデータを受け取ります。ウィットネスリージョンはクライアントエンドポイントをホストせず、ユーザーデータアクセスも提供しません。暗号化されたトランザクションログの制限されたウィンドウが、監視リージョンで保持されます。このログにより、復旧が容易になり、リージョンが利用できない場合のトランザクションクォーラムがサポートされます。
次の手順を使用して最初のクラスターを作成し、別のリージョンに 2 番目のクラスターを作成し、2 つのクラスターをピアリングしてマルチリージョンクラスターを作成する方法を示しています。さらに、クロスリージョン書き込みレプリケーションと、両方のリージョンエンドポイントからの一貫した読み取りも示しています。
マルチリージョンクラスターを作成するには
-
Aurora DSQL コンソール
にサインインします。 -
ナビゲーションペインで [Clusters] (クラスター) を選択してください。
-
[クラスターを作成] を選択し、[マルチリージョン] を選択します。
-
(オプション) デフォルトの Name タグの値を変更します。
-
(オプション) このクラスターにタグを追加します。
-
[マルチリージョン設定] で、最初のクラスターに次のオプションを選択します。
-
[ウィットネスリージョン] で、リージョンを選択します。現在、マルチリージョンクラスターのウィットネスリージョンでは、米国を拠点とするリージョンのみがサポートされています。
-
(オプション) [リモートリージョンクラスター ARN] に、別のリージョンにある既存のクラスターの ARN を入力します。マルチリージョンクラスターの 2 番目のクラスターとして機能するクラスターが存在しない場合は、最初のクラスターを作成した後にセットアップを完了します。
-
-
(オプション) [クラスター設定] で、最初のクラスターに次のいずれかのオプションを選択します。
-
[暗号化の設定をカスタマイズ (詳細設定)] を選択して、AWS KMS keyを選択または作成します。
-
削除オペレーションでクラスターが削除されないようにするために、[削除保護を有効にする] を選択します。デフォルトでは、削除保護が選択されています。
-
[リソースベースのポリシー (詳細)] を選択して、このクラスターのアクセスコントロールポリシーを指定します。
-
-
最初のクラスターを作成するには、[クラスターの作成] を選択します。前のステップで ARN を入力しなかった場合、コンソールには [クラスターのセットアップは保留中です] の通知が表示されます。
-
[クラスターのセットアップは保留中です] の通知で、[マルチリージョンクラスターのセットアップを完了する] を選択します。このアクションにより、別のリージョンで 2 番目のクラスターの作成が開始されます。
-
2 番目のクラスターについて、次のいずれかのオプションを選択します。
-
リモートリージョンクラスター ARN を追加する – クラスターが存在し、マルチリージョンクラスターの 2 番目のクラスターにする場合は、このオプションを選択します。
-
別のリージョンでクラスターを作成する – 2 番目のクラスターを作成するには、このオプションを選択します。[リモートリージョン] で、この 2 番目のクラスターのリージョンを選択します。
-
-
[
your-second-regionでクラスターを作成する] を選択します。ここで、your-second-regionは 2 番目のクラスターの場所です。コンソールが 2 番目のリージョンで開きます。 -
(オプション) 2 番目のクラスターのクラスター設定を選択します。例えば、AWS KMS keyを選択できます。
-
2 番目のクラスターを作成するには、[クラスターの作成] を選択します。
-
[
initial-cluster-regionでピアリングする] を選択します。ここで、initial-cluster-regionは作成した最初のクラスターをホストするリージョンです。 -
プロンプトが表示されたら、[確認] を選択します。このステップで、マルチリージョンクラスターの作成を完了します。
2 番目のクラスターに接続してするには
-
Aurora DSQL コンソールを開き、2 番目のクラスターのリージョンを選択します。
-
[クラスター] を選択します。
-
マルチリージョンクラスター内の 2 番目のクラスターの行を選択します。
-
[クエリエディタで接続] を選択します。
-
[管理者として接続] を選択します。
-
「ステップ 3: Aurora DSQL でサンプル SQL コマンドを実行する」の手順に従って、サンプルスキーマおよびテーブルを作成して、データを挿入します。
初期クラスターをホストするリージョンから 2 番目のクラスターのデータをクエリするには
-
Aurora DSQL コンソールで、最初のクラスターのリージョンを選択します。
-
[クラスター] を選択します。
-
マルチリージョンクラスター内の 2 番目のクラスターの行を選択します。
-
[クエリエディタで接続] を選択します。
-
[管理者として接続] を選択します。
-
2 番目のクラスターに挿入したデータをクエリします。
SELECT * FROM test.hello_world;
トラブルシューティング
Aurora DSQL ドキュメントの「トラブルシューティング」セクションを参照してください。