O Subversion usa qual Base de dados?

OK, procurei e não encontrei uma resposta definitiva.

que Base de Dados utiliza o subversion?

Existe um padrão ou você pode configurá-lo para usar qualquer db??

Author: Albert Muniz, 2014-01-22

3 answers

Subversion usa FSFS e você não pode nem deve querer mudá-lo.

 6
Author: zerkms, 2014-01-21 21:25:57

Servidor

O Subversion suporta duas extremidades anteriores para armazenar repositórios. Você pode escolher qual com a opção --fs-type para o comando svnadmin create.

  1. FSFS (this is a default) which is a custom format stored with somewhat human readable files (the major exception is that delta data is binary). FSFS também usa uma base de Dados SQLite para rastrear traços de conteúdo de arquivo, de modo que o armazenamento de conteúdo existente pode ser reutilizado se o conteúdo idêntico precisar de ser armazenado novamente (depuplicação). Se você está pensando em um banco de dados relacional típico, o uso de SQLite em FSFS é o mais próximo que ele chega e o SQLite db realmente não armazena quaisquer dados e pode ser excluído sem perda de dados a qualquer momento (consequência é que futuras revisões podem ocupar mais espaço). FSFS tem tido quantidades significativas de trabalho feito sobre ele para otimizá-lo para uma variedade de situações e tem crescido uma série de botões para ser capaz de torná-lo ótimo, mesmo para incomum situacao.

  2. BDB (este é o back end original) que usa o Berkeley DB para armazenar o repositório. A partir de 1.8.0 esta extremidade traseira é obsoleta, mas ainda suportada. Não teve muito trabalho feito a ele em muito tempo e FSFS vai superá-lo em quase todos os casos.

Houve pelo menos uma outra implementação de back end pelo Google, que nunca foi lançada usando O armazenamento proprietário do Google BigTable. Acho que isto é ... na verdade, ainda é usado para o Suporte de Subversion do GoogleCode.

Subversion 1.9.0 (não lançado no momento desta escrita) irá suportar um novo armazenamento experimental chamado FSX (pronunciado como física) que será muito mais compacto e mais rápido do que FSFS. Espera-se que, uma vez que a FSX seja considerada estável, a BDB seja totalmente removida.

O Subversion não suporta a utilização de outras bases de dados de finalidade geral como o MySQL, o PostgreSQL, o Oracle e outros (RDBMS ou NOSQL) para armazenar todos o conteúdo e não há planos para apoiá-los neste momento.

Cliente

Para a cópia de trabalho do lado do cliente, o cliente Subversion usou dois formatos diferentes

  1. WCv1 (não tem exatamente um nome, mas isso é o que temos levado a chamá-lo agora) que usou arquivos planos em A.directório svn sob cada directório da cópia de trabalho. Isto foi usado pelo Subversion até 1.7.0 quando mudamos para WC-NG.

  2. WC-NG que usa uma base de Dados SQLite na .diretório svn no nível superior da cópia de trabalho. Este é usado pelo Subversion desde 1.7.0.

 5
Author: Ben Reser, 2014-01-21 23:43:56

Para armazenar o conteúdo do repositório, o Subversion usa a sua própria base de dados FSFS. Não é uma base de dados no sentido de base de dados relacional. É um método baseado no sistema de arquivos de armazenamento de conteúdo do repositório.

Para alguma funcionalidade do lado do servidor, e para armazenar metadados de cópia de trabalho no final do cliente, usa SQLite.

Não se pode mudar nenhuma destas decisões, nem se deve mexer nestas estruturas a menos que se saiba exactamente o que se deve fazer estão a fazer.

 2
Author: alroc, 2014-01-21 21:35:05