इसे छोड़कर कंटेंट पर जाएं

मॉडल को Salesforce में बदलें

28 अन्य भाषाओं में भी उपलब्ध

English · Español · 日本語 · Português (Brasil) · Français · Deutsch · Italiano · 한국어 · 简体中文 · Português (Portugal) · 繁體中文 · Bahasa Indonesia · Türkçe · Polski · Tiếng Việt · ไทย · Nederlands · العربية · עברית · Українська · Русский · Svenska · Dansk · Norsk bokmål · Suomi · Español (México) · Français (Canada) · Deutsch (Schweiz)

A white card model rising from the plan it was drawn on, built from repeated standard window pieces with one curved wooden wall, the rest of the plan still bare.
AI से बनाई गई इमेज

मॉड्यूल 6 (कुल 6 में से) — अध्याय अर्थ के लिए डेटा मॉडलिंग, Data Architect कोर्स का अध्याय 2। हर मॉड्यूल अपने आप में पूरा है। पिछला: तीसरे नॉर्मल फ़ॉर्म तक डिज़ाइन करें, फिर पीछे हटें · अगला: अध्याय की अध्ययन गाइड, फिर अगला अध्याय: Salesforce डेटा आर्किटेक्चर

यह मॉड्यूल किस सवाल का जवाब देता है: एक लॉजिकल डेटा मॉडल फ़िज़िकल Salesforce डेटा मॉडल कैसे बनता है?

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

बैठो, रुको, मॉडल करो

Section titled “बैठो, रुको, मॉडल करो ”

फ़िज़िकल कदम किसी छोटी चीज़ पर सबसे आसानी से दिखता है, इसलिए पालतू पहले।

बिज़नेस और लोग कौन हैं? ब्रीडर एक बिज़नेस है, इसलिए वह Breeder रिकॉर्ड टाइप वाला एक Account बनता है। मालिक भी एक Account है, या Person Account, Owner रिकॉर्ड टाइप के साथ। एक ही स्टैंडर्ड ऑब्जेक्ट की दो किस्में, डायग्राम के ऊपर अगल-बगल, ठीक वहीं जहाँ वे मॉड्यूल 1 से हैं।

किसका कोई स्टैंडर्ड घर नहीं है? पालतू, नस्ल, करतब, पालतू का करतब और करतब का मूल्यांकन कस्टम ऑब्जेक्ट बनते हैं। और याद है वह प्रजाति जो हमने मॉड्यूल 5 में पालतू पर कॉपी की थी? यहाँ उसे अपना काम मिलता है: वह पालतू का रिकॉर्ड टाइप बन जाती है, Dog या Cat। एक Dog ऑब्जेक्ट और एक Cat ऑब्जेक्ट के बजाय, दो रिकॉर्ड टाइप वाला एक ऑब्जेक्ट, हर एक का अपना पेज लेआउट और पिकलिस्ट वैल्यू।

कौन-से संबंध master-detail हैं? मैं master-detail सिर्फ़ वहीं इस्तेमाल करता हूँ जहाँ चाइल्ड का पैरेंट कभी नहीं बदलेगा। पालतू का करतब ज़िंदगी भर अपने पालतू का होता है, और हर करतब का मूल्यांकन अपने पालतू के करतब का, इसलिए दोनों master-detail हैं। इसका फ़ायदा तुरंत मिलता है: master-detail ही पालतू को उसके पालतू के करतबों का roll-up summary रखने देता है, ताकि मॉड्यूल 5 वाली आने वाले करतब की गिनती अपने-आप साथ-साथ चलती रहे। लेकिन पालतू घर बदलते हैं, इसलिए मालिक एक lookup है।

