Amazon RDS MySQL/PostgreSQLのトランザクション性能が2倍に、可用性とスケーラビリティも高める新「マルチAZ配置オプション」登場
Amazon Web Servicesは、Amazon RDSのトランザクションの処理速度を最大で2倍にし、3台のクラスタ構成で可用性を高め、リードのスケーラビリティも向上する、新たな「Multi-AZ Deployment Option」(マルチAZ配置オプション)を発表しました。
New AWS News post by @sebsto:
— AWS Blogs (@AWSBlogs) March 2, 2022
New Amazon RDS for MySQL & PostgreSQL Multi-AZ Deployment Option: Improved Write Performance & Faster Failoverhttps://t.co/sffr5boYlU
従来のAmazon RDSマルチAZ配置オプションは、プライマリデータベースとは異なるアベイラビリティゾーン(AZ)にスタンバイインスタンスが用意され、プライマリデータベースからスタンバイインスタンスに対してリプリケーションが行われます。
そして万が一プライマリデータベースで障害が発生した場合には、スタンバイインスタンスにフェイルオーバーすることで、高い可用性を実現する、というものでした。
このとき、スタンバイインスタンスは外部からのリード要求などを処理しません。そのため、従来のAmazon RDSマルチAZ配置オプションで高まるのは可用性だけであり、リードのスケーラビリティを向上させるものではありませんでした。
リードのスケーラビリティを向上させるには、スタンバイインスタンスとは別にリードレプリカとなるAmazon RDSのインスタンスを立ち上げる必要がありました。
リード要求をスタンバイインスタンスが処理できるようになる
今回、新たに発表されたマルチAZ配置オプションは、スタンバイインスタンスが2つとなり、それぞれがプライマリデータベースとは異なるAZに配置され、レプリケーションが行われます。
そしてこの2つのスタンバイインスタンスはいわゆるホットスタンバイとなるため、クラスタ構成により分散してリード要求を処理できるようになります。
つまり、新しいマルチAZ配置オプションはこれだけで可用性とスケーラビリティを同時に高めることができるようになるのです。
フェイルオーバーにかかる時間もおおむね35秒にログのレプリケーションにかかる時間を加えたものとなり、高速化されます。
新しいマルチAZ配置オプションではトランザクションの処理速度を最大で2倍にするとも説明されています。
この性能向上がなにによって実現されているのか、明確な説明はありませんが、1つはトランザクションログの保存時にローカルストレージであるNVMe SSDを活用し、まず高速なローカルストレージにログを書き込んでから、データベースのストレージであるAmazon EBSへフラッシュすることで、従来よりも高速なログの書き込みを実現していること。
もう1つは、クラスタ内でトランザクションをコミットする際にQuorumを用い、レプリケーション先である2台のうち少なくとも1台から返事が来た段階でコミットすることにより、従来のストレージレベルでのレプリケーションよりも高速なコミット処理が可能なことなどが要因となっていると思われます。
現在、新しいマルチAZ配置オプションは、米東(北バージニア)、英西(オレゴン)、欧州(アイルランド)リージョンのAmazon RDS MySQLとPostgreSQLで利用可能になっています。
あわせて読みたい
WebAssemblyのパッケージマネジメントとレジストリ「WAPM」がリニューアルして登場
≪前の記事
Amazon Prime VideoがWebAssemblyを採用/WebAssembly製のx86仮想マシンが登場/Flutter for Windowsが正式版にほか。2022年2月の人気記事