暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

等待事件系列 -- Client:ClientRead & Client:ClientWrite

原创 金仓数据库 2024-01-22
5081

前言

在Oracle数据库中,常见的与数据交互相关的等待事件包括SQL*Nett message to client”SQL*Net message from client”。这两个等待事件分别用于表示数据库向客户端发送数据或接收数据时的等待。 KingbaseES 也有类似等待事件,“Client:ClientWrite”and “Client:ClientRead”,分别表示数据库向客户端发送数据或数据库从客户端读取数据时数据库等待。本文介绍 “Client:ClientWrite”等待事件及其可能的原因,“Client:ClientRead”的原因类似

当数据库向客户端发送数据时,可能会在数据库端遇到“Client:ClientWrite”等待事件。 这个待事件可以帮助数据库管理员识别和解决性能问题,例如网络延迟、带宽限制或客户端处理能力不足等。 通过监控和分析这些等待事件,数据库管理员可以采取适当的措施来优化系统性能,例如调整网络配置、升级客户端硬件或优化查询语句等。

等待事件含义

在数据库系统中,Client:ClientWrite 等待事件通常表示数据库正在向客户端传输数据。这种等待可能发生在正式的业务系统中,其中客户端和数据库集群之间存在频繁的数据交互。在正式业务系统中,客户端必然和数据库集群之间有数据交互,这里指的是数据接收或发送。

基于上述原理,数据库集群和客户端之间的网络吞吐量降低或网络延迟可能导致此等待事件。客户端上的CPU压力大和网络饱和也可能会导致此等待事件。CPU压力大是指CPU资源被充分利用,并且可能出现cpu资源等待;网络饱和是指数据库和客户端之间的网络承载的数据量超过了它所能处理的数据量。

等待事件增加的可能原因

1、网络延迟: 数据库集群和客户端之间的网络延迟问题,因为较高的网络延迟增加了客户端接收数据所需的时间。如果这时数据库和客户端数据交互频繁,相应的数据库就有可能等待发送数据到客户端。

2、客户端负载增加:客户端上可能存在CPU压力或网络饱和。客户端负载的增加会延迟从数据库集群接收数据,因为客户端的硬件资源无法处理大量写入的数据。

3、短时间发送到客户端大量数据:数据库集群可能短时间向客户端发送大量数据,导致客户端可能无法快速地接收数据。诸如大表之类的sql活动可能会导致此等待事件的增加。

案例分析

案例一:网络延迟问题 

背景:某银行系统在处理大量交易数据时,发现数据库响应时间明显增加,并出现大量的Client:ClientWrite等待事件。 

分析:经过深入分析,发现客户端与数据库集群之间的网络延迟达到了较高的水平。由于网络传输速度慢,导致数据从数据库集群发送到客户端的时间延长。 

解决方案:为减少网络延迟,银行决定将客户端部署在与数据库集群同一区域的子网中,并增加网络带宽。通过这些措施,网络延迟问题得到显著改善,Client:ClientWrite等待事件明显减少。这一解决方案不仅提高了数据传输速度,还优化了整体的网络性能。通过部署更高效的硬件设备、采用先进的网络技术以及合理配置网络参数,该银行系统成功地减少了Client:ClientWrite等待事件的发生频率。此外,该银行还定期对网络设备和线路进行维护和检查,确保网络的稳定性和可靠性。

案例二:短时间发送大量数据 

背景:某医院HIS系统,每次客户端启动时,都要从服务端读取某张表的数据,缓存到本地文件,用于加快查询。有一天,突然系统出现了大量的 Client:ClientWrite等待事件,并且导致大量用户无法登录。 

分析:经过网络流量监控和分析,发现短时间内数据库集群向客户端发送了大量数据,直接导致内网网络堵塞。 进一步排查发现,发生Client:ClientWrite等待时,数据库都在读取同一张。与应用开发商沟通后,确认应用每次启动时,都要读取一次该表。而早上医生上班高峰期,导致大量读取该表。但是,为什么之前没有发生同样问题了?分析发现该表昨天做了大量的update操作,导致表膨胀非常大,导致需要传送到客户端的数据块数量增大了好几倍(虽然数据量没有增长)。

解决方案:通过对该膨胀的表进行vacuum full操作后,系统就恢复了正常。

最后修改时间:2024-05-07 16:35:05
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论