कौन-से lookup हैं? Salesforce एक पैरेंट पर 10,000 से ज़्यादा चाइल्ड की सलाह नहीं देता। बैठो जैसा लोकप्रिय करतब, कोई आम नस्ल या कोई बड़ा ब्रीडर इसे आसानी से पार कर सकता है, इसलिए पालतू का करतब अपने करतब की ओर lookup से इशारा करता है, और पालतू अपनी नस्ल और ब्रीडर की ओर भी इसी तरह। और जहाँ हो सके, पॉलीमॉर्फ़िक संबंधों से बचें, वे जिनमें एक फ़ील्ड कई ऑब्जेक्ट टाइप की ओर इशारा कर सकता है। पहले दिन वे सुविधाजनक होते हैं और बाद में हर उस चीज़ के लिए मुश्किल जिसे उन्हें पढ़ना है: रिपोर्ट, इंटीग्रेशन, और अब एजेंट।

प्लेटफ़ॉर्म से बाहर क्या रहता है? अगर पालतू ऐसा GPS कॉलर पहनता है जो बताता है कि वह कहाँ है, तो उस लोकेशन को अंदर कॉपी करने की ज़रूरत ही नहीं। वह एक एक्सटर्नल ऑब्जेक्ट हो सकता है, जो कॉलर के ट्रैकिंग सिस्टम से लाइव पढ़ा जाए।

Salesforce में पालतू का मॉडल Salesforce ऑब्जेक्ट के रूप में पालतू का मॉडल। ऊपर दो Account: एक Owner रिकॉर्ड टाइप वाला, एक Breeder रिकॉर्ड टाइप वाला। उनके नीचे Pet__c, जिसमें Dog और Cat रिकॉर्ड टाइप हैं, माइक्रोचिप नंबर External ID के रूप में है, मालिक, ब्रीडर और Breed__c की ओर lookup हैं, और roll-up के रूप में Tricks_Known__c है। Pet_Trick__c, Pet__c के साथ master-detail संबंध में है और उसमें Trick__c की ओर एक lookup है, कौशल-स्तर और सीखने की तारीख़ के साथ। Trick_Assessment__c, Pet_Trick__c के साथ master-detail संबंध में है। Breed__c में उसकी प्रजाति, नाम और आकार है; Trick__c में उसका नाम और कठिनाई। lookup lookup lookup master detail lookup master detail Account (Owner) Id रिकॉर्ड ID रिकॉर्ड टाइप: Owner नाम फ़ोन Account (Breeder) Id रिकॉर्ड ID रिकॉर्ड टाइप: Breeder नाम Pet__c Id रिकॉर्ड ID रिकॉर्ड टाइप: Dog, Cat Microchip_Number__c EXTERNAL ID Owner__c LOOKUP Breeder__c LOOKUP Breed__c LOOKUP नाम Birth_Date__c Tricks_Known__c ROLL-UP Breed__c Id रिकॉर्ड ID Species__c नाम Size__c Pet_Trick__c Id रिकॉर्ड ID Pet__c MASTER-DETAIL Trick__c LOOKUP Skill_Level__c Date_Learned__c Trick__c Id रिकॉर्ड ID नाम Difficulty__c Trick_Assessment__c Id रिकॉर्ड ID Pet_Trick__c MASTER-DETAIL Date__c Skill_Level__c Assessed_By__c ठीक एक शून्य या एक एक या कई शून्य या कई © 2026 Twinshark LLC · stevetecharc.com
Click to enlarge

उस डायग्राम का हर फ़ैसला किसी ऐसी चीज़ तक वापस जाता है जो हमने पहले तय की थी, और बात यही है। अब वही कदम Steve Trucking के लिए।

लॉजिकल मॉडल से शुरू करें

Section titled “लॉजिकल मॉडल से शुरू करें ”

हमारे Steve Trucking लॉजिकल मॉडल में अब रिटेल पार्टनर, डिस्ट्रिब्यूशन सेंटर, मैनिफ़ेस्ट, डिलीवरी, डिलीवरी आइटम, प्राप्तकर्ता, रूट, स्टॉप, क्रू, ट्रक और क्रू असाइनमेंट हैं। ये बिज़नेस की अवधारणाएँ हैं, और अब मैं इन्हें Salesforce से मैप करना शुरू कर सकता हूँ।

