O que você provavelmente está vendo é devido à maneira como seus arquivos são alterados e como o rsync está calculando as somas de verificação. A página do manual do rsync sobre --inplace tem uma explicação básica:
o The efficiency of rsync's delta-transfer algorithm may be reduced if some data in the destination file is overwrit- ten before it can be copied to a position later in the file. This does not apply if you use '--backup', since rsync is smart enough to use the backup file as the basis file for the transfer.
Portanto, você provavelmente não deve usar --inplace ou use --backup para preservar a cópia antiga do arquivo. Dito isto, o rsync parece lidar com arquivos grandes de forma bastante ineficiente, por isso pode não ser a melhor ferramenta para o trabalho.
Se você estiver usando o LVM e realmente quiser transferir dados de snapshots, talvez não queira executar o rsync, que requer bastante cálculo e E / S nos dois lados, mas copie os dados do CoW do snapshot para a máquina de destino usando lvmsync em vez disso - isso pouparia os ciclos de E / S e da CPU ao preço de um tamanho de transferência presumivelmente maior.
Outra abordagem para o problema seria fazer checksums de dispositivos de bloco "burros" (por exemplo, com MD5) e transferir blocos de diferenciação como esta resposta aqui no ServerFault ou no script blocksync.py (associei o último fork ativo dele). Ele não dependeria de instantâneos, mas obviamente você desejaria criar um para o tempo da cópia para garantir que a consistência de seus dados seja mantida.
Se você estiver preocupado com o desempenho de gravação do seu banco de dados com instantâneos ativos, também poderá dar uma olhada em ddsnap que contém várias otimizações para snapshot e replicação de volume, trabalhando efetivamente em torno de suas preocupações.