A compactação do sistema de arquivos é uma boa ideia para o armazenamento do CouchDB?

4

Estou hospedando bancos de dados CouchDB no Amazon EC2 e fiquei me perguntando se posso ter melhor desempenho de E / S (e melhor utilização de disco, é claro) se eu usar um sistema de arquivos que suporte a compactação. Lembro-me de ter lido em algum lugar que as futuras versões do CouchDB suportariam a compactação de dados e fiquei me perguntando se conseguiria esse recurso agora se apenas comprimir meu sistema de arquivos. Eu estou olhando para usar instâncias pequenas, mas grandes não estão fora de questão também. Eu tenho medo que a compressão mate a CPU nessas instâncias, mas não posso dizer até testar isso.

Eu pareço muito louco? Alguém já tentou isso?

    
por Hristo Deshev 21.10.2011 / 23:33

1 resposta

1

Eu não tentei isso, no princípio KISS, mas acho que você veria um aumento no desempenho.

O CouchDB usará o algoritmo Snappy compression do Google. Filipe Manana apresentou o recurso no rastreador de problemas, COUCHDB-1120 , e desde então o enviou para "trunk "(agora a ramificação" master "desde a migração do Git). Ele está na ramificação 1.2.x, portanto, quando você vir que o CouchDB 1.2 foi lançado, saberá que ele foi enviado.

Nesse meio tempo, sim, o CouchDB é basicamente nada além de pesquisas de b-tree. Mesmo as "consultas" de JavaScript (são mais como definições de índice) são executadas apenas uma vez por atualização de documento. Sendo um banco de dados, o CouchDB gosta de um bom armazenamento, e você provavelmente irá provisionar a CPU em excesso para atender às suas necessidades de armazenamento. Portanto, parece plausível que você verá um aumento ou, na pior das hipóteses, nenhuma mudança na rede, gastando mais CPU na compactação.

Se você fizer benchmarks, tenho certeza de que a comunidade do CouchDB adoraria vê-los! Sinta-se à vontade para enviá-lo para a lista de usuários ou apenas tweetá-lo mencionando o CouchDB. Boa sorte!

    
por 23.10.2011 / 02:13