एक रिटेल पार्टनर शायद Account हो। एक डिलीवरी शायद किसी ऐसी चीज़ से मैप हो जो Salesforce के पास फ़ील्ड में शेड्यूल किए गए काम के लिए पहले से है, या वह कस्टम ऑब्जेक्ट बन सकती है। मैनिफ़ेस्ट के लिए कोई स्टैंडर्ड चीज़ फ़िट नहीं बैठती, इसलिए वह शायद कस्टम बनेगा। और प्राप्तकर्ता सच में मुश्किल सवाल है: Person Account, Contact, या बस डिलीवरी पर दर्ज जानकारी? उसका जवाब हम अगले अध्याय में ठीक से देंगे।

अहम शब्द अब भी शायद है। सिर्फ़ इसलिए इम्प्लीमेंटेशन मान न लें कि बिज़नेस की कोई अवधारणा Salesforce ऑब्जेक्ट जैसी सुनाई देती है। इसीलिए हमने पहले लॉजिकल मॉडल बनाया: वह हमें कुछ देता है जिस पर Salesforce डिज़ाइन को परखा जा सके।

बिज़नेस एंटिटी का मतलब अपने-आप कस्टम ऑब्जेक्ट नहीं है

Section titled “बिज़नेस एंटिटी का मतलब अपने-आप कस्टम ऑब्जेक्ट नहीं है ”

यह एक जाल है जिससे मैं चाहता हूँ कि एडमिन बचें: “हमने ग्यारह एंटिटी पहचानीं, तो हमें ग्यारह कस्टम ऑब्जेक्ट चाहिए।” नहीं। एक लॉजिकल एंटिटी बताती है कि बिज़नेस की वह अवधारणा मायने रखती है। वह यह तय नहीं करती कि Salesforce उसे कैसे स्टोर करे। कोई अवधारणा स्टैंडर्ड ऑब्जेक्ट बन सकती है, कस्टम ऑब्जेक्ट, ऑब्जेक्ट के बीच का संबंध, एक या कुछ फ़ील्ड, कॉन्फ़िगरेशन में संभाली जाने वाली वैल्यू, या ऐसा डेटा जो पूरी तरह Salesforce से बाहर रहता है (Steve Trucking की डिलीवरी फ़ोटो इसके अच्छे उम्मीदवार हैं)। ये फ़ैसले फ़िज़िकल मॉडल में होते हैं, और ठीक इसीलिए हमने इन्हें पहली कॉल पर नहीं किया।

एट्रिब्यूट फ़िज़िकल फ़ील्ड बनते हैं

Section titled “एट्रिब्यूट फ़िज़िकल फ़ील्ड बनते हैं ”

एट्रिब्यूट के साथ भी यही बदलाव होता है। हमारे लॉजिकल ट्रक में यूनिट नंबर, VIN, मेक, मॉडल, मॉडल वर्ष, लाइसेंस प्लेट और स्टेटस है। अब हम तय करते हैं कि वे फ़िज़िकल रूप में कैसे मौजूद रहेंगे: कौन-सा ऑब्जेक्ट उनका मालिक है, वे कौन-से फ़ील्ड टाइप इस्तेमाल करेंगे, कौन-से अनिवार्य हैं, कौन-से यूनिक होने चाहिए, कौन-से बाहरी ID हैं, किन्हें वैलिडेशन चाहिए, कौन-से स्टोर होने के बजाय निकाले (derive) जाते हैं, और कौन-से संवेदनशील हैं। लॉजिकल स्तर पर हमने पूछा था कि ट्रक का मतलब क्या है। फ़िज़िकल स्तर पर हम पूछते हैं कि Salesforce ट्रक को कैसे दर्शाएगा। अलग सवाल।

