sql >> Databasteknik >  >> NoSQL >> MongoDB

Mongoose:populate() / DBref eller dataduplicering?

Om du behöver fråga efter dina användare, håll användarna ensamma. Om du behöver fråga om dina uppladdningar, behåll uppladdningarna ensamma.

En annan fråga du bör ställa dig själv är:Behöver jag de inbäddade objekten varje gång jag behöver dessa data (och vice versa)? Hur många gånger kommer denna information att uppdateras? Hur många gånger kommer denna data att läsas?

Tänk på en vänskapsförfrågan: Varje gång du behöver förfrågan behöver du användaren som gjorde förfrågan, bädda sedan in förfrågan i användardokumentet.

Du kommer att kunna skapa ett index på det inbäddade objektet också, och din sökning kommer att vara mono query / snabb / konsekvent.

Bara en länk till mitt tidigare svar på en liknande fråga: Mongo DB-relationer mellan objekt

Jag tror att detta inlägg kommer att vara rätt för dig http://www.mongodb.org/ display/DOCS/Schema+Design

Användningsfall

Kund/Beställning/Beställningsrad

Bloggsystem.

Schema Design Basics

Kyle Banker, 10 år

Indexering och frågeoptimeringAlvin Richards, Senior Director för Enterprise Engineering

**Dessa 2 videor är de bästa på mongoddb som någonsin sett imho*



  1. MongoDB - hur frågar man efter ett kapslat objekt i en samling?

  2. Skapa dynamiskt schema med mongoose

  3. redis cluster reshard [ERR] Anropar MIGRATE:ERR Syntaxfel

  4. Beräkna medelvärdet för ett mongodb-dokument