DEVELOPER’s BLOG

技術ブログ

Amazon RDSのコスト最適化:効率的なデータベース運用で50%のコスト削減に成功!

2024.09.17 竹中 涼香
AWS SRE
Amazon RDSのコスト最適化:効率的なデータベース運用で50%のコスト削減に成功!

目次

  1. 背景
  2. コスト削減のための分析
  3. 解決策
  4. 結果

 

背景

Amazon RDS(Relational Database Service)は、多くの企業で利用されるマネージド型データベースサービスです。高可用性や自動バックアップなどの機能を備えており、運用管理の負担を軽減しますが、使い方によってはコストが膨らみ、企業のIT予算を圧迫する原因となります。
当社でもRDSのコスト最適化に取り組み、その結果、利用コストを最大で50%削減することに成功しました。


RDSコスト削減のために改善できるポイントは以下の通りです。
1. 使用していないリソースが長期間稼働している。
2. データベースインスタンスのサイズが適切でないため、リソースが過剰に割り当てられている。
3. ストレージやバックアップが最適化されていない。
4. オンデマンド料金が高く、コストが予測しづらい。
今回は、これらの問題に対処するために行った原因調査と解決策について具体的に解説し、どのようにコスト削減を実現したかを紹介します。


コスト削減のための分析

まずは、AWS Cost Explorerを使用してRDSのコストを詳細に分析しました。


RDSのコスト構成要素

1.インスタンスの稼働料金:データベースインスタンスのサイズに応じて、時間ごとに発生。
2.ストレージ料金:データベースのストレージ容量に基づいて発生。
3.バックアップ料金:自動バックアップやスナップショットに対するストレージ料金。
4.データ転送料金:データベースから外部に出るデータの転送料。


不必要なコストの原因

1.過剰なインスタンスサイズ:使用しているインスタンスサイズが過大であり、実際のトラフィックに比べてリソースが過剰に割り当てられていた。
2.ストレージの最適化不足:必要以上に高パフォーマンスなストレージタイプを使用していた。
3.リザーブドインスタンスの未活用:オンデマンドインスタンスを利用しており、リザーブドインスタンスのディスカウントを活用していなかった。


解決策

それぞれの問題を解決するため、以下の施策を実行しました。


1. インスタンスサイズの適正化

アプローチ

RDSインスタンスのサイズを、実際のトラフィックやパフォーマンス要件に基づいて見直しました。
例えば、CPU使用率やメモリ使用量がインスタンスのスペックに比べて著しく低い場合、インスタンスを小さいものに変更することで、コストを削減できます。
以下の表のように、m5.largeからt3.mediumに変更すると、月額200USD以上のコスト削減が期待できます。

RDSインスタンスサイズによる価格表"

ポイント

オンデマンドインスタンスは、利用時間に応じて料金が発生するため、インスタンスの稼働状況に応じたリサイズを行うことで、効率的にコストを削減できます。


2. ストレージタイプの最適化

アプローチ

RDSはストレージの種類として、汎用SSD(gp2)、プロビジョンドIOPS(io1)、マグネティックなどがあります。高パフォーマンスなio1を利用していたものの、実際にはそこまでの性能が必要なかったため、汎用SSD(gp2)に変更することでストレージコストを削減しました。

500GB使う場合のそれぞれのストレージタイプでのコストは以下のため、月額252USDの削減が期待できます。

ストレージタイプによるコスト比較

ポイント

ストレージタイプを最適化することで、コストを大幅に削減できます。特に、I/O性能が必要ない場合は、汎用SSD(gp2)を利用するとよいです。


3. リザーブドインスタンスの活用

アプローチ

オンデマンド料金が高く、長期的にRDSを使用することが分かっている場合、リザーブドインスタンスを購入することで、コストを大幅に削減できます。
リザーブドインスタンスは1年または3年のコミットメントを前提に割引が適用されるため、オンデマンドインスタンスに比べて最大で40%のコスト削減が期待できます。

db.t3.mediumの場合、リザーブドインスタンスの活用有無でのコストは以下です。リザードインスタンス1年利用だけでも、月額34USD程度のコスト削減が期待できます。

リザードインスタンス活用有無による価格表

ポイント