ट्रक: लॉजिकल एंटिटी से Salesforce ऑब्जेक्ट तक दो कार्ड, पंक्ति-दर-पंक्ति। लॉजिकल, ट्रक, ट्रक का मतलब क्या है: Truck ID, यूनिट नंबर, VIN, मेक, मॉडल, मॉडल वर्ष, लाइसेंस प्लेट, स्टेटस। फ़िज़िकल, Truck__c, Salesforce इसे कैसे दर्शाएगा: Id, Salesforce रिकॉर्ड ID; Name, टेक्स्ट, जिसमें यूनिट नंबर है; VIN__c, 17 अक्षरों का टेक्स्ट, यूनिक और एक External ID; Make__c, एक पिकलिस्ट; Model__c, 40 अक्षरों का टेक्स्ट; Model_Year__c, चार अंकों का नंबर; License_Plate__c, 10 अक्षरों का टेक्स्ट; Status__c, एक पिकलिस्ट, अनिवार्य। नीचे एक नोट: लॉजिकल पूछता है कि ट्रक का मतलब क्या है; फ़िज़िकल पूछता है कि Salesforce इसे कैसे दर्शाएगा। लॉजिकल: ट्रक ट्रक का मतलब क्या है Truck ID यूनिट नंबर VIN मेक मॉडल मॉडल वर्ष लाइसेंस प्लेट स्टेटस फ़िज़िकल: Truck__c Salesforce इसे कैसे दर्शाएगा Id: Salesforce रिकॉर्ड ID Name: टेक्स्ट, यूनिट नंबर VIN__c: टेक्स्ट(17), यूनिक, External ID Make__c: पिकलिस्ट Model__c: टेक्स्ट(40) Model_Year__c: नंबर(4) License_Plate__c: टेक्स्ट(10) Status__c: पिकलिस्ट, अनिवार्य लॉजिकल पूछता है कि ट्रक का मतलब क्या है। फ़िज़िकल पूछता है कि Salesforce इसे कैसे दर्शाएगा। © 2026 Twinshark LLC · stevetecharc.com
Click to enlarge

संबंध प्लेटफ़ॉर्म के फ़ैसले बनते हैं

Section titled “संबंध प्लेटफ़ॉर्म के फ़ैसले बनते हैं ”

संबंधों पर हमने जो सारा समय लगाया, उसका फ़ल यहाँ मिलता है। हमें पहले से पता है कि हर एक one-to-one, one-to-many या many-to-many है, अनिवार्य है या वैकल्पिक, और क्या उसका इतिहास मायने रखता है। अब हम तय करते हैं कि Salesforce उसे कैसे लागू करे: एक lookup, एक master-detail, या एक Salesforce Junction Object, और शायद अपने ख़ुद के एट्रिब्यूट वाला एक जंक्शन, क्योंकि, जैसा हमने पाया, संबंध का अपना बिज़नेस अर्थ हो सकता है।

क्रू असाइनमेंट को याद करें। हम यह अध्याय यह कहकर शुरू कर सकते थे, “चलो क्रू और ट्रक के बीच एक Salesforce Junction Object बनाते हैं।” देखिए हम क्या छोड़ देते: संबंध क्यों है, क्या उसे तारीख़ और रूट चाहिए, क्या उसका कोई स्टेटस है, और क्या हफ़्तों बाद आने वाले नुकसान के क्लेम को उसका इतिहास चाहिए। ये बिज़नेस सवाल हमें बताते हैं कि क्रू असाइनमेंट है क्या। उसके बाद ही हमें तय करना चाहिए कि Salesforce उसे कैसे बनाए, और क्या Salesforce के पास पहले से कुछ है जो यह काम करता है।

अब फ़िज़िकल मॉडल खींचें

Section titled “अब फ़िज़िकल मॉडल खींचें ”

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

