本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
NVMe 支持的实例
对于所含大型数据集超过常规实例内存的应用程序,NVMe 支持的实例可将查询性能提升高达 7 倍。这些实例利用 r6gd 实例上可用的基于本地非易失性存储器规范(NVMe)的固态硬盘(SSD)存储来存储临时数据,从而减少基于网络的存储访问,改善读取延迟和提高吞吐量。
本地 SSD 空间分为两个部分:
分层缓存 – 将大约 73% 的本地 SSD 分配为数据库缓存,与仅使用主内存相比,使系统能够存储多达五倍的数据库页面。本地 SSD 充当第二层缓存,而现有的内存缓冲区缓存仍作为第一层缓存。仅当缓冲区缓存和 SSD 缓存都未命中时,查询才会访问外部存储。
临时存储 – 剩余的 27% 用于非永久性临时文件存储,用于涉及排序的复杂查询或资源密集型操作(如索引构建)。在常规实例中,临时空间位于 Amazon Elastic Block Store(EBS)卷上。SSD 上本地托管的临时存储可将涉及排序的查询延迟最多减少两倍,并加快索引构建等资源密集型操作的速度。
有关 NVMe 支持的实例类型及其规格的详细信息,请参阅 实例类规格。
NVMe 支持的实例的推荐使用案例
我们建议您在以下场景中使用 NVMe 支持的实例:
读取密集型工作负载 – 如果您的工作负载是读取密集型工作负载,并且您的数据集大于缓冲区缓存(由低
BufferCacheHitRatio和高ReadIOPS指标指示),则 NVMe 支持的实例可以提供性能优势。更新密集型工作负载 – 如果您的工作负载是更新密集型工作负载,并且由于网络存储读取延迟而导致垃圾回收无法跟上,则 NVMe 支持的实例可以帮助缓解此问题。
NVMe 支持的实例可以从各种使用案例中受益,包括:
互联网规模的应用程序 – 支付处理、计费和电子商务等具有严格性能服务水平协议(SLA)的应用程序可以利用 NVMe 支持的实例的性能优势。
实时报告控制面板 – 需运行数百次指标/数据收集查询的控制面板可以受益于 NVMe 支持的实例的低延迟和高吞吐量。
生成式人工智能应用程序 – 使用向量搜索在数百万个向量嵌入中查找精确邻居或最近邻居的应用程序可以利用 NVMe 支持的实例的高性能。
在 Amazon DocumentDB 中使用 NVMe 支持的实例
要使用 Amazon DocumentDB 的 NVMe 支持的实例:
创建 Amazon DocumentDB 集群,并添加一个 NVMe 支持的实例类。有关更多信息,请参阅 创建 Amazon DocumentDB 集群。
或者,修改现有的 Amazon DocumentDB 集群,以使用一个 NVMe 支持的实例类。有关更多信息,请参阅 修改 Amazon DocumentDB 集群。
要查看不同 AWS 区域中 NVMe 支持的实例的可用性,请参阅 不同区域支持的实例类。
如果您想要从 NVMe 支持的实例切换回常规实例,请将 Amazon DocumentDB 实例的数据库实例类修改为不含 NVMe 存储的类似实例类。例如,如果当前实例类是“db.r6gd.4xlarge”,请选择“db.r6g.4xlarge”以切换回该实例类。有关更多信息,请参阅 修改 Amazon DocumentDB 集群。
监控 NVMe 支持的实例
除了 Amazon CloudWatch 中提供的常规实例指标外,NVMe 支持的实例还会发出特定于基于 NVMe 的 SSD 存储、IOPS 和吞吐量的额外指标。
NVMeStorageCacheHitRatio FreeNVMeStorage ReadIOPSNVMeStorage ReadLatencyNVMeStorage ReadThroughputNVMeStorage WriteIOPSNVMeStorage WriteLatencyNVMeStorage WriteThroughputNVMeStorage
有关这些指标的更多信息,请参阅 NVMe支持的实例指标。