Checksum-Based Storage

JFrog Installation & Setup Documentation

Content Type
Installation & Setup
ft:sourceType
Paligo

Artifactory uniquely stores artifacts using checksum-based storage.

A file that is uploaded to Artifactory, has its SHA1 checksum calculated, and is then renamed to its checksum. It is then hosted in the configured filestore in a directory structure made up of the first two characters of the checksum. For example, a file whose checksum is ac3f5e56... is stored in directory ac; a file whose checksum is dfe12a4b... is stored in directory df and so forth. The following example shows the d4 directory that contains two files whose checksum begins with d4.

Checksum Based Storage.jpg

In parallel, Artifactory creates a database entry mapping the file's checksum to the path it was uploaded to in a repository. This way of storing binaries optimizes many operations in Artifactory since they are implemented through simple database transactions rather than actually manipulating files.

Note

Checksum-based storage applies to all binaries in all Artifactory repositories.

The following pages provide more information about checksum-based storage implementation in Artifactory.