Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 6 Sep 2006 15:34:57 +0200
From:      Ulrich =?iso-8859-1?q?Sp=F6rlein?= <ulrich.spoerlein@1822direkt.com>
To:        stable@freebsd.org
Subject:   Snapshot duration, performance and how to avoid I/O lock
Message-ID:  <239947161@misc1.1822direkt.com>

index | next in thread | raw e-mail

Hi,

I have to create regular snapshots of several volumes roughly 1.4TB in 
size (each). But using mksnap_ffs takes a lot of time (45 minutes) and
it looks like it could be speed up.

iostat reports some 2MB/s of I/O

      tty             da0              da1              sa0             
cpu
 tin tout  KB/t tps  MB/s   KB/t tps  MB/s   KB/t tps  MB/s  us ni sy in id
   0   77 16.00 120  1.87   0.00   0  0.00   0.00   0  0.00   0  0  8  4 89
   0  231 16.00 131  2.04   0.00   0  0.00   0.00   0  0.00   0  0  6  2 91
   0   77 16.00 127  1.98   0.00   0  0.00   0.00   0  0.00   0  0  5  3 92
   0  204 16.00 123  1.92   0.00   0  0.00   0.00   0  0.00   0  0  6  3 91
   0   77 16.00 128  2.00   0.00   0  0.00   0.00   0  0.00   0  0  6  3 91

gstat reports
dT: 0.501s  w: 0.500s
 L(q)  ops/s    r/s   kBps   ms/r    w/s   kBps   ms/w   %busy Name
    1    126     84   1341   11.8     42    671    2.7   99.7| da0

The filesystem under snapshotting was *empty*, and right now is at

Filesystem  1K-blocks     Used      Avail Capacity  Mounted on
/dev/da0s2d 1376038286  815092 1265140132     0%    /export/vol1

How come, a snapshot of an empty file system takes more than 800MB? Aren't the
blocks copy-on-write?

Why is the disk 100% busy while only a mere 2MB/s are pushed? This is on a
3ware device driver for 9000 series storage controllers, version: 3.60.02.012
twa0: <3ware 9000 series Storage Controller> port 0x3000-0x303f mem 0xdc000000-0xddffffff,0xd8300000-0xd8300fff irq 48 at device 1.0 on pci3
twa0: [FAST]
twa0: INFO: (0x15: 0x1300): Controller details:: Model 9550SX-8LP, 8 ports, Firmware FE9X 3.04.00.005, BIOS BE9X 3.04.00.002

with a RAID5 over 7 SATA disks.

da0 at twa0 bus 0 target 0 lun 0
da0: <AMCC 9550SX-8LP DISK 3.04> Fixed Direct Access SCSI-3 device 
da0: 100.000MB/s transfers
da0: 1430448MB (2929557504 512 byte sectors: 255H 63S/T 182356C)

Another thing is blocking other disk I/O while snapshotting. Right now I did
a ls(1) in the .snap directory, so I understand the filesystem is now suspended.
The workaround would then be to "dont do that". But what if other snapshots are
accessed during that time? I want to provide yesterdays snapshot to our users
while taking the current snapshot and providing access to the newest data at the
same time.

Cheers
Ulrich Spoerlein


home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?239947161>