Xtrabackup : best options for performance

Hello everyone,

For our needs we realize daily backups of our database and each backup piece is sent to a block storage object in cloud provider. So the executed command looks like :

xtrabackup --stream=xbstream | xbcloud put target/dir/

(we also use compress options with xtrabackup command)

To speed up the process, we’re thinking of using parallelism. With the help of documentation we found 2 ways for enabling it :

  • --parallel option:
    In this case the command will be :
xtrabackup --parallel=N --stream=xbstream | xbcloud put --parallel=N target/dir/
  • --fifo-streams option:
    In this case there will be 2 commands :
xtrabackup --fifo-streams=N --fifo-dir=/tmp/fifo --stream=xbstream &
xbcloud put --fifo-streams=N --fifo-dir=/tmp/fifo target/dir/

Does anyone has experience with this and know which option is best in terms of performance ?

Thanks.

Hello @dba_S4dscjz,
Please read over this blog post, explaining FIFO streams.

Thank you very much @matthewb !