sql >> Database >  >> NoSQL >> MongoDB

Hoe update-bewerkingen in GridFS uitvoeren (met Java)?

In GridFS verwijdert/verwijdert u niet een enkel document, maar eigenlijk een heleboel documenten (bestanden worden opgesplitst in stukken en elk stuk is een afzonderlijk document). Dat betekent dat het op atomaire wijze eenvoudigweg niet mogelijk is een bestand te vervangen.

Wat u in plaats daarvan kunt doen, is:

  1. voeg een nieuw bestand in met een nieuwe naam
  2. nadat dit gebeurde (gebruik de replica bevestigd schrijf-bezorgdheid), update alle verwijzingen naar het oude bestand zodat ze naar het nieuwe verwijzen
  3. nadat je hiervoor een bevestiging hebt gekregen, kun je het oude bestand verwijderen

GridFS is een soort hackachtige functie. Het is vaak beter om gewoon een aparte fileserver met een echt bestandssysteem te gebruiken om de bestandsinhoud op te slaan en alleen de metadata op te slaan in MongoDB.




  1. Toepassing kan niet worden gestart (poort 8080) niet beschikbaar

  2. socket.io broadcast-functie &Redis pub/sub-architectuur

  3. HDFS-wiscodering in Big Data Hadoop

  4. Hoe verplaats ik een redis-database van de ene server naar de andere?