Redshift Serverlessを試してみた（起動編）

# 背景
少し前ですが、2022/7/28にRedshift ServerlessがGAになったので試してみたいと思います。
なお、プレビュー版から比較してコンピューティングのコストを削減しているとのこと。

# まとめ
- Redshift Serverlessは、サーバスペックやクラスタ、パラメータの設定等が不要ですぐに立ち上げることができます。
- クエリを実行するには、クエリエディタv2から行います。クエリエディタ（v1）からは接続ができないようでした。

# 概要
## Redshift Serverlessとは
データウェアハウスインフラストラクチャを管理しなくても、分析の実行とスケールが簡単になります。
データウェアハウスのキャパシティーを自動的にプロビジョニングしてインテリジェントにスケールし、要求が極めて厳しく予測不能なワークロードであっても、高速なパフォーマンスを提供します。
使用した分についてのみ、料金を支払う。

## 特徴
### データから数秒でインサイトを得る
データウェアハウスインフラストラクチャの管理について心配する必要はない。

### 一貫した高性能の恩恵を受ける
Redshift Serverless は、データウェアハウスのキャパシティーを自動的にスケールアップまたはスケールダウンして、要求が極めて厳しく予測不能なワークロードについても一貫して高速なパフォーマンスを提供する。

### コストを節約し、予算内に収める
使用した分についてのみ、秒単位で支払う。データウェアハウスがアイドル状態のときは、支払う必要はない。支出制限を設定し、きめ細かい支出管理で予算を超えないようにする。

### 変更なしで開始する
既存のアプリケーションや機械学習などの高度な機能の使用に影響を与えることなく、使いやすいエクスペリエンスを備えた強力な分析を活用できる。

# 実践
## 事前準備
事前に以下を用意いたしました。

- VPC
- Redshift用のサブネット3つ
- Redshift用のセキュリティグループ


## Servelessを起動する
1.ナビゲーションペインで、「Redshiftサーバレス」をクリックします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/daee368a-ffe4-07c4-4c40-23e99fdb4dd4.png" width="300" >

2.「設定をカスタマイズする」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/3e01f6c2-bbb8-86b6-a9a5-bb364dd9af04.png)

3.名前空間で以下の項目を入力します。

- 名前空間の名前
- 管理者ユーザー名
- 管理者ユーザーパスワード

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/5faf55c6-a191-0a00-343d-4039d9c2c219.png)

4.「Permission」をクリックすると、関連付けられたIAMロールを設定できます。
5.「IAMロールの管理」をクリックし、IAMロールを作成するをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/8c4c553b-e273-3c9b-d341-ace3e75ea7b6.png)

6.特定のS3バケットを選択すると、自分のS3バケットを選択できます。（S3バケットへのIAMポリシーが同時に作成されます。）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/ddc54f08-25e7-9c65-9aea-a096d8194a13.png)

7.S3バケットを選択し、「IAMロールをデフォルトとして作成する」をクリクします。
8.「Security and encription」をクリックすると、暗号化設定と監査ログの設定ができます。以下を設定します。

- 暗号化設定をカスタマイズは、AWS所有のKMSを使用するため、オフのまま
- 監査ログ記録は、ユーザログ、接続ログ、ユーザアクティビティログを記録したいので、チェックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/110a40e7-3da6-2a20-c3ed-0aea9bdc610c.png)

9.ワークグループでは、以下の項目を設定し、「設定を保存する」をクリックします。
- ワークグループ名
- VPC
- VPCセキュリティグループ
- ３つのサブネット
- 「拡張されたVPCルーティングをオンにする」をチェック


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/9dc2014c-fc35-bc1e-b2bc-3d6020f6414c.png)

10.設定の保存に成功すると、以下の画面が表示されます。作成に数分かかりました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/bd06467d-a95d-1909-c8ee-a130c5472d73.png)

11.完了したら、「次へ」をクリックします。
12.サーバレスのダッシュボードで作成した名前空間とワークグループが表示されていました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/4b2d3879-dffd-2f40-ea2d-2b082e9e69eb.png)

## スキーマを確認する
1.名前空間をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/67645083-0350-f3ea-d99f-c78735dc673c.png)

2.「クエリデータ」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/783ae911-cf0e-e243-9169-c7cb56ba21c5.png)

3.クエリエディタv2が表示されました。「Serverless：default」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/f73640e2-efcd-2b7b-734e-69d897cf3e05.png)

4.以下を入力して、「Create connection」をクリックします。

- Database
- User name
- Password

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/1329e3ce-d280-e48b-c058-921dd08699f0.png)

5.以下が確認できました。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/11195c58-c926-bac2-fa53-c0d5db192016.png" width="300">

6.ticitをクリックすると、Create sample databaseが表示されるので、「Create」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/83957ebf-7d03-d981-c238-f4cb0c7b56f1.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/43ea7e96-e8e6-374d-626e-17de34d2ed0c.png)

7.テーブルが作成されました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/206276/aa34c01f-3703-23fe-3ef6-17b081e076e4.png)


# 考察
- 簡単に作成できました。次回からは、データをロードしSQLを実行します。

# 参考
https://aws.amazon.com/jp/redshift/redshift-serverless/

https://aws.amazon.com/jp/blogs/news/amazon-redshift-serverless-now-generally-available-with-new-capabilities/