Precisa de maneira simples e rápida para armazenar grandes quantidades de xml em um servidor

1

Nosso software cliente está atualmente enviando grandes quantidades de xml para nosso banco de dados do SQL Server, armazenado como NTEXT, e o banco de dados está ficando enorme e o desempenho está sofrendo. Este xml não precisa ser indexado, só precisa ser persistido de alguma forma para o disco. Existe uma maneira fácil e robusta de armazenar essas coisas para o disco em um servidor remoto? Eu olhei para o CouchDB, mas tenho certeza que existe uma maneira mais fácil de fazer isso. Eu prefiro solução unix, mas vale tudo.

Obrigado!

    
por Jacko 09.07.2010 / 02:53

2 respostas

1

Eu usaria rsync e armazenaria como arquivos simples; Se você não precisa de indexação, não há necessidade de um banco de dados. Dessa forma, quando você precisar adicionar mais dados ao que está lá, não será necessário enviar o arquivo inteiro novamente.

Deve ser tão simples quanto rsync -avz source/dir/ remote:/path/to/dest/dir , se o servidor remoto tiver SSH em execução; a manpage pode lhe dizer mais (tome cuidado com a barra de fechamento, eu posso te ajudar mais com isso se eu receber detalhes mais específicos se você quiser).

    
por 09.07.2010 / 05:31
0

Como não há necessidade de usar recursos do SQL (como o tipo XML no Microsoft SQL Server), sugiro que você armazene os arquivos diretamente no disco rígido.

Dependendo do contexto, você pode criar um diretório compartilhado com acesso somente para gravação (era possível no Windows XP, portanto, provavelmente é possível com a solução Unix).

Ou, se o software cliente for usado fora da rede local, você poderá receber dados XML por meio de serviços da Web e armazená-los no disco rígido. Ou, se o desempenho for uma preocupação importante, você poderá usar o protocolo HTTP diretamente (POST / PUT), em vez de usar os serviços da Web.

    
por 09.07.2010 / 03:00