O MongoDB possui limitação de tamanho de documento em suas coleções, o tamanho máximo que pode ser armazenado são 16Mb. Então o Mongo não armazena arquivos maiores? Nada disso! Ele possui um recurso chamado GridFS que faz a divisão do documento/arquivo em partes.
Por padrão cada parte da divisão pode ter 255Kb e é representada por um documento.
As collections padrões da referência do documento e suas partes são respectivamente: fs.files e fs.chunks
Existem outros motivos para o uso do GridFS além do tamanho máximo de um documento, entre eles:
- pode ser uma alternativa de armazenamento
- manter arquivos e metadados sincronizados e distribuídos
Link do GitHub utilizando Spring Boot e GridFS: https://github.com/oigorrudel/mongodb-gridfs-example
Fontes:
https://www.mongodb.com/pt-br/docs/manual/core/gridfs/
https://docs.spring.io/spring-data/mongodb/reference/mongodb/template-gridfs.html
Top comments (0)