sql >> Database >  >> NoSQL >> MongoDB

Waarom is een veld met meerdere waarden een slecht idee in relationele databases?

Het grootste nadeel is de vraagbias. Het fenomeen dat dergelijke databases vaak worden ontworpen met een bepaald soort zoekopdracht in gedachten, en moeilijk te hanteren blijken te zijn wanneer andere zoekopdrachten moeten worden geschreven.

Stel dat je studenten en cursussen hebt, en je modelleert dat allemaal zodat je in een enkele rij in een enkele tabel kunt zeggen:"John Doe neemt {French, Algebra, Relational Theory}" en "Jane Doe neemt {German, Functional Computing, relationele theorie}".

Dat maakt het gemakkelijk om te vragen "wat zijn alle cursussen gevolgd door ...", maar probeer je voor te stellen wat er nodig is om het antwoord te produceren op "wat zijn alle studenten die Relationele Theorie volgen".

Probeer je eens voor te stellen wat het systeem zelf zou moeten doen om zo'n vraag (als het mogelijk zou zijn om het te schrijven) een kans te geven om redelijk te presteren ...



  1. Valideer object tegen Mongoose-schema zonder op te slaan als een nieuw document

  2. Mongodb map/reduce gebruiken in php

  3. Hoe voer ik een explain-query uit met de 2.4 C# Mongo-driver?

  4. Variabelen gebruiken in MongoDB update-instructie