I'm attaching two screen captures.
I linked a directory from the source environment. This directory contains compressed and uncompressed files for a total 344MB unvirtualized (du -h on the source).
After first snapshot (when I linked the directory) the used storage on the Delphix Engine was 233MB (2/3 of the unvirtualized space): this is a good feature of the Delphix Engine (not new: you can use some sort of file commpression manager to achieve the same result, but pratical: you take the compression advantage transparently, not taking care of the compression step).
Then, leaving the directory content unchanged, I took a second snapshot and the usage storage on the Delphix Engine was the same (233MB).
Lastly I added a zip file of 5MB of size into the directory and took a third snapshot. The engine is using now a total space of 238MB (the 5 MB of the zip file cannot be reduced any more) keeping three snapshots of the directory. Now one can rewind the directory to the first or second snapshot in a very short time respect to a traditional way: in fact in a traditional way, you have to copy from the old backup and the time of copy is function of the size of the old backup; in the delphix way, the time is function only of the process of changing the block references, re-indexing of the block of data!
In regard to your last question, the only impact on your source file system is the reading process by the rsync program. I don't know if rsync take note of the changed files for avoiding to read all files again. Let somebody reply us. In case of Oracle DB, for example, it is possible enabling the BCT (Block Change Tracking) feature of Oracle to take advantage of reading only changed block of data ;-)
Reagrds.
Gianpiero