Aurora DSQL(プレビュー)が発表されました！

2024年12月3日、Amazon Aurora DSQL(Previw)が発表されました！

https://aws.amazon.com/about-aws/whats-new/2024/12/amazon-aurora-dsql-preview/

# Aurora DSQLって？
公式には、以下のように記載されていました。
>**・Amazon Aurora DSQL は、事実上無制限のスケール、最高の可用性、インフラストラクチャ管理が不要なサーバーレス分散 SQL データベースです。**
>**・最速の分散 SQL 読み取りと書き込みを提供し、データベースのシャーディングやインスタンスのアップグレードなしで、ワークロードの需要に合わせて簡単に拡張できます。**
>**・アクティブ/アクティブ分散アーキテクチャを備えた Aurora DSQL は、99.99% の単一リージョンと 99.999% のマルチリージョンの可用性を実現するように設計された強力なデータ一貫性を保証します。
・サーバーレス設計により、パッチ適用、アップグレード、メンテナンスのダウンタイムなどの運用上の負担がなくなります。**

PostgreSQL互換もあるので、開発者目線でも使いやすそうですね。
また、プレビュー期間は無料で使用できるようです！

プレビュー中に使用感とかいっぱい確かめてみたいですね！

https://aws.amazon.com/rds/aurora/dsql/

ドキュメントはこちら。

https://docs.aws.amazon.com/en_us/aurora-dsql/


# デプロイしてみる
2024/12/4 3:20現在(日本時間)、利用可能なのはバージニア北部リージョンと、オハイオリージョンのみでした。
※以降、「現在」の記載は日本時間2024/12/04 3:20とします。

今回はバージニア北部リージョンでやってみます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/f9488cda-14c8-12e3-fa27-91f91892dc10.png)

コンソールのトップ画面は非常にシンプル。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/26dc5f8c-f214-1101-38b1-c8e7e8a20a38.png)

作成画面がこちら。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/79f5afa0-9709-d971-ace8-60a7bdfec691.png)

作成画面を見た私の第一印象は、

**え、設定項目少な！！！**

でした。

これが意味するところは、<font color="red">**本当にインフラの管理をしなくて良い**</font>、ということなのでしょう。
**オートスケーリングも、インスタンスサイズも、バッチ適用も、暗号化キー管理も、一切不要。それが、最新のAuroraです。**
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/d79f3994-8b2f-562f-ea45-1240f6ef86a5.png)

ちなみに暗号化キーはKMSのマネージドキーが用いられるようです。むしろCMKは非対応とのこと！

話を戻しましょう。
利用者側で設定できることは、大きく3つです。
## 1.クラスター設定
上記の説明にあった通り、Aurora DSQLはマルチリージョンに対応しています。
それがコンソール上で簡単に設定できるようになっています。

別のリージョンに移動して、そこで設定して〜という面倒な手順はありませんでした。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/2a37838a-5060-77f4-8229-a472bd18b58b.png)
↓ Add linked Regionsにチェックをいれる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/82b6a172-2a6d-e9a4-29ae-92b5d7e57f9c.png)

このマルチエージェント設定を有効にすると、データを書き込むすべてのトランザクションが、構成した**すべてのリンクされたリージョンに複製**されます。

これが全リージョンに対応した時、どうなってしまうのでしょうか…コストは死ぬほど嵩みそうですがw

設定項目的には、2つあります。
- Linked cluster Region(現在はオハイオのみ)
- Witness Region(現在はオレゴンのみ)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/cd8c5024-4b57-f35b-e2cc-87bcfaec4bbd.png)

Linked cluster Region：
このリージョンにもクラスターを作成して、メインリージョン(ここではバージニア北部)のクラスターとリンクしてくれます。
**書き込みを同期的に複製する**ため、リンクされたクラスターからも強力な一貫性でデータの読み書きができます。

Witness Region：
日本語訳すると、「監視リージョン」と言ったところでしょうか。
このリージョンでは、クラスターに書き込まれたすべてのデータを受信します。書き込むことは出来ません。暗号化されたトランザクションログの一部を保存し、マルチリージョンの耐久性と可用性を提供するようです。

クラスターの設定としては以上です。

## 2.削除保護
続いては削除保護。これはよく見るやつですね。
オンにしておきましょう。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/98cc2a53-08b1-3262-54a1-dcca72432f5c.png)

## 3.タグ
タグです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/20e9d793-1cdc-01da-56fe-0ee335fdfd4b.png)

なんと設定は以上。いざデプロイ！

マルチリージョンだし、データベースって立ち上がるまでやたらめったら遅いし、どのくらいかかるのかなーと思っていたんですが、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/ceed86cf-16fd-6e96-9032-9d7abe4e8bff.png)
↓
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/cd8ef39f-d5c5-9ca0-8464-c4bd975851a7.png)

**なんとたった4分で爆速デプロイ！！**
これめちゃくちゃ早くないですか…？普通のAuroraくんは見習ってどうぞ…

そしてデプロイすると右上にConnectボタンが生えてきます。ここに接続情報が載ってます！
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/4cd8f63a-8ad0-eef5-b9b5-a075decaade6.png)

実際の接続は公式ドキュメントを読みながら別途やります！

さて、リンク先リージョンに選択したオハイオリージョンも確認しておきましょうか。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3616210/ea4a3fbd-1452-cf61-82e6-88ef2952134e.png)

こちらにもクラスターが作成されていました！当たり前ですが、エンドポイントは別です。

監視リージョンに選択したオレゴンリージョンは、恐らく接続しないとログが確認できないので、ここではスキップ。

# まとめ
もし書かれていることがすべて本当なら、最強のデータベースが爆誕しました。
これはぜひキャッチアップして触っておきたい！無料のうちに！