3

Are there benchmarks about the usage, speed, reliability of svn back-end databases?

  • SQLite
  • MySQL
  • PostgreSQL
  • BerkeleyDB
  • Flatfile system

Let's say we have 20 people working on the repository concurrently. What to choose?

bahrep
  • 29,961
  • 12
  • 103
  • 150
user87400
  • 240
  • 2
  • 6

2 Answers2

7

Today, you only have 2 choices if you are hosting your own server:

  1. BDB (BerkeleyDB)

  2. FSFS (direct filesystem)

These days, FSFS is the preferred backend, and has been for a number of years. There is almost no advantage to BDB, and I think it is only around for legacy compatibility. FSFS is the default on any current SVN release. A lot of the SVN binary distributions don't even have BDB support compiled in.

More info: http://svnbook.red-bean.com/en/1.5/svn.reposadmin.planning.html#svn.reposadmin.basics.backends

Note that custom implementations are possible. For example, Google Code has a custom SVN backend based on their Bigtable architecture. Not sure if any other SVN hosting providers do something similar.

Additionally, the SVN developers have been working on a replacement for FSFS called FSX or FS2. It is still experimental though.

myron-semack
  • 6,259
  • 1
  • 26
  • 38
  • 1
    Now where was it that I thought I read that recent versions of Subversion supported more backends than just BDB and FSFS? I just checked the release notes for 1.6.x and there was no mention of other backends (except for SQLite for other purposes), so I must have been mistaken. Regardless, today I wouldn't choose anything but FSFS even if there were others available. – Greg Hewgill Sep 04 '09 at 20:17
6

The FSFS backend is the most well-tested and stable of the lot. For only 20 people, you are not likely to have any performance problems at all.

Greg Hewgill
  • 951,095
  • 183
  • 1,149
  • 1,285