borg-benchmark-crud

BORG-BENCHMARK-CRUD(1) borg backup tool BORG-BENCHMARK-CRUD(1)

NAME

   borg-benchmark-crud - Benchmark Create, Read, Update, Delete for archives.

SYNOPSIS

   borg [common options] benchmark crud [options] REPOSITORY PATH

DESCRIPTION

   This command benchmarks borg CRUD (create, read, update, delete) operations.

   It  creates input data below the given PATH and backups this data into the given REPO.  The REPO must already exist (it could be a fresh empty repo or an ex
   isting repo, the command will create / read / update / delete some archives named borg-benchmark-crud* there.

   Make sure you have free space there, you'll need about 1GB each (+ overhead).

   If your repository is encrypted and borg needs a passphrase to unlock the key, use:

      BORG_PASSPHRASE=mysecret borg benchmark crud REPO PATH

   Measurements are done with different input file sizes and counts.  The file contents are very artificial (either all zero or all random), thus  the  measure‐
   ment results do not necessarily reflect performance with real data.  Also, due to the kind of content used, no compression is used in these benchmarks.

   C- == borg create (1st archive creation, no compression, do not use files cache)
          C-Z-  ==  all-zero files. full dedup, this is primarily measuring reader/chunker/hasher.  C-R- == random files. no dedup, measuring throughput through
          all processing stages.

   R- == borg extract (extract archive, dry-run, do everything, but do not write files to disk)
          R-Z- == all zero files. Measuring heavily duplicated files.  R-R- == random files. No duplication here, measuring throughput  through  all  processing
          stages, except writing to disk.

   U- == borg create (2nd archive creation of unchanged input files, measure files cache speed)
          The  throughput  value  is  kind  of virtual here, it does not actually read the file.  U-Z- == needs to check the 2 all-zero chunks' existence in the
          repo.  U-R- == needs to check existence of a lot of different chunks in the repo.

   D- == borg delete archive (delete last remaining archive, measure deletion + compaction)
          D-Z- == few chunks to delete / few segments to compact/remove.  D-R- == many chunks to delete / many segments to compact/remove.

   Please note that there might be quite some variance in these measurements.  Try multiple measurements and having a otherwise idle machine  (and  network,  if
   you use it).

OPTIONS

   See borg-common(1) for common options of Borg commands.

arguments

   REPOSITORY
          repository to use for benchmark (must exist)

   PATH   path were to create benchmark input data

SEE ALSO

   borg-common(1)

AUTHOR

   The Borg Collective

                                                                         2023-03-22                                                       BORG-BENCHMARK-CRUD(1)