मुझे पता है कि यह उत्तर थोड़ा देर से है, लेकिन MongoDB के लिए, आप शायद कुछ अलग देख रहे हैं।
मोंगो बिना योजना के है, इसलिए "tablePerHierarchy" की अवधारणा आवश्यक रूप से उपयोगी नहीं है।
निम्नलिखित मान लें
class A
property X
property Y
property Z
class B inherits from A
property W
RDMS में शायद आपके पास कुछ ऐसा होगा
table A: columns X, Y, Z
table B: columns X, Y, Z, W
लेकिन मोंगोडीबी में स्कीमा नहीं है। तो आपको इस तरह से डेटा की संरचना करने की आवश्यकता नहीं है। इसके बजाय, आपके पास A या B (या C...) प्रकार के सभी ऑब्जेक्ट (या "दस्तावेज़") वाला एक "संग्रह" होगा।
तो आपका संग्रह इस तरह की वस्तुओं की एक श्रृंखला होगी:
{"_id":"1", "X":1, "Y":2, "Z":3}
{"_id":"2", "X":5, "Y":6, "Z":7, "W":6}
आप देखेंगे कि मैं टाइप ए की वस्तुओं को टाइप बी की वस्तुओं के बगल में संग्रहीत कर रहा हूं। मोंगोडीबी इसे बहुत आसान बनाता है। बस संग्रह से एक दस्तावेज़ खींचे और इसमें "जादुई रूप से" सभी उपयुक्त फ़ील्ड/गुण हैं।
हालाँकि, यदि आपके पास "डेटा ऑब्जेक्ट" या "इकाइयाँ" हैं, तो आप एक प्रकार जोड़कर अपने जीवन को आसान बना सकते हैं।
{"_id":"1", "type":"A", "X":1, "Y":2, "Z":3}
{"_id":"2", "type":"B", "X":5, "Y":6, "Z":7, "W":6}
इससे आपकी वस्तुओं को लोड करने के लिए फ़ैक्टरी क्लास लिखना आसान हो जाता है।