ITmedia NEWS > 速報 >

「Amazon Aurora DSQL」プレビュー公開 事実上無限にスケールする高性能なPostgreSQL互換の大規模分散データベース

» 2024年12月05日 10時16分 公開
[新野淳一ITmedia]

この記事は新野淳一氏のブログ「Publickey」に掲載された「[速報]「Amazon Aurora DSQL」プレビュー公開、事実上無限にスケールする高性能なPostgreSQL互換の大規模分散データベース」(2024年12月4日掲載)を、ITmedia NEWS編集部で一部編集し、転載したものです。

 米Amazon Web Services(AWS)は、米ラスベガスで開催中のイベント「AWS re:Invent 2024」で、PostgreSQL互換の分散データベース「Amazon Aurora DSQL」のプレビュー公開を発表しました。

 Amazon Aurora DSQLは、地理的に離れた複数のリージョンでデータベースが稼働する大規模分散データベースです。

 分散処理による高いスケーラビリティ、複数のリージョンによる冗長構成による高可用性の両方を実現するだけでなく、分散データベースにおいてトランザクション処理による強い一貫性を実現する際の弱点とされていたレイテンシの大きさを克服し、小さなレイテンシによる高速性も兼ね備えたPostgreSQL互換のデータベースだと説明されています。

分散データベースの弱点はレイテンシの増大

 一般に分散データベースは、複数のデータベースのノードが分散してリクエストを処理することで高いスケーラビリティを実現します。

 また、複数のデータベースのノードが連係することで、一部のノードが万が一停止したとしても、全体としては稼働し続ける可用性も実現できます。

 分散データベースのノードを増やすほど、高いスケーラビリティと可用性が得られるようになります。

 一方で、分散データベースのノードが増えるほど、全体としてデータの一貫性を保つことは難しくなります。

 例えば、特定のデータに対して、あるノードで変更の命令を受け取り、別のノードでは削除の命令を受け取るようなことがあれば、本来はノード間で確実に一致しているべきデータに矛盾が生じてしまいます。

 一般に分散データベースでは、データ処理が行われるときにそうしたデータの矛盾が生じないようにノード間で相互に通信を行うことでデータの一貫性を保つ仕組みを備えています。

 しかし、ひとつひとつの処理が行われるたびにノード間での通信のやりとりが何度も行われることは処理に時間がかかることにつながり、それがレイテンシの大きさとなってしまうわけです。

 特に、地理的に離れたマルチリージョン対応の分散データベースでは、ノード間の通信に時間がかかるため、処理ごとのレイテンシも非常に大きなものになってしまうという課題がありました。

Amazon Aurora DSQLは正確な時刻同期を利用

 Amazon Aurora DSQLは、このトランザクション処理を根本的に見直すことでレイテンシを劇的に小さくすることに成功したと説明されています。

 Amazon Aurora DSQLを実行しているAmazon EC2のインスタンスは、サーバ上のリファレンスクロックと衛星通信によってマイクロ秒の単位で正確な時刻の同期を行う機能を備えています。

 これにより各インスタンスがいつ何の処理を行ったかを正確に知ることができるため、Amazon Aurora DSQLはこれを利用して最小限のノード間の通信による小さなレイテンシで、全体として強いデータの一貫性を実現しています。

 AWS CEOのマット・ガーマン氏はAmazon Aurora DSQLの特徴を「事実上無制限のスケール、すべてのリージョンにおいてインフラ管理を不要とし、インスタンスがゼロにまで縮退する完全なサーバレスで、ファイブナイン(99.999%)の可用性と強い一貫性を提供し、低レイテンシでリードとライトを実行できて、PostgreSQL互換なので簡単に使い始められる」と説明しました。

 その上で、マルチリージョンにおける書き込み処理でGoogle CloudのSpannerよりもレイテンシは4分の1であると、そのレイテンシの小ささを訴えました。

 また、NoSQLの分散データベースにおいても同じ仕組みで強い一貫性を小さなレイテンシを実現した「Amazon DynamoDB global tables」も合わせて発表されました。

Copyright © ITmedia, Inc. All Rights Reserved.