本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
CloudWatch 用于监控 Neptune 中的数据库实例性能
您可以使用 Neptune 中的 CloudWatch 指标来监控数据库实例上发生的情况,并跟踪数据库观察到的查询队列长度。以下指标特别有用:
CPUUtilization
— 显示CPU利用率百分比。VolumeWriteIOPs
– 显示集群卷的磁盘 I/O 写入的平均数量,每隔 5 分钟报告一次。MainRequestQueuePendingRequests
– 显示在输入队列中等待执行的请求数。
还可以使用带有 includeWaiting
参数的 Gremlin 查询状态端点来了解服务器上有多少个待处理的请求。这将为您提供所有正在等待的查询的状态。
以下指标可以帮助您调整 Neptune 预调配和查询策略,以提高效率和性能:
一致的延迟、高
CPUUtilization
、高VolumeWriteIOPs
和低MainRequestQueuePendingRequests
结合在一起表明,服务器正在以可持续的速率积极处理并发写入请求,几乎没有 I/O 等待。一致的延迟、低
CPUUtilization
、低VolumeWriteIOPs
和无MainRequestQueuePendingRequests
结合在一起表明,主数据库实例上有多余的容量用于处理写入请求。高
CPUUtilization
和高VolumeWriteIOPs
但延迟和MainRequestQueuePendingRequests
各不相同结合在一起表明,您发送的工作量超过了服务器在给定间隔内可以处理的工作量。考虑创建批量请求或调整批量请求的大小,以便以更少的事务开销完成相同的工作量和/或扩展主实例的规模,从而增加能够同时处理写入请求的查询线程的数量。低
CPUUtilization
以及高VolumeWriteIOPs
表明,查询线程正在等待到存储层的 I/O 操作完成。如果您看到延迟可变而MainRequestQueuePendingRequests
有所增加,请考虑创建批量请求或调整批量请求的大小,以便在减少事务开销的情况下完成相同的工作量。