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.