この頃、AWSはAurora Serverless v2とAuroraプロビジョニングデータベースインスタンス用の新しいData APIを発表した。現在PostgreSQLクラスタでのみ利用可能なData APIは、データベースクラスタへの永続的な接続を必要とせず、サーバーレスのデプロイメントを簡素化したいと考える開発者が待ち望んでいたニーズに応えるものだ。
Data APIを利用することで、開発者はHTTPSエンドポイントを介してAuroraクラスタにアクセスし、接続やデータベースドライバを管理することなくSQL文を実行できる。Aurora Serverless v1は数年前にData APIを導入したが、Aurora Serverless v2にはData APIがないため、AWS上で動作するサーバーレスワークロードにとって大きな制約となっている。
AWSのプリンシパル・データベース・スペシャリスト・ソリューション・アーキテクトであるSteve Abraham氏は、次のように記載している。
AWSは、Aurora Serverless v2とAuroraのプロビジョニングのためにData APIを再構築し、我々の最大の顧客が必要とするスケールと高可用性レベルで動作するようにしました。(データAPIはAurora Serverless v2とプロビジョニングされたインスタンスの両方で動作するため、データベースのフェイルオーバーは高可用性を提供するためにサポートされています。
サーバーレスコミュニティはこの新機能をポジティブに受け止めているが、Joshua Moore氏はX(旧Twitter)にコメントを寄せている。
これは良いステップですが、限界の1つとして、書き込みクラスタのみがサポートされ、読み込みクラスタはサポートされていないことが挙げられます!リードはほとんどのアプリが大きな打撃を受けるところですよ!
Data APIはMySQLクラスタとバースト可能な一般クラスではまだ利用できない。さらに、Performance InsightsはData APIを使用したクエリを監視できない。
ドキュメントによると、最新のRDS Data APIは、Aurora Serverless v1の古いものと後方互換性がある。 それでも、2つのバージョンには大きな違いがあり、クラウドプロバイダーは顧客に最新バージョンへの移行を勧めている。Abraham氏ははこう付け加える。
我々は1秒あたり1,000リクエストの制限を撤廃しました。Aurora Serverless v2とAuroraプロビジョニングのData APIで1秒あたりのリクエストを制限する唯一の要因は、データベースインスタンスのサイズであり、したがって利用可能なリソースです。
Redditの人気スレッドで、ユーザーのbeelzebroth氏はこのように書きこんでいる。
Aurora Serverlessが好きなら、これは大きなことです。データAPIは、私がv1クラスタにしがみついていた大きな理由です。
ユーザーNater5000はこう 付け加えている。
これは素晴らしいです。Serverless v2でData APIがなかったのはとても残念でした。もう戻ってこないと思っていました。
Data APIには、クライアントに返される結果セットの1行あたり64KBというサイズ制限がある。この新機能はAWS AppSyncでサポートされており、開発者はAppSync JavaScriptリゾルバを使ってSQL文を実行し、Auroraデータベースに接続するGraphQL APIを作成できる。
Data APIは、バージニア北部、オレゴン、フランクフルト、東京のAurora PostgreSQL 15.3+、14.8+、13.11+クラスタをサポートしている。発表によると、MySQLクラスタ用のData APIは近日中に利用可能になるという。