एक ही बिज़नेस, तीन स्तरों पर तीन पैनल, एक ही हिस्सा तीन स्तरों पर। कॉन्सेप्चुअल, क्या मौजूद है: एक रिटेल पार्टनर, जिस रिटेलर के लिए हम डिलीवर करते हैं, डिलीवरी भेजता है, और हर डिलीवरी, एक प्राप्तकर्ता को एक ऑर्डर, में डिलीवरी आइटम होते हैं, यानी डिलीवरी पर एक प्रोडक्ट। लॉजिकल, डेटा की संरचना कैसी है: वही तीनों, रिकॉर्ड ID और कुछ फ़ील्ड के साथ; डिलीवरी पार्टनर के ऑर्डर नंबर से भी जानी जाती है; डिलीवरी आइटम में Product ID और मात्रा है। फ़िज़िकल, Salesforce इसे कैसे बनाएगा: रिटेल पार्टनर Retail Partner रिकॉर्ड टाइप वाला एक स्टैंडर्ड Account है; डिलीवरी एक कस्टम ऑब्जेक्ट, Delivery__c, है, जिसमें पार्टनर ऑर्डर नंबर External ID के रूप में है और Account की ओर एक lookup है; डिलीवरी आइटम एक कस्टम ऑब्जेक्ट, Delivery_Item__c, है, अपनी डिलीवरी के साथ master-detail संबंध में, और उसमें मात्रा है। नीचे एक नोट: बिज़नेस, कॉन्सेप्चुअल, लॉजिकल, फ़िज़िकल; दाईं ओर किसी भी चीज़ पर उँगली रखें और उसे बाईं ओर तक वापस खोजें। कॉन्सेप्चुअल: क्या मौजूद है? लॉजिकल: डेटा की संरचना कैसी है? फ़िज़िकल: SALESFORCE इसे कैसे बनाएगा? भेजता है में शामिल भेजता है में शामिल lookup master detail रिटेल पार्टनर जिस रिटेलर के लिए हम डिलीवर करते हैं डिलीवरी एक प्राप्तकर्ता को एक ऑर्डर डिलीवरी आइटम डिलीवरी पर एक प्रोडक्ट रिटेल पार्टनर Retail Partner ID रिकॉर्ड ID नाम स्टेटस डिलीवरी Delivery ID रिकॉर्ड ID पार्टनर ऑर्डर नंबर दूसरा नाम डिलीवरी की तारीख़ स्टेटस डिलीवरी आइटम Delivery Item ID रिकॉर्ड ID Product ID मात्रा Account (स्टैंडर्ड) Id रिकॉर्ड ID रिकॉर्ड टाइप: Retail Partner नाम Delivery__c Id रिकॉर्ड ID Partner_Order_Number__c EXTERNAL ID Retail_Partner__c LOOKUP Delivery_Item__c Id रिकॉर्ड ID Delivery__c MASTER-DETAIL Quantity__c बिज़नेस → कॉन्सेप्चुअल → लॉजिकल → फ़िज़िकल: दाईं ओर किसी भी चीज़ पर उँगली रखें और उसे बाईं ओर तक वापस खोजें। © 2026 Twinshark LLC · stevetecharc.com
Click to enlarge

मैं चाहता हूँ कि आप उन तीनों डायग्राम को अगल-बगल रखकर क्रम देख सकें: तीन असंबंधित डायग्राम नहीं, बल्कि एक ही बिज़नेस, तीन स्तरों पर।

मैं इन्हें कैसे बनाता हूँ, इस पर एक बात, क्योंकि लेआउट संदेश का हिस्सा है। मैं मुख्य ऑब्जेक्ट को बीच में, थोड़ा नीचे रखता हूँ। अगर उसके पैरेंट ऑब्जेक्ट हैं, तो उन्हें थोड़ा ऊपर रखता हूँ, ताकि आप मॉडल ऊपर से नीचे, बाएँ से दाएँ पढ़ें, जैसे बिज़नेस उसके बारे में सोचता है। रेफ़रेंस डेटा एक तरफ़ जाता है। रंग का भी मतलब है: मैं Salesforce को हमेशा नीला बनाता हूँ, और कंपनी के अपने सिस्टम के लिए एक रंग चुनता हूँ, आमतौर पर हरा, क्योंकि हरा एक प्यारा, दोस्ताना रंग है। मैं लाल इस्तेमाल नहीं करता, और पीले रंग थोड़े तीखे होते हैं। जब मॉडल इस तरह सजा हो, तो वह मेरे लिए गाने लगता है। आपको जो बहुत-से डायग्राम मिलेंगे, वे असल में जगह का इंतज़ाम हैं: अपने भरे हुए गैराज में मैं अपनी सारी गाड़ियाँ कैसे पार्क करूँ? मैं इसके बजाय एक तार्किक तस्वीर बनाना पसंद करूँगा जिसे दिमाग़ पकड़ सके।

