Flo*_*use 6 performance zfs ssd cache opensolaris
我目前正在旧文件服务器中测试 ZFS(Opensolaris 2009.06),以评估其对我们需求的使用。我们目前的设置如下:
我们要评估一个 L2ARC 的使用,所以当前的 ZPOOL 是:
$ zpool status
pool: tank
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
afstank ONLINE 0 0 0
raidz1 ONLINE 0 0 0
c11t0d0 ONLINE 0 0 0
c11t1d0 ONLINE 0 0 0
c11t2d0 ONLINE 0 0 0
c11t3d0 ONLINE 0 0 0
raidz1 ONLINE 0 0 0
c13t0d0 ONLINE 0 0 0
c13t1d0 ONLINE 0 0 0
c13t2d0 ONLINE 0 0 0
c13t3d0 ONLINE 0 0 0
cache
c14t3d0 ONLINE 0 0 0
Run Code Online (Sandbox Code Playgroud)
其中 c14t3d0 是 SSD(当然)。我们使用 bonnie++ 1.03d 运行 IO 测试,大小设置为 200 GB(-s 200g),以便测试样本永远不会完全在 ARC/L2ARC 中。没有 SSD 的结果是(多次运行的平均值,没有显示差异)
write_chr write_blk rewrite read_chr read_blk random seeks
101.998 kB/s 214.258 kB/s 96.673 kB/s 77.702 kB/s 254.695 kB/s 900 /s
Run Code Online (Sandbox Code Playgroud)
有了 SSD,它就变得有趣了。我的假设是结果在最坏的情况下至少应该是相同的。虽然写入/读取/重写速率没有不同,但随机搜索速率在各个 bonnie++ 运行之间存在显着差异(到目前为止在 188 /s 和 1333 /s 之间),平均值为 548 +- 200 /s,因此低于该值 w/o固态硬盘。
所以,我的问题主要是:
不知道为什么你会看到你所看到的行为,但我可以告诉你为什么它们不一定表明现实世界的 ZFS 性能很糟糕。Bonnie 旨在衡量实际磁盘的性能,并有意尝试不利用磁盘/内存缓存。您正在尝试使用它来衡量磁盘缓存。
L2ARC 设备可能需要几个小时才能变热。根据您用于 ARC 的主内存大小以及您的工作负载的磁盘性能,用于 L2ARC 的 100GB SSD 将需要 1-2 小时才能变热,甚至可能更长(来源)。其次,L2Arc 旨在缓存随机读取而不是流式读取工作负载。“如果您将 L2ARC 用于流式或顺序工作负载,那么 L2ARC 将主要忽略它而不缓存它”(来源)。如果您的大部分 bonnie 工作量都进入 L2ARC,我会感到非常惊讶。不要使用 bonnie++,而是尝试生成类似于您实际使用系统的负载。
尽管不太可能,但运行最新的 Bonnie++ 开发版本(1.96 与 1.03d)可能会产生更接近您预期的结果。您可能还想查看这篇关于bonnie++ 与 Sun 7000 系列的sun 博客文章,尽管它们在 NFS 上运行而不是在本地运行。
| 归档时间: |
|
| 查看次数: |
3879 次 |
| 最近记录: |