sql >> Database >  >> NoSQL >> MongoDB

Gegevens toevoegen aan bestaand gridfs-bestand

GridFS is geen kernfunctie van MongoDB, maar een conventie voor het opslaan van binaire gegevens met bijbehorende metagegevens. U zou elk document in fs.chunks . moeten kunnen wijzigen verzameling op een gebruikelijke manier terwijl het corresponderende document in fs.files . wordt bewaard intact. Het grootste probleem is het herberekenen van de MD5-controlesom, maar AFAIK wordt nergens gebruikt en is slechts een "gratis" bonus. Hoe dan ook, het is nog steeds mogelijk om alleen toe te voegen (zie MD5-samenvatting van een hervatte download).

Dus om aan een bestaand GridFS-bestand toe te voegen, moet u het overeenkomstige document vinden in fs.files . Dan afhankelijk van de vulverhouding van het laatste stuk (length % chunkSize ==0) ofwel herschrijft u het laatste chunk-document in fs.chunks met respect voor de chunkSize , en/of voeg eenvoudig nieuwe chunk(s) toe met toenemende n veld. Volgende update length in fs.files en mogelijk andere metadata.




  1. Hoe gebruik ik redis' `DUMP` en `RESTORE` (offline)?

  2. MongoDB BSON-limiet voor documentgrootte begrijpen

  3. waarom is het zo traag met 100.000 records bij het gebruik van pijplijn in redis?

  4. Stack Overflow, Redis en Cache ongeldigverklaring