फ़िज़िकल मॉडल को प्लेटफ़ॉर्म का सम्मान करना होगा

Section titled “फ़िज़िकल मॉडल को प्लेटफ़ॉर्म का सम्मान करना होगा ”

Salesforce कोई आम रिलेशनल डेटाबेस नहीं है। संबंधों, मालिकाना हक़, सिक्योरिटी और रिपोर्टिंग पर उसकी अपनी राय है। उसकी सीमाएँ हैं, क्वेरी का व्यवहार और ऑटोमेशन है, और एक आर्किटेक्चर है जो तय करता है कि मॉडल बड़े पैमाने पर कैसे बर्ताव करेगा। इसलिए व्हाइटबोर्ड पर बिल्कुल सही दिखने वाले लॉजिकल मॉडल को फ़िज़िकल बनते समय बदलना पड़ सकता है। यह Salesforce का बीच में अड़ना नहीं है। इसका मतलब है कि प्लेटफ़ॉर्म का अपना एक आकार है, और अच्छे आर्किटेक्ट उस आकार को समझते हैं। अगला अध्याय ठीक इसी के बारे में है।

कभी-कभी फ़िज़िकल मॉडल मॉड्यूल 5 में किए गए डीनॉर्मलाइज़ेशन के फ़ैसलों की वजह से भी जानबूझकर साफ़ लॉजिकल मॉडल से अलग होगा। कोई बात नहीं, जब तक हम बता सकें कि क्यों।

Setup से डिज़ाइन न करें

Section titled “Setup से डिज़ाइन न करें ”

एक आदत है जो, अगर आपमें है, तो मैं चाहता हूँ कि आप तोड़ें: अपने डेटा आर्किटेक्चर की शुरुआत Setup → Object Manager → New Custom Object से करना और चलते-चलते मॉडल समझना। Salesforce चीज़ें बनाना बेहद आसान बना देता है; यह उसकी एक ताक़त है, और एक वजह भी कि कमज़ोर डेटा मॉडल इतनी तेज़ी से बन जाते हैं। कुछ क्लिक और आपके पास एक ऑब्जेक्ट है, कुछ और क्लिक और आपके पास फ़ील्ड और एक संबंध है। फिर डेटा आता है, फ़्लो बनते हैं, रिपोर्ट बनती हैं, इंटीग्रेशन उस पर निर्भर हो जाते हैं, और पाँच मिनट में बनाया गया ऑब्जेक्ट बदलना बहुत महँगा हो जाता है। यह अध्याय 1 वाली पलटने की कसौटी (Reversibility Test) है। इसलिए New Custom Object पर क्लिक करने से पहले, मॉडल खींचें।

फ़िज़िकल का मतलब स्थायी नहीं है

Section titled “फ़िज़िकल का मतलब स्थायी नहीं है ”

तीनों मॉडल को अलग रखने की एक और वजह है: टेक्नोलॉजी बदलती है। आज Steve Trucking का कुछ डेटा Salesforce core पर रहता है। कल उसका कुछ हिस्सा Data 360, किसी वेयरहाउस, या किसी ऐसे सिस्टम में रह सकता है जिसे हमने अभी चुना नहीं, और AI असिस्टेंट को अपना अलग रूप चाहिए। फ़िज़िकल आर्किटेक्चर बदल सकता है, जबकि बिज़नेस की अवधारणाएँ हैरानी की हद तक स्थिर रहती हैं: रिटेल पार्टनर, डिलीवरी और प्राप्तकर्ता तब भी मौजूद रहते हैं। यही लॉजिकल मॉडल को क़ीमती बनाता है। यह बिज़नेस का एक टिकाऊ वर्णन है जो आज के इम्प्लीमेंटेशन से बँधा नहीं है।

