डेटाबेस प्रोग्रामर कई काम करते हैं। पहले वे डेटाबेस संरचना को डिज़ाइन करते हैं ताकि यह अपेक्षित रिकॉर्ड की संख्या के साथ ठीक से प्रदर्शन करे। कुछ हजार रिकॉर्ड के लिए ठीक काम करने वाली डिज़ाइन संरचनाएँ डेटाबेस को कुछ मिलियन रिकॉर्ड में अनुपयोगी बना सकती हैं। उन्हें यह भी सुनिश्चित करने की आवश्यकता है कि डेटा समय के साथ अखंडता बनाए रखेगा और डेटा अनधिकृत परिवर्तनों या चोरी से सुरक्षित है। उन्हें सामान्य रूप से सामान्यीकरण को समझना होगा और कब और क्यों करना है। उन्हें प्रदर्शन को समझना होगा और डेटा अखंडता को कैसे सुनिश्चित करना है। उन्हें सुरक्षा को समझना होगा और डेटा को चोरी या दुर्भावनापूर्ण रूप से बदलने से कैसे रोका जाए।
वे धुन के सवालों का प्रदर्शन करते हैं। मैंने उन क्वेरीज़ को बदल दिया है जो मिलकॉन्ड्स को चलाने के लिए मिनट लेती हैं। मैंने एक प्रक्रिया को बदल दिया है जो 30 मिनट से कम समय तक चलने में 24 घंटे से अधिक समय लेता है। वे अनुक्रमण संरचनाओं को डिज़ाइन करते हैं और बनाए रखते हैं जो चयन की गति के खिलाफ आवेषण की गति को संतुलित करेगा।
वे जटिल प्रश्नों को लिखते हैं, विशेषकर प्रश्नों की रिपोर्टिंग। मैंने व्यक्तिगत रूप से प्रश्न लिखे हैं जो आवश्यकता की जटिलता के कारण 1000 से अधिक लंबी हैं। वे अभी भी था और जल्दी से चला था।
वे डेटा वेयरहाउस और उनके साथ ईटीएल प्रक्रियाओं का समर्थन करते हैं। अक्सर उन्हें अन्य स्रोतों से डेटा लाने के लिए प्रक्रियाओं को लिखने की आवश्यकता होती है और यह पता लगाना होता है कि कुछ क्लाइंट डेटा बेस से फ़ील्ड्स को उनके लिए मैप कैसे करें और ये कभी भी डेटा प्रकार, डेटा आकार, आवश्यक फ़ील्ड, लुकअप मान, में एक करीबी मेल नहीं हैं, आदि।
उन्हें यह निर्धारित करना होगा कि डेटाबेस की आवश्यकताओं को कैसे पूरा किया जाए क्योंकि उनके पास पहले से मौजूद 100,000,000 रिकॉर्ड्स को नुकसान पहुंचाए बिना और डेटाबेस के उपयोग को पूरी तरह से रोक दिए बिना। बड़े डेटाबेस में हजारों टेबल और स्टोर किए गए प्रॉक्स और उपयोगकर्ता-परिभाषित फ़ंक्शन शामिल हो सकते हैं। इस तरह की संरचना को समझने में समय और कौशल लगता है क्योंकि यह समझ में आता है कि परिवर्तन और कैसे प्रभावित होंगे।
वे विनियामक और पुनर्प्राप्ति कारणों के लिए डेटा का ऑडिट करने के तरीके डिज़ाइन करते हैं। वे फिर उन ऑडिट टेबल से डेटा को पुनर्प्राप्त करने के तरीके डिज़ाइन करते हैं। वे यह पता लगाने के लिए डेटा के साथ समस्याओं का पता लगाते हैं कि क्या समस्या आयात प्रक्रिया में बग से थी, दूसरों द्वारा प्रदान की गई एक खराब फ़ाइल या एप्लिकेशन से एक खराब इंसर्ट / अपडेट या अनधिकृत पहुंच से। वे खराब डेटा को ठीक करने के तरीके ढूंढते हैं जब एप्लिकेशन प्रोग्रामर ने हमला करने के लिए हैकर्स के लिए एक छेद खुला छोड़ दिया।
अक्सर वे एक सिस्टम से एक नई प्रणाली के डेटा रूपांतरण में शामिल होते हैं। कभी-कभी इसमें एक सीओटीएस उत्पाद से एक नया डेटा स्थानांतरित करना शामिल होता है जिसे कंपनी ने अभी खरीदा है। पहले वर्णित आयातों की तरह, ये जटिल प्रक्रियाएं हैं जिन्हें योजना बनाने और निष्पादित करने में महीनों लग सकते हैं और इसके लिए व्यापक परीक्षण की आवश्यकता होती है। आयात के विपरीत, डेटाबेस प्रोग्रामर का विवादित डेटा संरचनाओं पर कोई नियंत्रण नहीं हो सकता है।