सिस्टम (यानी, डेटाबेस) जो अपनी डेटा अखंडता का प्रबंधन करते हैं, यह सामान्य ज्ञान की तरह लगता है, और सरल परिस्थितियों में, यह सामान्य ज्ञान है। हालांकि, जब व्यावसायिक नियम जटिल हो जाते हैं, तो डेटा को एक केंद्रीय स्थान पर मान्य करना कठिन हो जाता है।
जब एक सिस्टम (यानी, एक डेटाबेस) अब डेटा के आकार को लागू नहीं कर सकता है, तो कुछ और को इसकी जिम्मेदारी लेनी चाहिए। यह कब हो सकता है?
अमेरिका में फोन नंबर का प्रारूप (क्षेत्र कोड) (उपसर्ग) – (नंबर) है, यहाँ एक उदाहरण है: (734) 555-3212। हम इस लेख में सरलता के लिए डेटाबेस के बारे में बात करेंगे, लेकिन डेटास्टोर को डेटाबेस होने की आवश्यकता नहीं है।
अमेरिका में फोन नंबर में हमेशा दस अंक होते हैं (हम अंतर्राष्ट्रीय अंक को अनदेखा कर रहे हैं)। फोन नंबर विभिन्न प्रारूपों में आ सकते हैं:
- xxx.xxx.xxxx
- xxx-xxx-xxxx
- (xxx) xxx-xxxx
- (xxx) xxx.xxxx
अधिकांश डेटाबेस डेटा-प्रकारों (यानी, संख्याएं, स्ट्रिंग्स, तारीखें, आदि) तक सीमित हैं और स्वरूपण का समर्थन नहीं करते हैं। कई एप्लिकेशन फोन नंबर को स्टोर करने के लिए स्ट्रिंग डेटा-प्रकार का उपयोग करना चुनते हैं। हालांकि, स्ट्रिंग डेटा-प्रकार किसी भी स्ट्रिंग को स्वीकार करता है। यह सुनिश्चित करने के लिए कि फोन नंबर वैध है, हमें सत्यापन की एक अतिरिक्त परत की आवश्यकता है।
एक एकल एप्लिकेशन में जो एक एकल डेटाबेस से जुड़ी हो, डेटा सत्यापन आमतौर पर एप्लिकेशन में लागू किया जाता है।
जब आपकी आर्किटेक्चर दो या अधिक एप्लिकेशन में बढ़ती है जो एक डेटाबेस साझा करते हैं, तो दो चीजें हो सकती हैं:
1. प्रत्येक एप्लिकेशन का अपना डेटा सत्यापन है:
2. एक केंद्रीय सेवा है जिसे एप्लिकेशन डेटा को मान्य करने और डेटा को संरक्षित करने के लिए कॉल करते हैं:
कई स्थानों पर डेटा सत्यापन का जोखिम यह है कि सत्यापन सिंक से बाहर हो सकते हैं। एक एप्लिकेशन के लिए एक वैध प्रारूप दूसरे एप्लिकेशन में वैध नहीं हो सकता है। सबसे बुरी स्थिति में, एक खराब प्रारूप एक त्रुटि फेंकेगा या, चरम मामलों में, एप्लिकेशन को क्रैश कर देगा।
सर्वोत्तम स्थिति डेटा सत्यापन को केंद्रीकृत करना है ताकि डेटाबेस में संग्रहीत प्रारूप पूरे संगठन के लिए सामंजस्यपूर्ण हो। निश्चित रूप से अपवाद हैं, और मैं मान रहा हूँ कि कई एप्लिकेशन एक साझा डेटाबेस को पढ़ते और लिखते हैं।
लेखक: Chuck Conway एक AI इंजीनियर हैं जिनके पास सॉफ्टवेयर इंजीनियरिंग का लगभग 30 साल का अनुभव है। वह व्यावहारिक AI सिस्टम बनाते हैं—कंटेंट पाइपलाइन, इंफ्रास्ट्रक्चर एजेंट, और ऐसे टूल जो वास्तविक समस्याओं को हल करते हैं—और अपनी सीख को साझा करते हैं। सोशल मीडिया पर उनसे जुड़ें: X (@chuckconway) या YouTube और SubStack पर उनसे मिलें।