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

प्रति क्लाइंट बनाम एक डेटाबेस में एकाधिक डेटाबेस की व्यावहारिकता

हां, यह संभव है और मेरी कंपनी यह करती है। मैं निश्चित रूप से यह नहीं कहूंगा कि यह स्मार्ट है, हालांकि। हमारे पास SAAS मार्केटिंग ऑटोमेशन सिस्टम है। कुछ क्लाइंट के डेटाबेस में 1 मिलियन+ रिकॉर्ड होते हैं। हम एक दूसरे "सामान्य" डेटाबेस से निपटते हैं जिसमें 4 मिलियन से अधिक रिकॉर्ड के साथ "पूर्ति" तालिका ट्रैकिंग ईमेल, पत्र, फोन कॉल इत्यादि हैं, साथ ही कई अन्य बहुत बड़ी साझा टेबल हैं। उचित अनुक्रमण, अनुकूलन, एक अलग डीबी-केवल सर्वर बनाए रखने, और संभवतः क्लस्टरिंग (जो हमें अभी तक नहीं करना है) के साथ आप बहुत सारे डेटा को संभाल सकते हैं … कई मामलों में, जो लोग सोचते हैं कि यह कर सकता है जीने के लिए प्रतिस्पर्धी उत्पाद पर केवल कुछ सौ हजार रिकॉर्ड काम संभालते हैं। यदि आपको अभी भी संदेह है कि क्या यह मान्य है, तो विचार करें कि MySQL के क्लस्टरिंग मेट्रिक्स के अनुसार, एक 8 सर्वर क्लस्टर प्रति सेकंड 2.5 मिलियन अपडेट को संभाल सकता है। बिल्कुल भी जर्जर नहीं.....

दो डेटाबेस का उपयोग करने में समस्या कई कनेक्शनों को जोड़ रही है। क्या यह कठिन है? नहीं वाकई में नहीं। आप अलग-अलग ऑब्जेक्ट बनाते हैं और आप जिस डेटाबेस को चाहते हैं उसके आधार पर अपनी कनेक्शन कक्षाओं का संदर्भ देते हैं। हमारे मामले में, हमने क्लाइंट डीबी नाम निकालने के लिए मुख्य डेटाबेस की कंपनी क्लास को मारा और फिर उसके आधार पर दूसरा कनेक्शन बनाया। लेकिन, जब आप उन कनेक्शनों को आगे-पीछे कर रहे होते हैं तो आप उन त्रुटियों में भाग सकते हैं जिनके लिए अतिरिक्त डिबगिंग की आवश्यकता होती है। यह सिर्फ "क्या मेरी क्वेरी मान्य नहीं है?" लेकिन "क्या मुझे वास्तव में सही डेटाबेस कनेक्शन मिल रहा है?" हमारे मामले में, एक गिरा हुआ सत्र सभी प्रकार की पीडीओ त्रुटियों को आग लगने का कारण बन सकता है क्योंकि सिस्टम अब यह ट्रैक नहीं कर सकता है कि किस क्लाइंट डेटाबेस तक पहुंचना है। साथ ही, एक रखरखाव के दृष्टिकोण से, यह एक डरावनी प्रक्रिया है जो टेबल संरचना अपडेट को 100 अलग-अलग लाइव डेटाबेस में धकेलने की कोशिश कर रही है। हां, इसे स्वचालित किया जा सकता है। लेकिन एक फिसल जाता है और आपने बहुत से लोगों को नीचे गिरा दिया है और अपने लिए एक टन अतिरिक्त काम किया है। अब, कनेक्शनों को जोड़ने और अपडेट पुश करने के लिए आवश्यक अतिरिक्त विकास और परीक्षण की गणना करें ....

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




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मुझे तैयार कथन के लिए सिंटैक्स त्रुटि क्यों मिलती है?

  2. फ्लाईवे के लिए प्लेसहोल्डर अभिव्यक्तियों को कैसे अनदेखा करें?

  3. कमांड लाइन का उपयोग करके डेटाबेस को कैसे निर्यात करें

  4. PHP, MySQL त्रुटि:कॉलम संख्या पंक्ति 1 पर मान गणना से मेल नहीं खाती

  5. MySql में क्वेरी निष्पादित करते समय only_full_group_by से संबंधित त्रुटि