From docs.oracle.com:
Working With ZFS Snapshots and Clones.
Overview of ZFS Snapshots
Overview of ZFS Clones
Sending and Receiving ZFS Data
Bloggers
Tim Foster's Weblog ZFS Automatic Snapshots 0.12 - event-based snapshots and bugfixes
Glenn Brunette's Security Weblog Cloud Safety Box
ZFS Clones, iSCSI and VMware ESX
Random footnotes of Engineering ZFS send/recv
Eric Kustarz's Weblog ZFS on a laptop?
Ramblings from Richard's Ranch Parallel ZFS send/receive
Mark's Blog, ZFS Replication.
Other:
Oracle Articles, Automating ZFS Snapshots and Tracking Software Updates
snapshot presentation (pdf)
Saving and Restoring ZFS Data
From OmniTI Labs, Zetaback ZFS backup and recovery management system.
Added Solaris 10 Update 9:
Identifying snapshot differences You can determine ZFS snapshot differences by using the zfs diff command.
For example, assume that the first snapshot (snap1) is taken after fileA is created. Then, the second snapshot (snap2) is taken after fileB is created.
$ ls /tank/username
fileA
$ zfs snapshot tank/username@snap1
$ ls /tank/username
fileA fileB
$ zfs snapshot tank/username@snap2
You can identify the snapshot differences through the zfs diff command:
$ zfs diff tank/username@snap1 tank/username@snap2
M /tank/username/
+ /tank/username/fileB
In this output, M indicates that the directory has been modified. The + indicates that fileB exists in the later snapshot.