Какие системы контроля версий используют базу данных документов для хранения? - PullRequest
3 голосов
/ 27 сентября 2010

Один из тех вопросов, которые трудно гуглить.

На днях у нас были проблемы со скоростью нашего svn-хранилища.Стандартным решением этой проблемы является «больше ОЗУ! Больше ЦП!»и т.д. Что заставило меня задуматься: существуют ли какие-либо системы контроля версий, которые используют базу данных document / nosql (mongodb, couchdb и т. д.) для базы данных? Кажется, что это может быть естественным - но яЯ не эксперт по теории управления базами данных.Возможно, есть способ настроить более поздний источник контроля для использования базы данных документа в качестве хранилища?

Ответы [ 3 ]

3 голосов
/ 27 сентября 2010

Никто из тех, кого я знаю, не делал, и они не хотели бы. Учитывая разницу в степени тестирования, это может повредить надежности (что очень плохо для репозитория исходного кода). Вероятно, это также приведет к снижению производительности на из-за невозможности создания дельта-хранилища.

Обратите внимание, что Subversion имеет два совершенно разных механизма хранения, один из которых поддерживается встроенной базой данных Berkeley, а другой - простыми файлами. Один или другой из них могут лучше подходить для вашего использования.

Кроме того, поскольку вы задали свой вопрос довольно широко, я прокомментирую Git и TFS.

Git использует очень эффективно упакованные файлы в файловой системе для хранения репозитория. Зачастую вся история меньше, чем оформить заказ. Для одного очень старого проекта, который есть в моей лаборатории, вся история составляет 57 МБ, а рабочее дерево (без учета истории) - 56 МБ.

TFS хранит большую часть (возможно, все) своих данных в базе данных SQL.

3 голосов
/ 03 октября 2010

Git использует отображенные в память файлы, такие как MongoDB:)

Хотя Git на самом деле не использует MongoDB, и я не думаю, что он этого захочет.Если вы посмотрите на Git, то на самом деле не нужна БД NoSQL, на самом деле - это БД.

0 голосов
/ 27 сентября 2010

Насколько я знаю, VCS не использует базы данных на основе noSQL / document. Идея использования couchdb и т. Д. Не нова ... но никто до сих пор не реализовал такую ​​вещь ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...