PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

डेटाबेस में मिलियन टेबल बनाएं?

यदि आपको अपने डेटाबेस में एक लाख टेबल की आवश्यकता है, तो आप इसे गलत कर रहे हैं।

तालिकाओं का उद्देश्य संरचनात्मक और अवधारणात्मक रूप से भिन्न डेटा का प्रतिनिधित्व करना है। और मैं यह मानने से इंकार करता हूं कि आप अपने आवेदन में लाखों अलग-अलग अवधारणाओं के साथ काम कर रहे हैं।

कभी-कभी, शुरुआती लोग मानते हैं कि उन्हें प्रति उपयोगकर्ता एक तालिका बनानी चाहिए, उदाहरण के लिए। लेकिन "एक उपयोगकर्ता" एक अवधारणा है, और आप प्रत्येक उपयोगकर्ता (नाम, ईमेल, उपयोगकर्ता नाम, पासवर्ड, उदाहरण के लिए) के लिए समान जानकारी संग्रहीत करते हैं, इसलिए यह एक होना चाहिए तालिका, जहां प्रत्येक उपयोगकर्ता केवल एक अलग पंक्ति है।

ऐसा लगता है कि आप एक समान गलती कर रहे हैं, शायद उपयोगकर्ताओं के साथ नहीं, बल्कि किसी अन्य अमूर्तता के साथ, जिसके आपके पास बहुत सारे उदाहरण हैं। प्रत्येक उदाहरण एक ही तालिका में एक पंक्ति होना चाहिए।

यदि आप हमें बताते हैं कि आप किस डेटाबेस में संग्रहीत करने का प्रयास कर रहे हैं, तो हम निश्चित रूप से यह पता लगाने में आपकी सहायता कर सकते हैं कि यह चाहिए तालिकाओं में मैप किया जाए।

संपादित करें
आपकी टिप्पणियों को पढ़ने के बाद (जिसे वास्तव में प्रश्न में ही संपादित किया जाना चाहिए), मेरे विचार ये हैं:

यदि सभी डेटा को उसी तरह से संरचित किया गया है (तीनों के रूप में), तो आप बस एक ही तालिका में तीन कॉलम के साथ सब कुछ स्टोर कर सकते हैं, और फिर कुशल लुकअप के लिए आवश्यक इंडेक्स जोड़ सकते हैं।

यदि सभी विधेय पहले से ज्ञात हैं, तो आप कर सकते हैं प्रति भविष्यवाणी एक टेबल बनाएं, लेकिन मुझे सच में यकीन नहीं है कि इससे कितना अर्थ होगा।

सबसे साफ विकल्प शायद 4 टेबल होंगे:
(id, subject) , (id, predicate) , (id, object) ,(subjectid, predicateid, objectid) .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. POSTGRES जांचें कि क्या प्रदान किया गया मान प्रकार सरणी के कॉलम में मौजूद है

  2. पोस्टग्रेज में यूनिकोड सामान्यीकरण

  3. बैच डालने में त्रुटि पोस्टग्रेज:संबंध hibernate_sequence मौजूद नहीं है स्थिति 17

  4. अपडेट लॉक और अनलॉक के लिए चयन कब करता है?

  5. मैं jsonb कॉलम को क्वेरी करने के लिए स्प्रिंग डेटा जेपीए का उपयोग कैसे करूं?