Subversion uses pluggable model for data store backends. Historically there were two backends available:
- BDB (now deprecated) that keeps everything in a Berkeley DB and
- FSFS that stores data in ordinary flat files, using a custom format.
The VisualSVN Distributed File System (VDFS) is a proprietary data store backend that transparently implements bidirectional data replication.
Regular FSFS repository
The current standard Subversion repositories are based on the FSFS data store backend. The FSFS repositories are fully functional and are suitable for almost every usage model.
Distributed VDFS repository
The VisualSVN Distributed File System (VDFS) is a proprietary data store backend that implements transparent data replication across different servers. Thanks to the Subversion's modular design, distributed VDFS repositories are functionally equivalent to regular Subversion FSFS repositories. End-users can perform all possible Subversion operations with master and slave VDFS repositories — checking out and updating working copies, committing changes, modifying revision properties, locking and unlocking files, etc.
The VisualSVN Distributed File System follows the classic master/slave replication architecture. Each VDFS repository can be created as either a master or a slave, not both. Commits performed to the master repository are automatically replicated to all the slave repositories.
As it said above, slave repositories are also writable. When a commit is performed to the slave repository, the corresponding transaction is simultaneously committed to the master and to the involved slave repository. Then the data becomes replicated to other slave repositories.
See also
Version Control Basics
KB135: Understanding the Subversion repository types and formats
KB136: Getting started with Multisite Repository Replication