使用 CloudWatch 监控 Neptune 中的数据库实例性能 - Amazon Neptune
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 CloudWatch 监控 Neptune 中的数据库实例性能

您可以使用 Neptune 中的 CloudWatch 指标来监控数据库实例上发生的情况,并跟踪客户端观察到的查询延迟。以下指标特别有用:

  • CPUUtilization— 显示 CPU 使用百分比。

  • VolumeWriteIOPs— 显示集群卷的磁盘 I/O 写入数,每隔 5 分钟报告一次。

  • MainRequestQueuePendingRequests— 显示输入队列中等待执行的请求数。

您还可以使用Gremlin 查询状态终端节点使用includeWaiting参数。这将为您提供所有正在等待查询的状态。

以下指标可以帮助您调整 Neptune 配置和查询策略以提高效率和性能:

  • 一致的延迟,高CPUUtilizationHigh (高)VolumeWriteIOPsMainRequestQueuePendingRequests共同表明,服务器正在以可持续的速度积极处理并发写入请求,几乎没有 I/O 等待。

  • 一致的延迟,低CPUUtilizationVolumeWriteIOPs而且没有MainRequestQueuePendingRequests共同表明,您在主数据库实例上有过剩的容量来处理写入请求。

  • HighCPUUtilization而且高VolumeWriteIOPs但是延迟可变MainRequestQueuePendingRequests共同表明您发送的工作量超过了服务器在给定时间间隔内可以处理的工作量。考虑创建批处理请求或调整批处理请求的大小,以便在更少的事务开销的情况下完成同样的工作量和/或向上扩展主实例以增加能够同时处理写入请求的查询线程数量。

  • CPUUtilizationVolumeWriteIOPs意味着查询线程等待存储层的 I/O 操作完成。如果你看到可变的延迟和一些增加MainRequestQueuePendingRequests中,考虑创建或调整批处理请求的大小,以便在减少事务开销的情况下完成同样量的工作。