このページでは、データ キャッシュの概要と、データ キャッシュを有効にした場合に最適なワークロードに関する推奨事項について説明します。このページでは、データ キャッシュの制限事項についても説明します。
データ キャッシュは、データページを高速ローカル SSD(ソリッド ステート ドライブ)に格納してクエリ処理を高速化するオプション機能です。データ キャッシュは、メモリとローカル SSD の両方を使用できるように、OS のページ キャッシュを拡張します。デフォルトでは、Cloud SQL Enterprise Plus エディション インスタンスを作成すると、データ キャッシュが自動的に有効になります。Cloud SQL Enterprise エディションのインスタンスを Cloud SQL Enterprise Plus エディションにアップグレードすると、データ キャッシュが自動的に有効になります。
データ キャッシュを使用しない場合は、Cloud SQL Enterprise Plus エディションのインスタンスを作成するとき、または Cloud SQL Enterprise エディションのインスタンスを Cloud SQL Enterprise Plus エディションにアップグレードするときに、データ キャッシュを無効にできます。既存の Cloud SQL Enterprise Plus エディション インスタンスのデータ キャッシュは、ダウンタイムをほぼゼロにして無効にできます。インスタンスのデータ キャッシュ設定を変更するには、インスタンスを編集するとインスタンスの設定をご覧ください。
データ キャッシュが有効になっているインスタンスの場合、Cloud SQL は次の方法で読み取りと書き込みのリクエストを処理します。
読み取りリクエスト: Cloud SQL は、メインメモリからのデータの読み取りを優先し、その後にデータ キャッシュ、次にインスタンスのストレージを優先します。これにより、読み取りオペレーションを可能な限り低いレイテンシで処理できます。
書き込みリクエスト: Cloud SQL は、データをインスタンスのストレージに commit し、同時にデータ キャッシュに書き込みます。
推奨事項
データ キャッシュは、特定のワークロード タイプのパフォーマンス上のメリットを提供します。 次のワークロード タイプでは、データ キャッシュを有効にすることをおすすめします。
- 作業データセットがメインメモリに収まらないワークロード。
データ キャッシュを使用すると、作業データセット全体がインスタンスのメインメモリに収まりきらないときに、パフォーマンスを最大限に高めることができます。 このシナリオでは、Cloud SQL は作業データセットをメインメモリとデータ キャッシュに保存します。 通常、作業データセットは完全なデータセットよりも小さくなります。
- 書き込みオペレーションよりも読み取りオペレーションが多いワークロード。
データ キャッシュは、主に読み取りオペレーションで構成されるワークロードに使用します。
制限事項
- データ キャッシュがいっぱいになると、最も長く使用されていない分析結果に基づいて保存されたデータが削除され、後続のデータ キャッシュの更新が処理されます。
- インスタンスに対する以下のオペレーションは、データ キャッシュの内容を消去します。これにより、データ キャッシュが再入力されている間、パフォーマンスが低下する可能性があります。
- 計画メンテナンス
- 予期しないシャットダウン(インスタンスの停止)
- メジャー バージョンのアップグレード
- インスタンスがゾーンからリージョンに、またはリージョンからゾーンに切り替わる
- インスタンスのマシンタイプの変更
- SSD のサイズは、CPU コア数によって決まります。SSD のサイズを個別に変更することはできません。
- 細分化されたキャッシュ(テーブルレベルのキャッシュやクエリレベルのキャッシュなど)はサポートされていません。
- インスタンスが停止すると、データ キャッシュの内容が失われます。これにより、インスタンスの再起動時にデータ キャッシュが再入力されている間、パフォーマンスが低下する可能性があります。