मैं एक छोटा (~ 50 कर्मचारी) सास कंपनी के लिए SQL डेवलपर (डीबीए या आर्किटेक्ट नहीं) हूं। मुझे यह पता लगाने का काम सौंपा गया है कि:
- हमारे 100+ ओएलटीपी डेटाबेस से ऑफलोडिंग ऑपरेशनल रिपोर्टिंग
- उन रिपोर्ट को कई क्लाइंट डेटाबेस से डेटा के खिलाफ चलाने की अनुमति दें
- भविष्य में अधिक विश्लेषिकी-आधारित समाधान प्रदान करने के लिए हमारी कंपनी को स्थिति दें
मैंने विभिन्न तकनीकों पर कई लेख पढ़े हैं, जैसे कि ट्रांसेक्शनल रीप्लेसमेंट (विशेष रूप से कई-से-एक / सेंट्रल सब्सक्राइबर मॉडल), एसक्यूएल सर्विस ब्रोकर, लॉग शिपिंग, चेंज ट्रैकिंग (सीटी) और चेंज डेटा कैप्चर (सीडीसी, मेरी समझ) यह केवल उद्यम है), और मुझे यकीन नहीं है कि आगे बढ़ने के लिए कौन सा मार्ग सबसे अच्छा है।
मैं उम्मीद कर रहा हूं कि आप में से कुछ एकीकरण विशेषज्ञता के साथ हमारे समान सेटअप का सामना कर सकते हैं और मुझे एक सफल रास्ता बताने में सक्षम हो सकते हैं या मुझे कुछ संसाधनों के लिए निर्देशित कर सकते हैं जो मददगार होंगे।
लागत की कमी के कारण, हमारा समाधान SQL सर्वर मानक संस्करण में काम करना चाहिए। इसके अलावा, समाधान हमारे छोटे संगठन के भीतर समर्थन / बनाए रखने के लिए उचित होना चाहिए।
मूल विन्यास:
वर्तमान में हमारे पास 100+ व्यक्तिगत क्लाइंट डेटाबेस हैं, जो हमारे डेटा सेंटर में SQL सर्वर पर तैनात हैं, लेकिन कुछ अपने डेटा सेंटर के भीतर क्लाइंट सर्वर पर तैनात हैं जिन्हें हम रिमोट कर सकते हैं। ये सभी SQL Server 2008 R2 डेटाबेस हैं, लेकिन हम जल्द ही SQL 2016 में अपग्रेड करने की योजना बना रहे हैं।
हम डेटाबेस परियोजनाओं और dacpacs का उपयोग यह सुनिश्चित करने के लिए करते हैं कि स्कीमा सभी क्लाइंट डेटाबेसों में समान है जिसे एकीकृत किया जाएगा। हालाँकि, चूंकि हम सभी क्लाइंट को एक ही समय में नए संस्करणों में अपग्रेड करने के लिए बाध्य नहीं करते हैं, इसलिए अपग्रेड के बीच कुछ स्कीमा अंतर संभव हैं। यदि क्लाइंट A सॉफ़्टवेयर संस्करण 1.0 पर है और क्लाइंट B संस्करण 1.1 पर है तो समाधान को लचीला नहीं होना चाहिए।
परिचालन रिपोर्ट वर्तमान में प्रत्येक ग्राहक के ओएलटीपी डेटाबेस से सीधे चलती हैं। हम इस बात से चिंतित हैं कि यदि हम इसे बंद नहीं करते हैं तो आवेदन के प्रदर्शन पर इसका क्या प्रभाव पड़ेगा।
उच्च-स्तरीय आवश्यकताएँ:
हमारे ग्राहक अस्पताल के बाँझ प्रसंस्करण विभाग (एसपीडी) हैं, जो अब तक की प्रक्रिया, जहां इन्वेंट्री है, आदि पर एसपीडी की प्रक्रिया सूची, जिसमें सप्ताहांत और छुट्टियां शामिल हैं, के बारे में पल-पल की रिपोर्ट चाहते हैं। चूंकि इस प्रयास का एक मुख्य उद्देश्य परिचालन रिपोर्टिंग का बेहतर समर्थन करना है, इसलिए हम चाहते हैं कि ग्राहकों की जरूरतों को पूरा करने के लिए डेटा वास्तविक समय के करीब हो।
वर्तमान में हमारे पास अलग-अलग डेटाबेस में कुछ एसपीडी हैं जो वास्तव में एक ही अस्पताल प्रणाली का हिस्सा हैं। ये ग्राहक अपने सिस्टम में सभी एसपीडी के खिलाफ रिपोर्ट करने की क्षमता चाहते हैं।
रणनीतिक रूप से, हम अपनी आंतरिक विश्लेषण पहल का समर्थन करने के लिए अपने सभी ग्राहकों के डेटा को आसानी से एकत्र करने की क्षमता चाहते हैं। हमारी अपेक्षा यह है कि हम एकत्र किए गए परिचालन डेटा को डेटा मॉर्टस / वेयरहाउस के लिए स्रोत के रूप में उपयोग करने में सक्षम होंगे।
बहुत दूर तक सोचा:
लेन-देन प्रतिकृति ऐसा लगता है कि यह सबसे "वास्तविक समय" समाधान प्रदान करेगा। मुझे यह प्रतिक्रिया विशेष रूप से मददगार लगी, लेकिन मुझे चिंता है कि स्कीमा मतभेदों की संभावना के साथ यह हमारे लिए काम नहीं करेगा: SQL सर्वर कई-से-एक प्रतिकृति
लॉग शिपिंग आदर्श नहीं है, जिसे देखते हुए लॉग को पुनर्स्थापित नहीं किया जा सकता है, जबकि प्रश्न सक्रिय हैं। मुझे या तो सभी को किक मारना है ताकि लॉग बहाल हो सके या डेटा बासी हो जाए। मैं इस रूप में स्पष्ट नहीं हूं कि क्या इस पद्धति का उपयोग कई डेटाबेस से डेटा को केंद्रीकृत करने के लिए किया जा सकता है, क्योंकि प्रत्येक शिप किया गया लॉग केवल उस व्यक्तिगत डेटाबेस के लिए होगा जो यह आया था।
SQL सेवा ब्रोकर का उपयोग करते हुए, यदि कोई पंक्ति प्रक्रिया करने के लिए संदेशों की संख्या के साथ रखने में असमर्थ थी, तो विलंबता अप्रत्याशित हो सकती है।
सीटी केवल प्रत्येक तालिका पंक्ति के लिए एक संस्करण की पहचान करता है। लेटेंसी इस बात पर निर्भर करेगी कि हम डेटा को पुनः प्राप्त करने और केंद्रीय भंडार में सम्मिलित करने के लिए प्रत्येक डेटाबेस के खिलाफ SSIS पैकेज की तरह कितनी जल्दी प्रक्रिया कर सकते हैं।
क्या हमें व्यक्तिगत रूप से प्रत्येक डेटाबेस की नकल करने पर विचार करने की आवश्यकता है और फिर विभिन्न प्रतिकृति स्रोतों से डेटा को संयोजित करने के लिए किसी प्रकार की डेटा वर्चुअलाइजेशन तकनीक का उपयोग करना चाहिए?
आपके द्वारा प्रदान की जाने वाली किसी भी सलाह या दिशा को बहुत सराहना मिलेगी।