sql >> Database teknologi >  >> NoSQL >> MongoDB

Hvordan gemmer man filer i MongoDB?

Selvfølgelig kan du serialisere din fil som streng og gemme den i dokumentfeltet. Men i en sådan tilgang er der én ulempe - alle dine filer skal være under 16 mb (størrelsesgrænse af ét dokument).

Mongodb gridfs bygger oven på mongodb-samlinger og indeholder to samlinger:

  1. Filer -- metadata for filen (navn, størrelse, id, alle andre oplysninger, du vil gemme)
  2. Chunks -- samling, der indeholder serialiseret brødtekst. Hvis størrelsen på filen er mere end 16 mb limit, opretter mongodb automatisk yderligere chunk. Så enhver fil vil blive bevaret i mongodb som ét fildokument og>=1 stykke dokumenter.

Du kan tjekke her hvordan filen ser ud i mongodb.

Så hvis du besluttede dig for at gemme filer i mongodb, er det bedre at bruge fælles, testet af fællesskabstilgang - gridfs.



  1. Kan ikke binde TCP-lytter *:6379 ved hjælp af Redis på Windows

  2. Hvad svarer AbstractMongoEventListener-metoden til updateMulti mongooperation

  3. MongoDB- Henter nøjagtigt array-element, undtagen andre

  4. Har mongoose / mongodb adgang til objektreferencer i skema under aggregering?