Internal TFS server database maintenance
Brian posted these answers in a comment to a question on his January dogfood statistics post. These may be of interest to folks out there, particularly those running larger-sized Team Foundation Server installations.
1) What is the current size of our dogfood database?
- Version control: 928G
- Workitem tracking: 121G
- Warehouse: 17G
- The rest is noise.
2) Backups/Restores – With large databases, are there any issues with backups and/or restores? How often do we run backups? How long do they take typically?
Full Databases backups (using LiteSpeed) – Every night
Transactional Logs backups (using LiteSpeed) – Every 15 minutes
For our biggest instance (DevDiv, total size a little bit over 1TB) – total full backup time for all databases is around 10-12 hours.
3) Integrity Checks – Do we run periodic “integrity checks” on the database and if so, how long do they take?
dbcc checkdb for all databases – every weekend (total time 3-5 hours for all databases)
4) Index Regeneration – Do we run periodic “index regeneration” on the database and if so, how long does it take?
Index defragmentation – every weekend (total time 2-3 hours for all databases)
Full index rebuilds have gotten very long and can’t be done online so we are looking at partitioning some of our largest tables to make that infrequent maintainence operation less disruptive.