Also available in: English
Aurora DSQL が re:Invent 2024 で披露されてから 1.5 年程度たちました。DynamoDB 程度の手軽さで SQL を喋る RDBMS が利用できる上に、DynamoDB を含む purpose-built databases にありがちな設計の難しさがない、という点でかなり便利なデータベースサービスになっています。ただ、それだけ経つのにまだあまり世の中に事例が出回っていません。
それもそのはず、SQL は喋れるものの、そのランタイムの手軽さを実現するために vanilla な PostgreSQL とは異なり、より DynamoDB のようなデータベースに近い挙動で提供されていて、それがトレードオフとして存在します。別の言い方をすると PostgreSQL とはあくまでプロトコル互換であって、挙動まで互換ではありません。その関係で既存の PostgreSQL アプリケーションをそのまま移行しづらい点がネックとなっている気がしています。その点においては Neon のような他の PostgreSQL 互換サーバーレス DB の方が、価格モデルが異なるものの有利と言えます。
本稿では実際に Rails で Aurora DSQL をデータベースとして採用し、昨年末から新規にシステムを開発してきた中で、現状の困難なポイントと対処方法を紹介します。