2011-11-30 17 views
7

MongoDB essendo orientato ai documenti, la struttura delle raccolte sembra essere un caso speciale di documenti. Con ciò intendo che si può definire un documento per contenere altri documenti. Quindi una collezione è solo un documento che contiene altri documenti.Perché MongoDB ha collezioni

Quindi, perché abbiamo bisogno di collezioni, dopo tutto?

risposta

8

Logicamente sì, è possibile progettare un sistema di database come quello, ma praticamente no.

  • Una raccolta ha indici sui documenti al suo interno.
  • Una raccolta richiede che i documenti al suo interno abbiano ID univoci.
  • Un documento è di dimensioni limitate.
+0

Grazie. Qual è il limite di dimensioni del documento? – Randomblue

+0

@randomBlue dimensione del documento: http://stackoverflow.com/questions/4667597/understanding-mongodb-bson-document-size-limit – Petrogad

+1

Forse meglio fare riferimento alla fonte: 16 MB attualmente: http://www.mongodb.org/visualizzazione/docs/Documenti –

1
  • ID oggetto (_id attributo documento di primo livello) devono essere unici all'interno una collezione. Più raccolte possono avere lo stesso _id, proprio come in RDBM dove il vincolo della chiave è per tabella, tuttavia più tabelle possono contenere lo stesso valore per una chiave.
0

collezioni è un contenitore per documenti. quindi quando dici un documento che contiene altri documenti che è un po 'sbagliato perché, già, un documento può avere documenti interni.

Raccolta è l'unità in cui si mettono insieme i documenti. Tieni presente che, grazie alla progettazione senza schema, puoi inserire qualsiasi cosa in una raccolta, ma non è un buon progetto. quindi la raccolta è un contenitore logico per i documenti. come le tabelle nel mondo relazionale.