sql >> Database >  >> NoSQL >> MongoDB

erfenis in documentendatabase?

Ik weet dat dit antwoord een beetje laat is, maar voor MongoDB kijk je waarschijnlijk naar iets anders.

Mongo is schemaloos, dus het concept van "tablePerHierarchy" is niet per se nuttig.

Neem het volgende aan

class A
  property X
  property Y
  property Z

class B inherits from A
  property W

In een RDMS zou je waarschijnlijk zoiets hebben

table A: columns X, Y, Z
table B: columns X, Y, Z, W

Maar MongoDB heeft geen schema. U hoeft gegevens dus niet op deze manier te structureren. In plaats daarvan zou je een "verzameling" hebben die alle objecten (of "documenten") van het type A of B (of C...) bevat.

Uw verzameling zou dus een reeks objecten zijn zoals deze:

{"_id":"1", "X":1, "Y":2, "Z":3}
{"_id":"2", "X":5, "Y":6, "Z":7, "W":6}

U zult merken dat ik objecten van type A direct naast objecten van type B opsla. MongoDB maakt dit heel gemakkelijk. Haal gewoon een document uit de collectie en het heeft "magisch" alle juiste velden/eigenschappen.

Als u echter "gegevensobjecten" of "entiteiten" heeft, kunt u uw leven gemakkelijker maken door een type toe te voegen.

{"_id":"1", "type":"A", "X":1, "Y":2, "Z":3}
{"_id":"2", "type":"B", "X":5, "Y":6, "Z":7, "W":6}

Dit maakt het gemakkelijker om een ​​fabrieksklasse te schrijven voor het laden van uw objecten.



  1. Hoe initiële gegevens in MongoDB te laden?

  2. Het systeem is niet opgestart met systemd als init-systeem (PID 1). Kan niet werken

  3. Subdocumenttypen oplossen met Spring Data en MongoDB

  4. Overloop sorteerfase gebufferd datagebruik overschrijdt interne limiet