我们让sar在我们的Ubuntu服务器上工作,但是在服务器上做了一些工作,现在它已经停止登录到当天的日志文件。
sar -b 5 5
这表明sar是活动的,并且监视数据,但是
ubuntu@testing:/var/log/sysstat$ sar
产出:
Linux 5.4.0-1063-azure (server) 02/22/22 _x86_64_ (4 CPU)
10:22:05 LINUX RESTART (4 CPU)
10:22:46 LINUX RESTART (4 CPU)
10:24:25 LINUX RESTART
我尝试应用一些优化来减小我的表格模型的整体尺寸。
在许多文章中,我们可以发现最好的解决方案是删除不必要的列,并将基数较高的列拆分为两列或更多列。
我把重点放在第二个提示上。
经过一些改变后,我的数据量变得更大了,我不知道为什么。我使用VertiPaq来分析指标。
更改前(表大小4463282609行) sar_Retail基数718621和大小224301336 B
更改sar_Retail_main基数1663后,大小为89264048 B
sar_Retail_fraction基数为10001,大小为302518208 B
如您所见,新列的总大小需要更多空间( 167480920 B)
我
说,可以以秒为单位为其输出指定分辨率。
但是,我无法通过以下命令获得二级分辨率。
sar -i 1 -f /var/log/sa/sa18
11:00:01 AM CPU %user %nice %system %iowait %steal %idle
11:10:01 AM all 0.04 0.00 0.04 0.00 0.01 99.91
11:20:01 AM all 0.04 0.00 0.04 0.00 0.00
我可以使用sar命令获取昨天的统计数据吗?我现在已经安装了sar,那么我会得到昨天的sa日志吗?如果是,那怎么做?
我可以看到今天的日志:
# sar -f /var/log/sa/sa12
Linux 3.14.19-17.43.amzn1.x86_64 (ip-10-179-219-78) 02/12/2016 _x86_64_ (16 CPU)
06:30:01 AM CPU %user %nice %system %iowait %steal %idle
06:40:01 AM all 2
我已经为未取消的负载创建了一个简短的查询。我希望能够只更新@LoadID并让它运行,或者在成功时提交,如果不成功则让回滚。
我已经在事务中获得了更新,并且可以在事务周围添加一个try-catch,但这并不总是能捕捉到所有的东西。
基本上,我必须更新一个表,并从另一个表中删除一行。然后,我想要检查,以确保更新正确进行,并确保行被删除。然后要么回滚要么提交。
以下是我目前的情况:
DECLARE @LoadID varchar(10) = 'LF2025391'
SELECT * FROM dbo.SAR_AppointmentMaster AS SAR