向那些了解 HP 服务器性能和 SQL 的人提出一个问题...
我正在尝试指定具有以下要求的合适服务器:
- 运行 SQL 2012 标准版(我无法获得企业版的批准)
- 主数据库目前为 600 GB,未来 3 年内可增长至 1,200 GB
- 主数据库的日志文件目前为 120 GB,允许增长到 300 GB
- OLAP 数据库为 60 GB,允许增长至 120 GB
- Reporting Services 大约为 5 到 10 GB
Windows 2012 标准版允许 >32GB(耶!)并且 SQL 2012 标准版允许使用 64 GB RAM,所以我认为具有 96 GB RAM 的服务器足以满足 OS、SQL、OLAP 和 RS 的需求...
现在我关心的是磁盘空间需求,我想把每个组件放在自己的 Raid 1 或 Raid 1+0 卷上,因此按照这个标准我需要:
- 2 个 300GB 15K RPM 6GB DP SAS 磁盘(RAID 1)用于启动操作系统(300 GB 可用)
- 主数据库使用 8 个 300GB 15K RPM 6GB DP SAS 磁盘(RAID 1+0,可用容量 1,200 GB)
- 2 x 300GB 15K RPM 6GB DP SAS 磁盘(RAID 1)用于主数据库的日志文件(300 GB 可用)
- 2 个 300GB 15K RPM 6GB DP SAS 磁盘(RAID 1)用于 OLAP
- 2 个 300GB 15K RPM 6GB DP SAS 磁盘(RAID 1)用于 Reporting Services
- 2 个 300GB 15K RPM 6GB DP SAS 磁盘(RAID 1)用于临时数据库
好的,我知道 Reporting Services 和 Temp DB 不需要各自 300 GB,但我认为有必要让它们具有相同的磁盘大小
由于 HP DL380p-Gen8 只有 8 个磁盘插槽,因此我需要一个外部 SAS 驱动器阵列(例如 D2700)来容纳剩余的 10 个磁盘。
我并不担心磁盘空间太多。
我的主要目标是让该服务器发挥出最佳性能。
所以我的主要问题是:DL380 和 D2700 之间的 IO 吞吐量是否足够?看来它只使用一条 mini-SAS 电缆将外部驱动器机箱连接到服务器。
我的第二个问题是,整体服务器规格是否符合良好/最佳实践?
我获得的预算限额大约为 6 万美元,我认为这是不够的,因此,如果我能证明这一点,我可能会要求多一点。
提前谢谢了!
答案1
我不了解 HP,但是光盘布局对我来说感觉“很慢”。
严重地。
首先 - 对所有东西都使用单独的 RAID 1 意味着如果某些东西未使用,则 IOPS 会被浪费。我会使用一个 RAID 10。
其次,您使用昂贵的 15k ROM 光盘,并且 - 哇 - 可以以较低的价格获得大约 100 倍的 IO 性能 - 基于 SATA.... SSD。
所以,我个人会确保你不会再在我公司大肆招聘了。这是最先进的——对于 2000 年来说。现在我们已经过了几年了。
如果 DL 380p 有 8 个驱动器,我会选择 ALL OUT SSD 设置,使用 480GB Samsung 843T 企业级 SSD。Raid 10。这大概是 1200GB 可用空间。8 个驱动器,8 个驱动器为 1600GB - 性能将远超您更昂贵的设置。购买 9-10 个驱动器,这样就可以更换了。不确定 raid 控制器是否能够处理该带宽 ;)
答案2
我试图避免评论中的讨论,所以我会在这里提出我的想法。
- 不要在繁忙的 SQL 服务器上使用一个大型 RAID 阵列。非常将数据、日志和 tempdb 物理地分离在不同主轴上是有充分理由的。在执行 OLTP 或任何其他类型的事务密集型环境时,您不希望针对同一阵列进行 I/O 队列
- SQL 服务器从 SSD 中获益良多,因为它们几乎总是按顺序写入/读取。增加的带宽大有帮助。确保使用双端口 SAS SSD,不要使用带有 S-ATA 接口的 SSD。
- 内存 (RAM) 仍然是查询运行速度的最重要因素。内存越多,缓存的数据和执行计划就越多。不要低估这一点。64GB 的 RAM 可能很快就会成为未来的限制因素,因此请考虑到您可能希望在将来升级到 SQL Server Enterprise。换句话说,为 RAM 升级留出空间。
- 控制器缓存对于顺序工作负载中的写入非常重要。读取缓存仅在您有热点(SQL 中并不常见)或控制器足够智能以预先读取磁盘时才有用。
- 为分析服务和报告服务单独设置一个阵列似乎有点过头了。但这确实取决于您的具体情况。只有您才能回答每个组件需要多少 IOPS/响应时间。
话虽如此 - 如果你确实选择 SSD 路线,那么我建议至少这样做:
- 2 x 300GB 10k RAID1 用于 OS+SQL 程序文件(没有必要为此浪费钱购买 SSD)
- 8 x 400GB eMLC SSD 在 RAID10 中用于 DB 数据/OLAP/报告(获取具有最快读取 iops/bw 的 SSD)
- 2 x 400GB SLC(或 eMLC)SSD 在 RAID1 中用于 DB-log(SLC 价格昂贵,但非常值得信赖。如果买不起,请使用 eMLC)
- 2 x 200GB SLC(或 eMLC)SSD 在 RAID1 中用于 TempDB(与上文相同)
答案3
这是一个糟糕的设计...部分是迷信,部分是对存储技术如何发展产生的误解。
但还有希望!
你应该看看25 托架 HP ProLiant DL380p Gen8 服务器。它可在 SAS 扩展器背板上容纳 25 个 2.5 英寸磁盘。这样就无需使用外部 D2700 存储机柜。
目前 2.5 英寸 SAS 企业级磁盘的最佳容量为 900GB。目前您可以获得 300GB、450GB、600GB、900GB 和 1.2TB 的容量。900GB 磁盘现在相对便宜。
HP Smart Array 控制器允许您为每组物理磁盘配置多个逻辑驱动器。可以将 16 个 900GB 驱动器(在一个阵列中)主轴划分为所需的相应逻辑卷。这样,您便可以获得所需的卷隔离,同时获得 16 个或更多磁盘的集体 I/O 功能。
HP 控制器能够利用 SSD 作为读取缓存来支持驱动器阵列。
如今,使用所有旋转磁盘都是过时的做法,并且不是最有效的资源利用方式。
我可以花费 25,000 美元打造一款 HP 规格产品,以最大限度提高平台的性能。
答案4
HP ProLiant DL380p Gen8 16 托架。
2 x 300GB 10k raid 1 OS
8 x 300GB 15k raid 10 mainDB
1 x 128GB Pcie fusion IO card enterprise class for temp DB
2 x 600GB 10k raid 1 for all logs
2 x 300GB 10k raid 1 for reporting and OLAP
2 x 900GB 10k raid 0 flat file backup
两个具有写回和电池的 RAID 控制器,1GB 内存
确保将 raid 10 放在 1 上,并将其余部分放在另一张卡和所有 SAS 上。