1. ホーム
  2. 法人のお客様
  3. クラウド
  4. IIJ GIOベストプラクティス
  5. 頻度の高いデータのキャッシュ化

IIJ GIOベストプラクティス - デザインパターン【データベース】

頻度の高いデータのキャッシュ化

データベースのキャッシュサーバを用意し、読み込み用のキャッシュサーバを設置することでパフォーマンスを改善するのが「頻度の高いデータのキャッシュ化」です。データベースサーバから直接データを応答するのではなく、用意したキャッシュサーバのメモリ上から応答することにより、パフォーマンスを改善させます。

その他の
ベストプラクティス
を探す(一覧へ)

解決できる課題

  • データベースの読み込みパフォーマンスを改善したい。

デザインパターンの概要

  • データベースサーバとは別のサーバにMemcachedなどのインメモリキャッシュサーバを構築します。
  • アプリケーションからはまずキャッシュサーバを確認し、ヒットした場合はそのデータを利用して処理を行います。
  • キャッシュヒットしなかった場合はデータベースサーバから読み込みを行い、キャッシュサーバへの登録を行います。

デザインパターン概要図

このデザインパターンのメリット

  • キャッシュ先にディスクと比べて高速なメモリを用いることで、データベースサーバの読み込み負荷が低減され、応答性能が向上します。

補足

  • アプリケーションがキャッシュサーバを参照する設定が必要です。
  • 更新頻度が低く、アクセスが多いデータに利用すると効果的です。
  • キャッシュサーバはCPUよりもメモリを多く消費するため、メモリ割り当て量の多いサーバの利用を推奨します。IIJ GIOでは、割り当てられるCPUごとに複数段階のメモリ量を持つサーバを提供しています。
  • キャッシュの利用が難しい場合にパフォーマンスを向上させたい場合は、デザインパターン「データベース:ioMemoryを利用した高性能データベース」を参照してください。

関連情報

ベストプラクティス
その他のベストプラクティスを探す(一覧へ)