Armazenamento de objetos para um aplicativo Web

Atualmente, estou trabalhando em um site em que aproximadamente 40 milhões de documentos e imagens devem ser veiculados para seus usuários. Preciso de sugestões sobre qual método é o mais adequado para armazenar conteúdo sujeito a esses requisitos.

sistema deve estar altamente disponível, dimensionável e duráves arquivos devem ser armazenados permanentemente e os usuários devem poder modificá-lo Devido às restrições do cliente, provedores de armazenamento de objetos de terceiros, como Amazon S3 e CDNs, não são adequado O tamanho do arquivo pode variar de 1 MB a 30 MB. (No entanto, cerca de 90% dos arquivos teriam menos de 2 MB) latência de recuperação de conteúdo não é um grande problema. Portanto, a indexação ou o cache não é muito important

Fiz uma pesquisa e descobri as seguintes soluções;

Armazenamento de conteúdo como BLOBs em bancos de dadosando o GridFS para dividir e armazenar conteúd Armazenamento de conteúdo em um servidor de arquivos em diretórios usando um hash e armazenando os metadados em um banco de dadoUsando um sistema de arquivos distribuído, como GlusterFS ou HDFS, e armazenando os metadados do arquivo em um banco de dado

O site é desenvolvido usando PHP e o Couchbase Community Edition é usado como banco de dado

Eu realmente aprecio qualquer contribuição.

Obrigado

questionAnswers(2)

yourAnswerToTheQuestion