本页面简要介绍数据缓存、有关选择要启用数据缓存的工作负载的建议,以及使用数据缓存的限制。
数据缓存是一项可选功能,可将数据页面存储在高速本地固态硬盘 (SSD) 上,以加快查询处理速度。数据缓存可扩展 MySQL 缓冲池,以同时使用内存和本地 SSD。
您可以在创建实例时启用数据缓存。
在实例上启用数据缓存时,Cloud SQL 处理读取和写入请求的方式如下:
读取请求:Cloud SQL 会优先读取主内存中的数据,然后是数据缓存,最后是实例的存储空间。这样能够以最低的延迟处理读取操作。
写入请求:Cloud SQL 会将数据提交到实例的存储,同时将其写入数据缓存。
建议
数据缓存为特定工作负载类型提供性能优势。我们建议您为以下工作负载类型启用数据缓存:
- 工作数据集不适合主内存的工作负载。
如果整个工作数据集不适合实例的主内存,使用数据缓存可以最大限度地提升性能优势。在这种情况下,Cloud SQL 会将工作数据集存储在主内存和数据缓存中。有效数据集通常小于完整数据集。
- 具有 16 个或更多 vCPU 的工作负载。
使用数据缓存通常可以为具有 16 个或更多 vCPU 的工作负载提供更多性能优势。
- 读取操作次数比写入操作次数多的工作负载。
对主要由读取操作组成的工作负载使用数据缓存。
限制
- 当数据缓存变满时,它会根据最近使用的分析结果移除已存储的数据,以适应数据缓存的后续更新。
- 如果是用户或系统触发的关停或重启,则重启时数据缓存的内容可用。但是,如果主实例执行维护或遇到意外关停(例如在故障切换操作中),则数据缓存的内容将丢失。数据缓存将重新填充,这可能导致性能下降。