log file sync 和 log file parallel write等待事件的区别和联系

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: log file parallel write 和log file sync这两个等待事件关系密切,很多人对这两个等待事件有一些误解,我们先来看看Oracle官方文档的解释:

log file parallel write 和log file sync这两个等待事件关系密切,很多人对这两个等待事件有一些误解,我们先来看看Oracle官方文档的解释:


log file parallel write

Writing redo records to the redo log files from the log buffer.


Wait Time: Time it takes for the I/Os to complete. Even though redo records are written in parallel, the parallel write is not complete

until the last I/O is on disk.


log file sync

When a user session commits, the session’s redo information must be flushed to the redo logfile. The user session will

post the LGWR to write the log buffer to the redo log file. When the LGWR has finished writing, it will post the user session.


Wait Time: The wait time includes the writing of the log buffer and the post.


这两个等待事件的关系可以用下面这个图说明:

image.png

这两者之间的关系是:


log file sync 是前端等待事件,是从用户进程角度看的。

log file parallel write 是后端等待事件 ,是从LGWR进程角度看的。

log file sync中包含log file parallel write 。

第一个误区,很多人以为log file sync 这个等待事件反映了写redo的效率,实际上这个事件和cpu的性能很有关系,Kevin Closson有一篇精彩的论文来说明这个问题,虽然是十几年前写的,但仍然很有借鉴价值。他在这篇论文里面举例一个noise process占用了大量的cpu资源,造成log file sync 性能下降,有兴趣的同学可以看看这篇论文。

第二个误区,很多人以为这两个 log file sync减去log file parallel write就是cpu的时间,我在网上看到了太多这样的论断,其实我们仔细看看oracle官方文档的定义,log file sync是要从写log buffer算起的,其实oracle用的是group commit 来提高写redo的效率,也叫piggyback commit,这个不能由用户设置,如果log file parallel write效率低的适合有很多时间是用于等待的,特别是12C之前的版本,只有一个LGWR进程,等待的时间长不能算CPU效率低,实际还是写redo效率低造成的!我自己的一个测试案例是log file parallel write低到10ms时,log file parallel write下降到53ms。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
7月前
|
Kubernetes Perl 容器
K8s查看集群 状态事件描述以及Pod日志信息
K8s查看集群 状态事件描述以及Pod日志信息
262 3
|
11天前
|
缓存 安全 网络协议
使用事件日志识别常见 Windows 错误
事件查看器是Windows操作系统中的标准诊断工具,用于记录系统事件,包括硬件问题、软件中断和系统行为等详细信息。通过分析这些日志,管理员能够追踪和解决系统错误。访问方法包括使用快捷键Win + R输入eventvwr.msc,或通过控制面板进入。事件查看器中的每条记录包含事件ID、来源和描述,帮助识别和解决问题。常见错误如蓝屏死机、DLL错误、驱动程序错误等,可通过更新驱动程序、运行系统诊断、使用恢复功能等方式解决。
|
20天前
|
存储 监控 安全
什么是事件日志管理系统?事件日志管理系统有哪些用处?
事件日志管理系统是IT安全的重要工具,用于集中收集、分析和解释来自组织IT基础设施各组件的事件日志,如防火墙、路由器、交换机等,帮助提升网络安全、实现主动威胁检测和促进合规性。系统支持多种日志类型,包括Windows事件日志、Syslog日志和应用程序日志,通过实时监测、告警及可视化分析,为企业提供强大的安全保障。然而,实施过程中也面临数据量大、日志管理和分析复杂等挑战。EventLog Analyzer作为一款高效工具,不仅提供实时监测与告警、可视化分析和报告功能,还支持多种合规性报告,帮助企业克服挑战,提升网络安全水平。
|
4月前
|
安全 网络安全 数据安全/隐私保护
auth required pam_tally2.so file=/var/log/tallylog onerr=fail deny=3 unlock_time=300 even_deny_root root_unlock_time=300 什么作用?
【8月更文挑战第2天】auth required pam_tally2.so file=/var/log/tallylog onerr=fail deny=3 unlock_time=300 even_deny_root root_unlock_time=300 什么作用?
82 1
|
5月前
|
架构师 存储
软件交付问题之在设计领域模型和状态机时,模型和状态机,如何解决
软件交付问题之在设计领域模型和状态机时,模型和状态机,如何解决
|
4月前
|
安全 网络安全 数据安全/隐私保护
auth required pam_tally2.so file=/var/log/tallylog onerr=fail deny=3 unlock_time=300 even_deny_root root_unlock_time=300 什么作用
【8月更文挑战第14天】auth required pam_tally2.so file=/var/log/tallylog onerr=fail deny=3 unlock_time=300 even_deny_root root_unlock_time=300 什么作用
127 0
|
5月前
|
关系型数据库 MySQL 数据库
MySQL 启动日志报错: File /mysql-bin.index not found (Errcode: 13 - Permission denied)
MySQL 启动日志报错: File /mysql-bin.index not found (Errcode: 13 - Permission denied)
252 2
|
7月前
|
存储 关系型数据库 数据库
关系型数据库文件方式存储LOG FILE(日志文件)
【5月更文挑战第11天】关系型数据库文件方式存储LOG FILE(日志文件)
221 1
|
7月前
|
存储 SQL Serverless
Serverless 应用引擎常见问题之应用下的【应用事件】以及企业级特性下的【事件中心】没有日志如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
130 0
|
7月前
|
运维 应用服务中间件 网络安全
利于群晖的File Station+SFTP实现第三方人员快速获取服务器应用日志
利于群晖的File Station+SFTP实现第三方人员快速获取服务器应用日志
230 0
下一篇
DataWorks