QNAP 存储性能典范实务
此文章提供您于QNAP NAS存储上的设置指引,以达到优秀特点的性能。
目的:
此典范实务主要的对象为QNAP产品的用户、合作伙伴及客户。于此典范实务里我们会依据您的工作负载提供建议的存储设置。
如何达到存储性能之优化:
此份指引将对特定之设置值提供建议, 以致能于QNAP存储系统上获得较佳的性能。
- 选择符合您需求之QNAP NAS产品。较高阶之存储产品具有更快的中央处理器、内存、和输入/输出接口。 知道更多
- 选择较大可使用的RAM。 知道更多
- 使用mSATA跟SSD硬盘做为读写高速缓存(须于QTS 4.2.0以上的版本),并使用2颗或4颗SSD以配置RAID 1或是10组态做为高速缓存池(如图一跟图二所示)。
-
配置正确的RAID跟磁盘区形态。
- 新增一RAID 10存储池。请参照附录之解释。
-
选择【单一静态分配磁盘区】或是于存储池设置下选择【多重完整配置磁盘区】。
- P.S. 【精简配置磁盘区】提供了较佳的弹性但是可能会降低某些应用程序的性能。请参考附录之图四的详情。

图一:SSD 读写高速缓存

图二:SSD 高速缓存池
*详情SSD高速缓存池如何在QNAP NAS上被访问
如何访问您的存储设备
此为一如何选择存储设备之基本准则,请为您的环境及工作负载选择适当之设备类型。
特性 | 传统硬盘 | SAS硬盘 | SSD硬盘 |
---|---|---|---|
费用 | 低 | 中 | 高 |
性能 | 低 | 中 | 高 |
容量 | 高 | 中 | 低 |
最常量测的性能特性是随机访问及顺序访问时的运作次数。其单位为IOPS(每秒的读写次数)。一个读取或是写入的运作=1次IOPS。存储系统上的存储设备所能达到之IOPS决定于转速、平均延迟及寻址时间。
不同设备之IOPS及特性
设备 | 类型 | IOPS | 界面 |
---|---|---|---|
5400 (RPM) 转速之硬盘 | HDD | ~75-100 IOPS | SATA III |
7200 (RPM)转速之硬盘 | HDD | ~125-150 IOPS | SATA III |
10,000 (RPM)转速之硬盘 | HDD | ~140 IOPS | SAS |
15,000 (RPM)转速之硬盘 | HDD | ~175-210 IOPS | SAS |
SSD Drives | SSD | ~40K-100K+ IOPS* | SATA III |
*SSD的性能取决于SSD控制芯片和闪存存储单元。
举例来说,如果以4颗7,200转的HDD,我们要求得其原始IOPS (RAW IOPS),就是4 (HDD x125 (IOPS) = 500 (IOPS)。
随机访问
随机访问指的是您可以获取一个文件内的任何部分的数据,不管其所在位置顺序。
通常为随机访问的应用范例:
- 多客户同时访问
- 数据库应用
- 于Hypervisor虚拟化环境下的VM访问
- IP-SAN 存储并使用区块式配置
顺序访问
随机访问指的是依照存放位置的顺序依序访问一份文件中的内容。
通常为顺序访问的应用范例:
- 影像编辑(于一台工作站上直接使用编辑软件)
- 影像录像(单一客户端,例如: 使用IP 摄影机及摄录像机)
- 影像推播(从NAS上观看影片)
- 大型文件发送
- 数据备份工作
随机访问vs.顺序访问
寻址运作为当磁头找到正确的数据存放磁柱以读取数据时,此运作比其他访问的I/O运作所需更多的时间。基于磁头的机械式设计,以循序的方式读写数据能较随机访问的方式更快。于机械式磁盘上的循序I/O具有较高的带宽是因为磁头的寻址运作相对次数较少,且在一次磁盘旋转下能将较多的数据读取/写入于磁盘上。
随机访问则需较高次数之寻址运作,即随机读取及写入会产生较低之带宽及IOPS。于随机访问之下,磁头的位置、旋转滞后时间、及寻址时间皆会大幅度地影响性能。

图三: 顺序访问和随机访问
举例来说
于传统磁盘上,对于每一个磁盘所需的寻址时间为10毫秒。如果是循序写入于同一磁盘需要30毫秒/每单位MB。所以如果你循序写入100 MB的数据,就需要3秒。但是如果你随机写入1MB共100次,则总共需要4秒 (3秒用于实际写入,10 毫秒 * 100 = 1秒则为所需的寻址时间)。
为何SSD读写高速缓存能够增近随机IOPS
因为SSD并不是使用机械式硬盘的构造,所以省去10毫秒的寻址时间。
QNAP SSD读写高速缓存在随机IOPS的性能上能有所帮助是因为其能重新排序高速缓存池中磁盘区块的地址以降低后端磁盘之工作负载。高速缓存池越大当然有较高的性能,但通常花费也较大,所以并不会更多制地增加高速缓存。
RAID特性
QNAP NAS存储支持不同型态之RAID,每一个RAID型态皆有不同的空间及性能的特性。在您建构您的存储设置时,请先了解您工作负载的需求。
通常在您决定要用何种类型的RAID组态时,需要考虑两个因素:空间和性能。
RAID 型态 | 最少所需之硬盘 | 容错 | 容量 (N为硬盘数) | 随机读取 | 随机写入 | 循序读取 | 循序写入 |
---|---|---|---|---|---|---|---|
RAID 0 | 2 | 无 | 100% | 高 | 高 | 高 | 高 |
RAID 1 | 2 | 只能一颗硬盘损毁 | 50% | 高 | 低 | 高 | 好 |
RAID 5 | 3 | 只能一颗硬盘损毁 | N - 1 | 高 | 低 | 高 | 好 |
RAID 6 | 4 | 只能两颗硬盘损毁 | N - 2 | 高 | 低 | 高 | 好 |
RAID 10 | 4 | 只能一颗硬盘损毁于其所属之次阶RAID型态 | 50% | 高 | 好 | 高 | 好 |
RAID 10:
极适合用于高性能应用程序,且具有高随机写入(>30%)。
RAID 5:
适合用于中度性能,一般应用环境及顺序访问的工作负载。通常RAID 5为高经济效益的方案,因为只需一颗硬盘做为冗余。但对于需要高性能的工作附载,此方案并不合适。
RAID 6:
通常用于偏重读取之应用如备份及数据封存。不适用于需要高性能的工作附载,尤其是大量随机写入之环境。
设置范例一:确认您的工作负载
将不同IOPS模式之虚拟机工作站(VM)分配于具不同RAID型态之多个存储池上,将能有效地增进效率及减低I/O瓶颈。
默认所使用之设备:
TS-EC1680U-RP
https://www.qnap.com/i/cn/product/model.php?II=126
16 x 6 TB SATA 硬盘
此客户的环境为一信息系统,其具有两个VMware ESXi 6.0 服务器。此为一丛集架构且需要执行20个VM(虚拟机)并使用QNAP NAS作为后端存储。客户做了调查发现如下的工作负载模式:
1 VM --> 高负载MS SQL数据库服务器 (30%+随机 I/O).
3 VM --> 高负载应用服务器 (30%+随机 I/O)
1 VM --> 低负载 vCenter服务 (大多为循序I/O)
1 VM --> 低负载域控制器 (大多为循序 I/O)
1 VM --> 低负载备份服务器(大多为循序 I/O)
2 VM --> 低负载DNS服务 (大多为循序 I/O)
2 VM --> 中低负载网页服务器(15%随机I/O)
5 VM --> 一般用户虚拟桌面
4 VM --> 内部开发服务器
建议设置:
- 存储池一:新增一RAID 10存储池且具有单一静态磁盘区(使用8颗以上之硬盘)。
- 将4个高负载之虚拟机(30%+ 随机 I/O)置于如上之存储池。
- 存储池二:新增一RAID 6存储池且具有多重完整配置或单一静态磁盘区(使用4颗以上之硬盘)。
- 将5个低负载之虚拟机(大多为循序 I/O)置于如上的存储池。
- 存储池三:新增一RAID 6存储池且具有多重完整配置或单一静态磁盘区(使用4颗以上之硬盘)。
- 将其余之工作负载(虚拟机、网页服务器、用户虚拟桌面和内部开发服务器)置于如上的存储池。
其它的配置方式:
- 存储池一:新增一RAID 10存储池且具有单一静态磁盘区(使用4颗以上之SSD)。
- 将所有高负载及中负载之虚拟机置于SSD硬盘上。
- 存储池二:新增一RAID 6存储池且具有多重完整配置或单一静态磁盘区(使用8颗以上之硬盘)。
- 将其于之虚拟机(大多为循序I/O)置于如上之存储池。
*此范例之VMware ESXi 6.0 服务器也可适用于Hyper-V, XenServer或其他hypervisor的架构。
设置范例二:高可达之IOPS性能
使用高性能之SSD 固态硬盘以获得优秀特点之性能
默认所使用之设备:
TS-EC1680U-RP
https://www.qnap.com/i/cn/product/model.php?II=126
16 x 1 TB SSD 硬盘
此客户的环境需求为高性能之存储环境,存储容量大小并不为主要考虑的范畴。
- 存储池一:新增一RAID 10存储池且具有单一静态磁盘区(使用所有可用之SSD硬盘)。SSD能帮助达到高的存储性能,其原因如文章前段所述。
设置范例三:多客户端的文件访问
多方同时读取及写入,意即大量的随机IOPS。
客户需要产出大量的图形及图片,具有大约50台计算机协同合作。所有50台计算机皆需要同时读取存储系统上的来源媒体库并于工作处理完成后把结果文件回存至资存储系统上。因在此环境下多方同时访问,故具有大量的随机访问,如果都只使用传统硬盘,必定会产生瓶颈。因为此工作负载需求为效率及大存储空间并行,我们可以如下的架构优化QNAP存储设备:
建议设置:
默认所使用之设备:
2 x TS-EC1680U-RP
https://www.qnap.com/i/cn/product/model.php?II=126
16 x 6 TB SATA 硬盘
- 存储池一:新增一RAID 10存储池且具有单一静态磁盘区(使用10颗以上之硬盘)。
- 将所有写入的操作都分配于如上之存储池。
- 存储池二:新增一RAID 5或 6存储池且具有多重完整配置或单一静态磁盘区(使用10颗以上之硬盘)。
- 将读取之操作都分配于如上之存储池。
其它的配置方式:
- NAS No.1& 存储池一:于QNAP NAS No.1新增一存储池且只具有SSD磁盘。
- 将所有写入的操作都分配于如上之存储池。因其可承受大量的多方写入。
- NAS No.2 & 存储池一:新增一存储池且只具有传统磁盘。
- 将读取之操作都分配于如上之存储池。
附录
QNAP NAS运用了高级的存储池技术以提供用户更高的弹性及性能。

图四:存储池
于存储池上的逻辑磁盘区配置
您可以使用 QNAP所提供的弹性磁盘区管理以能更佳地管理您的存储空间。存储池能将多个硬盘集合成为一个大的存储空间,并同时拥有不同RAID群组的保护。因此存储池能提供更更佳的冗余保护及防止数据损毁。
当存储池创建完成后,您可以选择使用系统所提供之三种方式之一于其上创建磁盘区。通常您可以依您所需之弹性或性能来选择磁盘区之类型。
静态磁盘区
静态扇区使用所有于存储池可用之空间。它为您的访问都先预备好特定之空间。你并不能于此存储池上创建多重磁盘区。
多重完整配置磁盘区
多重完整配置为一同时具有弹性及性能的磁盘区,您可以选择从存储池中配置多少空间给它。
您可以在其所属之存储池上配置多个完整配置或精简配置磁盘区。它为您的访问都先预备好特定之空间。
精简配置磁盘区
精简配置对于存储空间规划提供了较佳的弹性。在磁盘区创建时并不会立即预备好实体的空间给予访问,而是在实际写入时才会开始配置空间,意即您可以规划一个比实体空间还要大的磁盘区。您也可以在其所属之存储池上配置多个精简配置磁盘区。然而此种方式通常会影响性能。
mSATA跟 SSD读写高速缓存
固态硬盘(SSD) 高速缓存技术是基于硬盘I/O的读取高速缓存。当NAS 上的应用程序读取硬盘时,数据会被保存在SSD上,当同样的数据再次被访问时,就可以从SSD高速缓存上被读取,不用再对硬盘作访问。一般常用之数据可以被存放在SSD高速缓存上。只有当 SSD高速缓存上无该数据时才会对硬盘作访问。

SSD高速缓存数据访问的方式

参考数据:
https://en.wikipedia.org/wiki/Random_access
https://en.wikipedia.org/wiki/Sequential_access
https://en.wikipedia.org/wiki/IOPS