2GBのUSBメモリ(USB1,USB2)2本の構成を変えての速度計測です。
USB1,2 の連結は zpool create 時は単純に並べただけでRAID-0の
動作をするような指定をしているわけではありませんが、
実質RAID-0(stripe)として動作しています。
USB1,2 mirrorは書き込み時はミラーらしく単体より遅くなってますが、
読み込み時はstripeと同様の動作をしているのがわかります。
mirror(RAID-1)はハードウェアRAIDでも高性能のものは両方のデバイスから
分散して読み込んで高速化してくれますが、低性能の(安い)ものは
片側からしか読み込まないものです。
構成 | Read 1GB | Write 1GB |
USB1 単体 | 22.2 MB/s | 7.5 MB/s |
USB2 単体 | 19.0 MB/s | 8.4 MB/s |
USB1,2 連結 | 34.0 MB/s | 15.3 MB/s |
USB1,2 mirror | 33.8 MB/s | 6.3 MB/s |
USB1,2 の連結は zpool create 時は単純に並べただけでRAID-0の
動作をするような指定をしているわけではありませんが、
実質RAID-0(stripe)として動作しています。
USB1,2 mirrorは書き込み時はミラーらしく単体より遅くなってますが、
読み込み時はstripeと同様の動作をしているのがわかります。
mirror(RAID-1)はハードウェアRAIDでも高性能のものは両方のデバイスから
分散して読み込んで高速化してくれますが、低性能の(安い)ものは
片側からしか読み込まないものです。
- USB1 単体
# zpool create -f usb1 c7t0d0 # zpool status usb1 pool: usb1 state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM usb1 ONLINE 0 0 0 c7t0d0 ONLINE 0 0 0 errors: No known data errors # zpool list usb1 NAME SIZE USED AVAIL CAP HEALTH ALTROOT usb1 1.86G 74.5K 1.86G 0% ONLINE - # /usr/gnu/bin/dd if=/dev/zero of=/usb1/testfile bs=256k count=4096 4096+0 records in 4096+0 records out 1073741824 bytes (1.1 GB) copied, 142.372 s, 7.5 MB/s # zpool export usb1 # zpool import usb1 # /usr/gnu/bin/dd if=/usb1/testfile of=/dev/null bs=256k count=4096 4096+0 records in 4096+0 records out 1073741824 bytes (1.1 GB) copied, 48.4388 s, 22.2 MB/s
- USB2 単体
# zpool create -f usb2 c9t0d0 # zpool status usb2 pool: usb1 state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM usb2 ONLINE 0 0 0 c9t0d0 ONLINE 0 0 0 errors: No known data errors # zpool list usb2 NAME SIZE USED AVAIL CAP HEALTH ALTROOT usb2 1.83G 74.5K 1.83G 0% ONLINE - # /usr/gnu/bin/dd if=/dev/zero of=/usb2/testfile bs=256k count=4096 4096+0 records in 4096+0 records out 1073741824 bytes (1.1 GB) copied, 127.538 s, 8.4 MB/s # zpool export usb2 # zpool import usb2 # /usr/gnu/bin/dd if=/usb2/testfile of=/dev/null bs=256k count=4096 4096+0 records in 4096+0 records out 1073741824 bytes (1.1 GB) copied, 56.5256 s, 19.0 MB/s
- USB1,2 連結
# zpool create -f usb12 c7t0d0 c9t0d0 # zpool status usb12 pool: usb12 state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM usb12 ONLINE 0 0 0 c7t0d0 ONLINE 0 0 0 c9t0d0 ONLINE 0 0 0 errors: No known data errors # zpool list usb12 NAME SIZE USED AVAIL CAP HEALTH ALTROOT usb12 3.69G 76K 3.69G 0% ONLINE - # /usr/gnu/bin/dd if=/dev/zero of=/usb12/testfile bs=256k count=4096 4096+0 records in 4096+0 records out 1073741824 bytes (1.1 GB) copied, 69.964 s, 15.3 MB/s # zpool export usb12 # zpool import usb12 # /usr/gnu/bin/dd if=/usb12/testfile of=/dev/null bs=256k count=4096 4096+0 records in 4096+0 records out 1073741824 bytes (1.1 GB) copied, 31.6001 s, 34.0 MB/s
- USB1,2 mirror
# zpool create -f usb12mrr mirror c7t0d0 c9t0d0 # zpool status usb12mrr pool: usb12mrr state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM usb12mrr ONLINE 0 0 0 mirror ONLINE 0 0 0 c7t0d0 ONLINE 0 0 0 c9t0d0 ONLINE 0 0 0 errors: No known data errors # zpool list usb12mrr NAME SIZE USED AVAIL CAP HEALTH ALTROOT usb12mrr 1.83G 74.5K 1.83G 0% ONLINE - # /usr/gnu/bin/dd if=/dev/zero of=/usb12mrr/testfile bs=256k count=4096 4096+0 records in 4096+0 records out 1073741824 bytes (1.1 GB) copied, 171.776 s, 6.3 MB/s # zpool export usb12mrr # zpool import usb12mrr # /usr/gnu/bin/dd if=/usb12mrr/testfile of=/dev/null bs=256k count=4096 4096+0 records in 4096+0 records out 1073741824 bytes (1.1 GB) copied, 31.7626 s, 33.8 MB/s
タグ