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

MYSQL:उपयोगकर्ता - प्रोफ़ाइल विवरण तालिका सेटअप - सर्वोत्तम अभ्यास

आपके दृष्टिकोण के साथ विचार करने योग्य बातें

उपयोगकर्ता प्रोफ़ाइल को उपयोगकर्ता तालिका में संग्रहीत करना

  • प्रोफ़ाइल डेटा प्राप्त करने के मामले में यह आम तौर पर सबसे तेज़ तरीका होने जा रहा है, हालांकि आपके पास यहां बहुत सारे अनावश्यक डेटा हो सकते हैं (ऐसे कॉलम जिनमें कोई जानकारी नहीं हो सकती है)।
  • त्वरित (विशेषकर यदि आप केवल डीबी से आवश्यक कॉलम खींचते हैं)
  • अपव्यय डेटा
  • के साथ काम करना / बनाए रखना अधिक कठिन है (यकीनन PHPMyAdmin जैसे इंटरफेस के साथ)

उपयोगकर्ता प्रोफ़ाइल को User_Profile तालिका 1-1 में उपयोगकर्ताओं के साथ संबंध में संग्रहीत करना

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

उपयोगकर्ता प्रोफ़ाइल को तालिकाओं में गुणों और मानों के रूप में संग्रहीत करना

*अर्थात। संभावित विकल्पों को संग्रहीत करने के लिए तालिका, user_id को संग्रहीत करने के लिए तालिका, विकल्प_आईडी और मान*

  • कोई अनावश्यक डेटा संग्रहीत नहीं है, सभी डेटा प्रासंगिक है
  • सबसे सामान्य तरीका
  • डेटा पुनर्प्राप्त करने और अपडेट करने में धीमा

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

मुझे लगता है कि प्रोफ़ाइल जानकारी को दूसरी तालिका में रखने की संभावना है जब आप 50,000 रिकॉर्ड देख रहे हों। इष्टतम प्रदर्शन के लिए आप उस डेटा को रखना चाहते हैं जो भारी मात्रा में पढ़े जाने वाले डेटा से अलग लिखा गया है ताकि यह सुनिश्चित हो सके कि कैश प्रभावी ढंग से काम कर सकता है।



  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. तालिका से एकाधिक आईडी चुनें

  3. .नेट कोर 2.0 डाटाबेस पहला दृष्टिकोण स्कैफोल्ड-मैसकल डीबी का डीबीकॉन्टेक्स्ट

  4. MySQL में सब स्ट्रिंग्स के बीच टेक्स्ट निकालना

  5. कोडनिर्देशक का `कहां` और `या_कहां`