2008-12-30 14 views
5

मैं एक वेब अनुप्रयोग प्रोजेक्ट के विकास की शुरुआत करने जा रहा हूं।एक रिलीज सिस्टम में डेटा-मॉडल परिवर्तनों के प्रबंधन के लिए सर्वोत्तम अभ्यास

मैं प्रारंभिक गोद लेने वालों के साथ खेलने और प्रतिक्रिया के लिए जल्दी और अक्सर कुछ प्राप्त करना चाहता हूं।

लेकिन मैं परियोजना के प्रगति के रूप में बदलते डेटा मॉडल पर विचार करता हूं और सिस्टम की मेरी समझ में सुधार होता है।

मुझे डेटा मॉडल को उचित रूप से अद्यतन करने और प्रारंभिक गोद लेने वालों के लिए डेटा हानि को रोकने की दुविधा का प्रबंधन कैसे करना चाहिए? क्या मुझे बस "उपयोगकर्ता सावधान रहना" कहने की एक बड़ी चेतावनी दी जानी चाहिए, या क्या मुझे माइग्रेशन स्क्रिप्ट बनाने के प्रयास में रखना चाहिए?

उत्तर

3

स्कॉट अंबालर ने चुस्त डेटाबेस के बारे में कुछ अच्छी चीजें लिखी हैं। book और website है।

5

आप किस प्लेटफ़ॉर्म का उपयोग कर रहे हैं? रेल पर रूबी आपको पैकेज के हिस्से के रूप में माइग्रेशन स्क्रिप्ट देता है। यदि आप जावा-भूमि में हैं, तो आप migrate4j देख सकते हैं।

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

0

@bradheintz; मैं माइक्रोसॉफ्ट वेब स्टैक का उपयोग कर रहा हूँ।

http://flux88.com/blog/net-database-migration-tool-roundup/:

मैं नेट संबंधित माइग्रेशन उपकरण यहाँ की एक छोटी सूची मिल गया है।

2

मेरी कंपनी के लिए ...

यह एक कठिन और तेजी से नियम है कि जब संभव हो, डेटाबेस पीछे की ओर सॉफ्टवेयर के वर्तमान संस्करण के साथ संगत होना चाहिए है। अगर यह अपराधी के खिलाफ टैर और पंखों की रणनीति का सहारा नहीं लेता है।

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

कुछ अन्य चीजें जो हम करते हैं में निवेश किया जाता है लाल गेट की एसक्यूएल तुलना और एसक्यूएल डेटा की तुलना करें। यह सुनिश्चित करता है कि विकास पर्यावरण से परिवर्तन सही ढंग से उत्पादन वातावरण में स्थानांतरित हो जाएं।

हमने हाल ही में संग्रहीत प्रक्रियाओं के उपयोग को त्याग दिया है, क्योंकि जब रखरखाव की बात आती है तो वे अबास्ट्रक्शन की अनावश्यक परत प्रदान करते हैं ... और वे बुरा हैं! =)

+0

"बुराई"? बहुत मजबूत हो सकता है। हालांकि, मैं इसे अपने स्वयं के हार्ड-जीते ​​अनुभव के आधार पर करने का सम्मान कर सकता हूं। – duffymo

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