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