長期的な利用が予想されるRDSインスタンスに対しては、リザーブドインスタンスを活用することで、コストの削減が可能です。
オンデマンド料金と比較して、割引率が高いため、特に3年契約を検討する価値があります。


4. 自動バックアップとスナップショットの最適化

アプローチ

自動バックアップやスナップショットは、定期的に実行されますが、不要なバックアップやスナップショットを削除することで、ストレージコストを削減しました。
バックアップの保持期間を短縮することや、不要なスナップショットを定期的に削除する運用を導入しました

コスト計算

バックアップストレージ: 0.095USD/GB/月
50GBの不要なスナップショットを削除する場合: 50GB × 0.095USD = 月額4.75USDの削減


結果

これらの最適化アプローチにより、RDSのコストを全体で約50%削減することができました。
特に、インスタンスサイズの見直しとストレージタイプの最適化が大きな影響を与え、リザーブドインスタンスの活用で長期的なコスト削減効果をさらに高めました。


総合的なコスト削減効果(月額)

  • インスタンスサイズの適正化による削減: 200USD

  • ストレージタイプの最適化による削減: 252USD

  • リザーブドインスタンスの活用による削減: 34USD

  • バックアップとスナップショットの最適化による削減: 4.75USD

  • 合計削減額: 490.75USD


Amazon RDSのコスト削減は、インスタンスの見直しやストレージの最適化、長期的な利用を考慮したリザーブドインスタンスの活用など、いくつかの簡単な手順で達成可能です。




X(旧Twitter)・Facebookで定期的に情報発信しています!

関連記事

AWS Network Firewall:シンプルな非機能要件に対して、過剰な設計をしていませんか?

はじめに シナリオ:ネットワーク制御要件を満たすための設計 適材適所の判断をする コスト最適化の視点 まとめ はじめに AWSでは、あらゆるユースケースを支える豊富なサービス群が提供されています。 しかし、その選択肢の多さゆえに「本当に必要な要件以上のサービスを導入してしまう」ケースも少なくありません。 特に、非機能要件に対して、必要以上に複雑な構成を採用してしまうと、以下のようなデメリットにつながることがあります。 AWSコ

記事詳細
AWS Network Firewall:シンプルな非機能要件に対して、過剰な設計をしていませんか?
AWS SRE
5分で分かる。Amazon CloudFrontによるAWSコスト削減術

はじめに 1. EC2 × ALB × CloudFront でインフラコストを削減 2. API Gateway × Lambda × CloudFront で動的コンテンツでもコスト最適化 3. 単一リージョン × CloudFront でグローバル配信をシンプルに まとめ:CloudFrontは単なる「CDN」ではない! はじめに AWSでシステムを構築する時、「とりあえずEC2インスタンスを建てて終わり」としていませんか?もし

記事詳細
5分で分かる。Amazon CloudFrontによるAWSコスト削減術
AWS SRE
AWSマルチアカウント環境でのOS・パッチ・証明書の統合管理

はじめに SSM統合コンソールによる一元管理 OSなど構成情報の可視化 Patch Managerによるパッチ運用の標準化 証明書有効期限の集中監視と自動通知 導入効果と業務改善イメージ 導入時の設計上の留意点 継続的改善を支える「運用の仕組み化」 1.はじめに クラウド活用が拡大し、AWS環境が複数アカウントで利用されたり、複数システムにまたがって利用されることは、システム運用における構成の一貫性を維持することの難易度を

記事詳細
AWSマルチアカウント環境でのOS・パッチ・証明書の統合管理
AWS SRE コラム
AWSの可用性設計を考える:AZ・リージョン・事業継続計画(BCP)のバランス

はじめに 可用性設計の基礎:リージョンとAZの仕組みを理解する 止まらない設計を妨げる単一点障害:単一AZ構成の限界 マルチAZ構成:同一リージョン内での止まらない仕組み マルチリージョン構成:事業継続(BCP)のための冗長化 まとめ:設計段階で「どこまで止めないか」を決めよう 1. はじめに AWSは、数クリックで仮想サーバー(EC2)を立ち上げられるなど、手軽にサービスを構築できるクラウドです。システム企画や開発の初期段階では

記事詳細
AWSの可用性設計を考える:AZ・リージョン・事業継続計画(BCP)のバランス
AWS コラム

お問い合わせはこちらから