आर्किटेक्ट यहाँ क्या तय करता है

Section titled “आर्किटेक्ट यहाँ क्या तय करता है ”

लॉजिकल मॉडल को फ़िज़िकल Salesforce मॉडल में बदलते हुए मैं यह तय कर रहा होता हूँ:

  • बिज़नेस की कौन-सी एंटिटी Salesforce की स्टैंडर्ड क्षमताओं से मैप होती हैं, और किन्हें कस्टम ऑब्जेक्ट या कोई दूसरा रूप चाहिए।
  • लॉजिकल एट्रिब्यूट फ़िज़िकल फ़ील्ड कैसे बनते हैं, और संबंध प्लेटफ़ॉर्म पर कैसे लागू होते हैं।
  • फ़िज़िकल डिज़ाइन में सोचा-समझा डीनॉर्मलाइज़ेशन कहाँ होना चाहिए।
  • कौन-सा डेटा Salesforce पर रहना चाहिए, और कौन-सा कहीं और।
  • प्लेटफ़ॉर्म की कौन-सी ख़ूबियाँ फ़िज़िकल मॉडल को लॉजिकल मॉडल से अलग होने पर मजबूर करती हैं।

सबसे अहम, मैं हर फ़ैसले को पीछे की ओर ट्रेस कर पाना चाहता हूँ। अगर आप मेरे फ़िज़िकल मॉडल में किसी चीज़ की ओर इशारा करके पूछें, “यह वहाँ क्यों है?”, तो मुझे आपको लॉजिकल मॉडल और कॉन्सेप्चुअल मॉडल से होते हुए किसी ऐसी चीज़ तक वापस ले जा पाना चाहिए जिसकी बिज़नेस को सच में ज़रूरत है: बिज़नेस → कॉन्सेप्चुअल → लॉजिकल → फ़िज़िकल।

परीक्षा से आगे: AI क्या बदलता है। AI अब एक ही छलाँग में रिक्वायरमेंट डॉक्यूमेंट से सीधे Salesforce ऑब्जेक्ट और फ़ील्ड तक पहुँच सकता है। इससे यह क्रम कम नहीं, ज़्यादा अहम हो जाता है: अगर वह रिक्वायरमेंट से सीधे कॉन्फ़िगरेशन पर कूद जाए, तो उससे कहें कि बीच में जो हुआ वह दिखाए: उसने किसे एंटिटी माना, कौन-सी की चुनीं, कौन-से संबंध मान लिए, और कहाँ डीनॉर्मलाइज़ किया। ये आर्किटेक्चर के फ़ैसले हैं, और आर्किटेक्ट को इन्हें अब भी देखना होगा।

हमने यह अध्याय एक पहली कॉल पर संज्ञाएँ सुनते हुए शुरू किया था, और इसे एक ऐसे फ़िज़िकल मॉडल पर ख़त्म कर रहे हैं जिसे हम बिज़नेस तक वापस ट्रेस कर सकते हैं। अब जबकि हमने Salesforce पर बनाना चुना है, अगला सवाल और गहरा जाता है: हम असल में किस तरह के डेटा प्लेटफ़ॉर्म पर बना रहे हैं?

  • Designing Record Access for Enterprise Scale: Parent-Child Data Skew (opens in a new tab), Salesforce Developers, Winter ‘27 (अंग्रेज़ी में, 2026-10-02 को जाँचा गया): “पैरेंट-चाइल्ड संबंधों को इस तरह कॉन्फ़िगर करें कि एक पैरेंट रिकॉर्ड पर 10,000 से ज़्यादा चाइल्ड न हों।” यह data skew के बारे में एक दिशानिर्देश है, कोई सख़्त सीमा नहीं; अध्याय 7 इसमें गहराई से जाता है।
  • Roll-Up Summary Field (opens in a new tab), Salesforce Help (अंग्रेज़ी में, 2026-10-12 को जाँचा गया): एक roll-up summary, master-detail संबंध के ज़रिए detail रिकॉर्ड गिनता या जोड़ता है।