IIJ GIOベストプラクティス - デザインパターン【データベース】
頻度の高いデータのキャッシュ化
データベースのキャッシュサーバを用意し、読み込み用のキャッシュサーバを設置することでパフォーマンスを改善するのが「頻度の高いデータのキャッシュ化」です。データベースサーバから直接データを応答するのではなく、用意したキャッシュサーバのメモリ上から応答することにより、パフォーマンスを改善させます。
解決できる課題
- データベースの読み込みパフォーマンスを改善したい。
デザインパターンの概要
- データベースサーバとは別のサーバにMemcachedなどのインメモリキャッシュサーバを構築します。
- アプリケーションからはまずキャッシュサーバを確認し、ヒットした場合はそのデータを利用して処理を行います。
- キャッシュヒットしなかった場合はデータベースサーバから読み込みを行い、キャッシュサーバへの登録を行います。
このデザインパターンのメリット
- キャッシュ先にディスクと比べて高速なメモリを用いることで、データベースサーバの読み込み負荷が低減され、応答性能が向上します。
補足
- アプリケーションがキャッシュサーバを参照する設定が必要です。
- 更新頻度が低く、アクセスが多いデータに利用すると効果的です。
- キャッシュサーバはCPUよりもメモリを多く消費するため、メモリ割り当て量の多いサーバの利用を推奨します。IIJ GIOでは、割り当てられるCPUごとに複数段階のメモリ量を持つサーバを提供しています。
- キャッシュの利用が難しい場合にパフォーマンスを向上させたい場合は、デザインパターン「データベース:ioMemoryを利用した高性能データベース」を参照してください。
関連情報
ベストプラクティス
その他のベストプラクティスを探す(一覧へ)
- お問い合わせ・見積依頼はお気軽にお客様に最適なサービスをご提案します
-
メールフォームでのお問い合わせお問い合わせ
電話でのお問い合わせ IIJインフォメーションセンター 03-5205-4466
(土日祝日除く 9:30~12:00、13:00~17:30)ログインアカウントをお持ちのお客様はIIJサービスオンラインからお問い合わせください