मेरी टीम को निम्नलिखित समस्या का हल ढूंढने की आवश्यकता है:मैं उच्च उपलब्धता वाले योगों की स्थिरता कैसे सुनिश्चित करूं?
हमारा एप्लिकेशन उपयोगकर्ताओं को उद्यम के लिए कुल बिक्री, उत्पाद द्वारा कुल योग, क्षेत्र द्वारा कुल योग, क्षेत्र x उत्पाद द्वारा कुल योग, क्षेत्रों x विभाजन द्वारा योग, आदि आपको विचार मिलता है। ऐसे कई मूल्य हैं जिन्हें उन कुल योगों को प्राप्त करने के लिए एकत्रित करने की आवश्यकता है जिन्हें उन्हें फ्लाई पर गणना नहीं की जा सकती है - हमें उन्हें सभ्य प्रतिक्रिया समय प्रदान करने के लिए पूर्व-योग करना होगा, एक प्रक्रिया जिसमें लगभग 5 मिनट लगते हैं।
समस्या, जिसे हमने सोचा था, एक आम था लेकिन इसका कोई संदर्भ नहीं मिल सकता है, उपयोगकर्ताओं को बंद किए बिना विभिन्न बिक्री के अपडेट की अनुमति कैसे दी जाती है। साथ ही, उपयोगकर्ता अंतिम स्थिरता स्वीकार नहीं कर सकते हैं - यदि वे कुल 12 पर ड्रिल करते हैं तो वे 12 तक जोड़ते हुए बेहतर संख्या देखते हैं। इसलिए हमें संगति + उपलब्धता की आवश्यकता है।
अब तक का सबसे अच्छा समाधान है कि हम सभी प्रश्नों को एक अनावश्यक डेटाबेस, "बी" (क्वेरी के लिए अनुकूलित) पर निर्देशित करते हैं जबकि अद्यतन प्राथमिक डेटाबेस, "ए" पर निर्देशित होते हैं। जब हम सभी समेकन को अपडेट करने के लिए 5 मिनट बिताने का निर्णय लेते हैं, तो हम डेटाबेस "सी" अपडेट करते हैं, जो कि "बी" की तरह एक और अनावश्यक डेटाबेस है। फिर, नए उपयोगकर्ता सत्र "सी" पर निर्देशित होते हैं, जबकि मौजूदा उपयोगकर्ता सत्र "बी" का उपयोग जारी रखते हैं। आखिरकार, "बी" का उपयोग करके किसी को भी चेतावनी दी गई, हम "बी" पर सत्रों को मार देते हैं और "बी" और "सी" की भूमिकाओं को स्वैप करते हुए फिर से एकत्र करते हैं। विशिष्ट नाली-स्टॉप परिदृश्य।
हमें आश्चर्य है कि हमें इस बारे में कोई चर्चा नहीं मिल रही है और हम चिंतित हैं कि हम इस समस्या से अधिक इंजीनियरिंग कर रहे हैं या शायद यह समस्या नहीं है जो हम सोचते हैं। किसी भी सलाह की सराहना की है।
हमारे पास कई पूर्व-योग थे, लेकिन हम अंतिम स्थिरता से खुश थे, इसलिए हमें चालाक चाल के साथ आने की आवश्यकता नहीं थी। आपका प्रस्तावित दृष्टिकोण व्यवहार्य दिखता है। –
@sergio धन्यवाद!आपकी आखिरी टिप्पणी मुझे आशा देती है। – RonR