これは何?

AWS re:Invent 2023 の Monday Night Live にて、Amazon ElastiCache Serverless の GA(一般利用開始)が発表されたので、その内容と考察してみました。

概要

https://aws.amazon.com/jp/blogs/aws/amazon-elasticache-serverless-for-redis-and-memcached-now-generally-available/

ElastiCache Serverless とは

・ユーザーが 1 分以内にキャッシュを作成し、アプリケーションのトラフィック パターンに基づいて容量を即座に拡張できる新しいサーバーレス オプションです。

・現在 ElastiCache で利用できるデータベースストアである、Redis および Memcached のどちらにも互換性があります。

・Serverless と名がついてることから分かる通り、「ワークロードのアクセスパターンの変化に合わせた即時スケーリング」「複数のアベイラビリティーゾーンにわたる自動レプリケート」を備えています。

・すべてのワークロードに対する最大 99.99%の SLA が保証されます。

 

コンソール画面では反映済み
image.png

 

良い点と今後の改善を期待する点

良い点

・ 非常にシンプル。 インスタンスのタイプを選んだり、帯域幅の注意しつつノードの TPS 制限を気にしなくてよい。

・ユーザーが速やかに新規で Cache サービスを構築できる(1分ほど)。
・デフォルトで Multi-AZ 構成であり、HA の設定を気にする必要がない。構成変更による追加課金の心配がない。
・Auto Scailing Group が無くなった。

・エンジンバージョンのアップグレード
自動かつ透過的に適用されますが、アプリケーションへの影響はありません。
・CloudWatch によるメトリクス監視が可能
メモリ使用率 (BytesUsedForCache), CPU 使用率 (ElastiCacheProcessingUnits)やその他のキャッシュメトリクスが利用できます。
・セキュリティ、コンプライアンス
VPC 内からのアクセスが可能で、IAM を利用したデータプレーンへのアクセスが可能、KMS を利用した保存時・転送時の暗号化もサポートしています。

今後の改善を期待する点

VPC を必要とする

残念ながら VPC が必要です。そのため、例えば Lambda を VPC の外で実行している場合は、ElastiCache Serverless にアクセスするために Lambda を VPC に配置する必要があります。https://aws.amazon.com/jp/blogs/aws/amazon-elasticache-serverless-for-redis-and-memcached-now-generally-available/

スケーリングパフォーマンスが現実的なユースケースと適合しない。

ローンチ時点でのベンチマークは rps が上昇した際に、10分ごとに容量を2倍にすることができることを示しています。 Serverful elasticache を使用すると、より多くの容量をプロアクティブにプロビジョニングするために使用できる自動スケーリング ルールを使用できます。つまり、現状のオーバープロビジョニングな ElastiCache から劇的に改善されているとは言えないのでは?という感想を持っています。
またこの点に関して、考慮しておかなくてはならないのは、実際のトラフィックにおいて、スパイクの負荷というものは2倍であるとは限らない可能性があることです。 実際のユースケースでは当然、10倍になる可能性だってあります。その場合、スケールアップには最大40分かかってしまう可能性があります。
その頃にはスパイクって終わってるかもしれないですよね?。。。

コストパフォーマンスが良くない

前提として、サーバレスなので従量課金制となりますが料金設定がちょっとイケてない印象を受けます。
最低料金は$90(約¥13,500)ですが、ElastiCacheServerless に保存されたデータに +α の転送量を支払います。
データ転送量は 1GB あたり34セント。つまり、最低料金は$90だが、$90+月/GB+34セント/GBのデータ転送量を支払うことになります。
尚、ストレージは最も近い GB に切り上げられます。

https://aws.amazon.com/jp/elasticache/pricing/#Serverless

まとめ

AWS が ElastiCache Serverless の GA をリリースしたことは素晴らしいことだと思います。
ElastiCache は性質上、スパイクに備える必要があり、サーバフルインスタンスだと、オーバープロビジョニング必須のサービスであるからです。
さらに、スケールアップ、ダウンにおいて、ダウンタイムが必須であり、メンテナンスに課題が多いサービスでした。

今回のGAにより、大きな一歩を踏み出したと言えます。

ただ、前述の通り、課題が多く残り、まだサーバレスの恩恵を受けるサービスとは言い切れない部分が多々あります。

今後のアップデートに期待したいです。

AWS re:Invent 2023 re:Cap presented by iret 2023年12月7日 (木)「AWS re:Invent 2023」のポイントを解説する「AWS re:Invent 2023 re:Cap presented by iret」を開催します。

詳細はこちら:https://cloudpack.jp/lp/aws-reinvent-recap-2023/