2015-02-13 3 views
6

ets: चयन बनाम मिनेसिया: चुनें जो उपयोग करने के लिए बेहतर है। और इन दोनों में से किसी एक को सम्मिलन और हटाने के मामले में भी हमें उपयोग करना चाहिए। मैं ejabberd पर काम कर रहा हूं। किसी भी पॉइंटर्स ?जो ets और mnesia के बीच अधिक प्रभावशाली है

उत्तर

12

tl; डॉ

वे विभिन्न प्रयोजनों के लिए बनाया उपकरण हैं: ईटीएस एक तेजी से कश्मीर/वी की दुकान है, Mnesia एक डेटाबेस उन्हें ऊपर बनाया गया है। उस टूल का उपयोग करें जो आपके उपयोग के मामले में फिट बैठता है।

चर्चा

Mnesia ईटीएस/DETS के शीर्ष पर बनाया गया है। जो अधिक सुविधाएं आप खोज रहे हैं, उनके लिए अधिक कुशलता से नीचे आती है। यदि आपके पास कोई अतिरिक्त तर्क नहीं है, तो इंडेक्स के लिए एक साधारण कुंजी और केवल मेमोरी या डिस्क से पूरी तरह से टेबल का उपयोग करेगी, तो ईटीएस और मैनेशिया के बीच कोई अंतर नहीं है और आप किसी भी मेनेसिया सुविधाओं का उपयोग नहीं करेंगे।

यदि दूसरी तरफ, आपको डेटा पर एक से अधिक इंडेक्स की आवश्यकता है, तो कुछ कैशिंग व्यवहार को कार्यान्वित करना चाहते हैं, ऑन-डिस्क दृढ़ता की आवश्यकता है, लेकिन कैश इंडेक्स प्रदर्शन, और अन्य चीजें जो आप डेटाबेस सिस्टम से अपेक्षा करते हैं, फिर आपको या तो ईटीएस/डीईटीएस के शीर्ष पर मेनेसिया-प्रकार की विशेषताओं को लागू करना होगा या बस मेनेसिया का उपयोग करना होगा।

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


बावजूद तुम क्या प्रयोग करते हैं, सुनिश्चित करें कि आप पूरे सिस्टम के लिए सभी राज्य के एक केंद्रीय भंडार के रूप में एक पूरे सिस्टम में अड़चन पैदा की तरह कुछ नहीं कर रहे हैं सुनिश्चित करें। यह एक गलती है जिसमें मैं बहुत से लोगों को देखता हूं (सी/पायथन/$ अनिवार्य_लंग + पोस्टग्रेस/मारियाडीबी/$ आरबीडीएमएस) पृष्ठभूमि की तरह।

एक उच्च स्तर पर राज्य प्रतिनिधित्व की वास्तुशिल्प चर्चा के लिए ErlMUD Commentary: Architecture, Locations के अनुच्छेद 2-6 पढ़ें।

+1

"यदि आपके पास अपने मॉड्यूल में बिखरे हुए कॉल का चयन किया गया है, तो संभवतः आपके पास अन्य वास्तुकला के मुद्दे हैं जो ईटीएस बनाम मैनेसिया से अधिक महत्वपूर्ण हैं।" यह महत्वपूर्ण है। Decoupling और मॉड्यूलरिटी हमेशा अच्छे हैं। – Qqwy

संबंधित मुद्दे