服务器阵列卡是不是不适合使用 SSD 组建硬阵列 RAID?

2019-10-10 10:21:56 +08:00
 care

公司服务器用的 IBM x3650-M5 跑的金蝶 K3cloud Sqlserver 服务,每天下午一些部门在金蝶客户端执行批量表单审核操作的时候(大约一次 300 条审核操作),客户端需要等待大概 6 分钟左右才能处理完成,执行数据量大的搜索时候也会卡(数据库是存放在服务器阵列卡 M5210 组建的硬 RAID1 上,intel S4510x2 ),卡的时候通过 PING 大包到数据库服务器,网络并没有延时和丢包( ping 172.16.1.200 -l 1024 -t )。之前使用 sasx3 组的 raid5 也是会有客户端操作卡的情况,所以才更换的 intel S4510 数据中心固态硬盘,目前看来并没有实际明显的改善效果。这两天通过使用第三方系统检测软件检测服务器情况,发现 S4510x2 组的 raid1 突发的磁盘队列长度也还是很高。有朋友说不应该在阵列卡上使用 ssd 组建阵列,阵列卡不支持 trim 特性。但是 x3650-M5 服务器板载没有 sata 硬盘接口,而且 M5210 阵列卡不支持刷 IT 直通模式,bios 里看阵列卡支持 jbod 模式,不太明白 jbod 和 IT 直通模式的区别。如果使用 IT 直通卡的话,是否有效果?性能是否取决于 IT 直通卡的性能?请问各位大佬,阵列卡是否真的不适合使用 ssd 来组件 RAID ?或者有啥优化解决方案给帮忙支支招,感激不尽!下面贴出昨天一天通过 sysgauge 监控到的服务器平均数据图示。

服务器硬件配置:

CPU:E5-2683 V4

内存:96GB

操作系统:2008R2 (系统本身没有激活,我本来打算更换操作系统,所以也就暂时没有激活系统,不知道是否有影响)

数据库:Sqlserver 2008R2

磁盘:S4510x2 组的 raid1 (存放数据库文件) SASx3 组的 raid5 (操作系统和数据库备份)

8492 次点击
所在节点    程序员
26 条回复
loading
2019-10-10 10:28:21 +08:00
确定瓶颈是在磁盘 io ?
建议分析慢查询。

对于能不能用 ssd,对于你们来说应该不是主要问题。
misaka19000
2019-10-10 10:30:28 +08:00
先定位问题
CallMeReznov
2019-10-10 10:30:50 +08:00
金蝶问题主要在于那奇葩的数据库结构和用法上吧?
听说有无数临时表
care
2019-10-10 10:41:06 +08:00
@CallMeReznov 临时表的话现在有做计划任务执行自动清理,还有重建索引
care
2019-10-10 10:44:26 +08:00
@loading 之前没更换 ssd 之前,金蝶那边给出的方案是叫我们更换带缓存的阵列卡,更换 4 块 s4610 替换掉现有的 sasx3 组件的 raid5,所以我们才自己购买两块 S4510 来测试,发现也还是一样会卡。慢查询的话我得查阅相关资料搜集下日志确定下,谢谢。
mhycy
2019-10-10 10:55:24 +08:00
mhycy
2019-10-10 10:56:15 +08:00
@care 阵列卡的配置会对性能有影响,建议确认读写都走缓存
tankren
2019-10-10 11:05:34 +08:00
不试试优化程序?
care
2019-10-10 11:28:47 +08:00
@tankren 因为我们是买断的,所以要优化 sqlserver 的话需要订阅金蝶的 sqlserver 优化服务,还不知道是否有效果…
care
2019-10-10 11:45:09 +08:00
@mhycy 看来专业服务器还是得用 SAS 盘
leicool520
2019-10-10 12:03:19 +08:00
感觉有点老了,阵列卡支持缓存吗,是不是没电了
care
2019-10-10 12:09:36 +08:00
@leicool520 阵列卡没有缓存,所以不知道换带缓存的阵列卡的话不知道是否有效果?现在是直接写到 ssd
leicool520
2019-10-10 12:16:22 +08:00
有阵列缓存会好很多的,看看能不能升级个好点的带缓存的阵列卡
lvzhiqiang
2019-10-10 13:47:05 +08:00
sata 盘转速是多少的? 有条件上 raid 10,上 sas 盘。
care
2019-10-10 13:59:06 +08:00
@lvzhiqiang sata 盘只有两块 intel 数据中心的 s4510 组的 raid1,其他都是 sas 盘
lvzhiqiang
2019-10-10 14:02:03 +08:00
@care 先试着优化软件,不行再提升存储性能。
love
2019-10-10 14:05:11 +08:00
分析慢查询,该加的索引加上。
多年前我也在 CRM 公司上班,技术一塌糊涂,开发人员只用自己的少量数据开发,根本不管客户数据量大了之后会发生什么。
wiix
2019-10-10 14:28:23 +08:00
@care
Optional onboard data cache (DDR3 running at 1866 MHz) with the choice of the following backup:
1 GB (no battery backup)
1 GB, 2 GB, or 4 GB with flash backup
缓存貌似可以自己加。

另外 s4510 是 sata 接口,6Gb 带宽,raid1 又不增加速度。而 sas 是 12Gb 带宽,raid5 顺序读写速度跟 sata 接口的 s4510 区别不大。并且排除其他因素,数据库的批量写入和查询速度考验的是磁盘顺序读写速度,而不是随机读写和延迟。
综上 s4510*2 的 raid1 真的没多少提升。

所以不差钱上英特尔 905P 这种 PCI-E 固态吧,保守会有 4 倍的速度提升。

当然还是要先分析瓶颈来源,肯能问题不在磁盘 IO,或者数据库配置有问题,或者数据表优化不到位。有时候加几个索引能让单一操作有几十倍的性能提升。
xenme
2019-10-10 14:49:46 +08:00
看了下,阵列卡是支持 SSD,所以,这个首先排除。
另外,带缓存么?这个提升相对来说比 HDD 到 SSD 效果更明显。
加上缓存和电池看看效果。
care
2019-10-10 17:20:55 +08:00
@wiix 看了 EMC 这篇文章 https://community.emc.com/docs/DOC-30863,数据库数据的读 /写属于随机的,觉得用 ssd 应该可以提升磁盘的性能。看来先弄个阵列卡的缓存模块来测试下有没有效果了,还不行的话只能找专业的来优化 sqlserver 了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/607752

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX