Amazon Web Services ブログ

Amazon Aurora PostgreSQL Serverless が一般利用可能に

データベースは通常、ソフトウェアアーキテクチャの最も重要な部分であり、データベースの管理、特にリレーショナルデータベースの管理は容易ではありませんでした。このため、Amazon Aurora の自動スケーリングバージョンであり、アプリケーションのワークロードに基づいて自動的に起動、シャットダウン、スケールアップまたはスケールダウンできる Amazon Aurora Serverless を開発しました。

Aurora Serverless の MySQL 互換エディションは少し前から入手可能です。本日、Aurora Serverless の PostgreSQL 互換エディションが一般利用可能になったことをお知らせいたします。

詳細を説明する前に、Amazon Aurora 開発チームが、2019 年の米国計算機学会 (ACM) のデータ管理分科会 (SIGMOD) システム賞を受賞したことを祝福します。

Aurora Serverless を使用してデータベースを作成するときは、最小容量と最大容量を設定します。クライアントアプリケーションは、自動的にスケーリングされるリソースプールにワークロードをルーティングするプロキシフリートに透過的に接続します。リソースが「ウォーム」であり、リクエストに応えるために追加する準備ができているため、スケーリングは非常に高速です。

 

Aurora によるストレージの管理方法について、Aurora Serverless では変更はありません。ストレージ層は、データベースが使用するコンピューティングリソースから独立しています。事前にストレージをプロビジョニングする必要はありません。最小ストレージは 10GB です。データベースの使用量に基づいて、Amazon Aurora ストレージは自動的に最大 64TB まで 10GB 単位で増加し、データベースのパフォーマンスには影響しません。

Aurora Serverless PostgreSQL データベースの作成
それでは、Aurora Serverless PostgreSQL データベースを起動し、自動スケーラビリティが機能していることを確認しましょう。 Amazon RDS コンソールで、Amazon Aurora をエンジンとして使用してデータベースを作成することを選択します。現在、Aurora Serverless は PostgreSQL バージョン 10.7 と互換性があります。そのバージョンを選択すると、サーバーレスオプションが利用可能になります。

新しい DB クラスターに識別子を付け、マスターユーザー名を選択して、Amazon RDS にパスワードを生成させます。データベースの作成中に、認証情報を取得できるようになります。

これで、Aurora Capacity Unit (ACU) を単位としてデータベースの最小容量と最大容量を選択できるようになります。追加のスケーリング設定では、5 分間操作しないとコンピューティングキャパシティを一時停止することにします。 この設定に基づいて、Aurora Serverless は CPU 使用率のしきい値、接続、使用可能なメモリ量に関するスケーリングルールを自動的に生成します。

データベースへの負荷のテスト
データベースに負荷をかけるために、EC2 インスタンスで sysbench を使用しています。オンライントランザクション処理 (OLTP) ワークロードの生成に役立つ、sysbench にバンドルされている Lua スクリプトがいくつかあります。

  • 最初のスクリプトである parallel_prepare.lua は、24 のテーブルに対して、テーブルごとに 100,000 行を生成します。
  • 2 番目のスクリプトである oltp.lua は、64 のワーカースレッドを使用してこれらのデータに対するワークロードを生成します。

これらのスクリプトを使用して、データベースクラスターに負荷をかけ始めます。RDS コンソールの [監視] タブから取った、このグラフを見るとわかるように、サーバーレスデータベースの容量は、要件に従って増減しています。このグラフに表示されているメトリクスは、データベースクラスターで使用されている ACU の数です。まず、sysbench のワークロードに合わせてスケールアップしています。負荷ジェネレータを停止すると、スケールダウンしてから一時停止しています。

今すぐ利用可能です
Aurora Serverless PostgreSQL は、米国東部 (バージニア北部)、米国東部 (オハイオ)、米国西部 (オレゴン)、欧州 (アイルランド)、アジアパシフィック (東京) で利用可能です。Aurora Serverless を使用する場合、データベースがアクティブなときに使用するデータベース容量について 1 秒あたりの料金と、通常の Aurora ストレージコストを支払うことになります。

Amazon Aurora の詳細については、これを作成した理由と方法を説明する、次の素晴らしい記事をお勧めします。

Amazon Aurora ascendant: How we designed a cloud-native relational database

本番環境でリレーショナルデータベースを使用することは、それほど簡単ではありませんでした。みなさんがそれを何に利用しようとしているのかを見て、とても興奮しています。