使用SystemTab统计PG-XL和PG的事务响应时间及耗时分布

本文通过SystemTap对比PG与XL的事务处理时间,发现XL处理时间约为PG的4倍,主要耗时在获取快照、事务ID、远程执行和提交。减少网络延迟和GTM交互,以及优化datanode执行效率,是提高XL性能的关键点。
摘要由CSDN通过智能技术生成

本文主要为了对比PG和XL的单个事务处理时间,并统计XL处理事务的耗时分布。

结论:在我们的部署环境下,XL处理单个事务的耗时约为PG的4倍,XL处理事务耗时较大的为: 获取快照、获取全局事务ID、远程执行、提交事务这几个部分。详细见后文。

SystemTab

SystemTap 是可以动态监控和跟踪Linux 内核的工具,具体介绍及安装使用不做赘述,参照 《Linux 自检和 SystemTap》

这里主要用来统计函数执行耗时。脚本样例:

global s1

#process中是可执行文件的全路径,function中为要统计的函数名,在该函数return时计算耗时
probe process("/opt/pgsql10.5/bin/postgres").function("exec_simple_query").return { 
 s1 <<< gettimeofday_us() - @entry(gettimeofday_us()) #以微秒精度来统计,@entry方法将一个表达式放置于函数入口处
}

probe timer.s(5) { #每5s执行一次以下内容
 #打印统计的次数和平均值
 printf("\ns1:\t")
 print(@avg(s1))
 printf("\t")
 print(@count(s1))
 
}

测试准备

测试环境

PG-XL部署方式:

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值