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

MySQL - इस पदानुक्रमित डेटा को संभालने का सबसे अच्छा तरीका?

Quassnoi नेस्टेड सेट मॉडल और आसन्न सूची मॉडल पर कुछ प्रदर्शन परीक्षण चलाए हैं और अपने ब्लॉग पोस्ट आसन्नता सूची बनाम नेस्टेड सेट:MySQL . कार्यकारी सारांश है:

  • नेस्टेड सेट सभी चाइल्ड नोड्स या सभी पैरेंट नोड्स लाने के लिए तेज़ है।
  • यदि आपको बार-बार तालिका को अपडेट करने की आवश्यकता होती है, तो नेस्टेड सेट एक बुरा विचार है।

यहाँ उनके लेख का निष्कर्ष है:

शेष लेख दिखाता है कि तालिका को कैसे परिभाषित किया जाए, प्रश्नों को लागू किया जाए और प्रदर्शन माप दिया जाए। नेस्टेड सेट मॉडल के प्रदर्शन को बेहतर बनाने के लिए स्थानिक सूचकांक का उपयोग एक चतुर विचार है जो आपके लिए नया हो सकता है।

यदि आप MySQL के बिना भी दृष्टिकोण पर विचार कर रहे हैं तो आप PostgreSQL देखना चाहेंगे। जो एक और फ्री और ओपन सोर्स डेटाबेस है। PostgreSQL पुनरावर्ती सामान्य तालिका अभिव्यक्तियों जो MySQL की तुलना में पदानुक्रमित डेटा को आसान बनाते हैं और बेहतर प्रदर्शन भी देते हैं। क्वास्नोई ने Adjacency list vs. नेस्टेड सेट:PostgreSQL जो विवरण दिखाता है।

जबकि हम अन्य दृष्टिकोणों को देखने के बारे में बात कर रहे हैं, ओरेकल का डेटाबेस भी उल्लेखनीय है। Oracle का एक कस्टम एक्सटेंशन CONNECT BY . भी है जो पदानुक्रमित डेटा को क्वेरी करना बहुत आसान और तेज़ बनाते हैं। क्वास्नोई का लेख आसन्न सूची बनाम नेस्टेड सेट:Oracle फिर से प्रदर्शन विवरण शामिल करता है। इस मामले में सभी बच्चों को प्राप्त करने के लिए आपको जो प्रश्न चाहिए वह अत्यंत सरल है:

SELECT *
FROM yourtable
START WITH id = 42
CONNECT BY parent = PRIOR id


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मैं अपने रास्पबेरी पाई पर बाहरी/दूरस्थ कनेक्शन के लिए अपना MySQL कैसे खोलूं?

  2. MySQL में VARCHAR बनाम टेक्स्ट

  3. Android में JSON के बजाय HTML प्रतिक्रिया प्राप्त करना

  4. लिनक्स सर्वर पर स्वचालित रूप से MySQL डेटाबेस का बैकअप लें

  5. यूटीएफ -8 में MySQL कैसे काम करता है केस असंवेदनशील और उच्चारण असंवेदनशील