छोड़कर सामग्री पर जाएँ
Read this post in: de_DEen_USes_ESfr_FRhi_INid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW
Home » Data Modeling / Database » ER मॉडलिंग को सीखें: वास्तविक दुनिया के उदाहरण के साथ एक स्टेप-बाय-स्टेप गाइड (5 में से भाग 2)

ER मॉडलिंग को सीखें: वास्तविक दुनिया के उदाहरण के साथ एक स्टेप-बाय-स्टेप गाइड (5 में से भाग 2)

प्रभावी डेटाबेस डिजाइन के लिए एंटिटी-रिलेशनशिप डायग्राम (ERD) को बेहतर बनाना

समस्या विवरण: ER मॉडलिंग – एक कार रेंटल कंपनी सिस्टम

एक कार रेंटल कंपनी को अपने व्यापार संचालन को प्रबंधित करने के लिए एक डेटाबेस बनाने की आवश्यकता है। कंपनी के पास छोटे और लंबे समय के लिए ग्राहकों को किराए पर दी जाने वाली बड़ी संख्या में कारों का फ्लीट है। कंपनी के अलग-अलग स्थानों पर कई शाखाएं हैं, और प्रत्येक शाखा के अपने फ्लीट के साथ कारें हैं।

कंपनी को किराए पर उपलब्ध कारों, किराए पर ली गई कारों के ग्राहकों, किराए की अवधि और प्रत्येक किराए के शुल्क को ट्रैक करने की आवश्यकता है। वे प्रत्येक कार के रखरखाव के शेड्यूल और किए गए रखरखाव कार्यों को भी ट्रैक करना चाहते हैं।

From conceptual to logical to physical ERD

कंपनी के डेटाबेस के लिए निम्नलिखित आवश्यकताएं हैं:

  1. कारों को एक विशिष्ट किराए की अवधि के लिए ग्राहकों को किराए पर दिया जा सकता है।
  2. एक ग्राहक कई कारें किराए पर ले सकता है, और एक कार कई ग्राहकों द्वारा किराए पर ली जा सकती है।
  3. प्रत्येक कार के किराए के शुल्क की गणना किराए की अवधि और बीमा या ईंधन शुल्क जैसे किसी भी अतिरिक्त शुल्क के आधार पर की जानी चाहिए।
  4. कंपनी को प्रत्येक कार के रखरखाव के शेड्यूल और किए गए रखरखाव कार्यों को ट्रैक करने की आवश्यकता है।
  5. कंपनी को अपनी कारों के उपयोग पर रिपोर्ट देखने की आवश्यकता है, जिसमें किराए की संख्या, किराए की अवधि और उत्पन्न आय शामिल है।
  6. कंपनी को अपनी कारों पर किए गए रखरखाव कार्यों पर रिपोर्ट देखने की आवश्यकता है, जिसमें किए गए रखरखाव के प्रकार, उसकी तारीख और लागत शामिल है।
  7. कंपनी को अपनी कारें किराए पर लेने वाले ग्राहकों को ट्रैक करने की आवश्यकता है, जिसमें उनकी व्यक्तिगत जानकारी जैसे नाम, पता, फोन नंबर और ईमेल पता शामिल है।
  8. कंपनी को अपने ग्राहकों पर रिपोर्ट देखने की आवश्यकता है, जिसमें किराए की संख्या, किराए की अवधि और प्रत्येक ग्राहक से उत्पन्न आय शामिल है।

इन आवश्यकताओं को पूरा करने के लिए, कार रेंटल सिस्टम को मॉडल करने के लिए एंटिटी-रिलेशनशिप (ER) डायग्राम बनाया जा सकता है। डायग्राम में कारें, ग्राहक, किराए और रखरखाव जैसे एंटिटी और किराए, ग्राहक किराए और कार रखरखाव जैसे संबंध शामिल होंगे।

डेटाबेस के लिए ER डायग्राम विकसित करने के लिए एक स्टेप-बाय-स्टेप गाइड

यहां डेटाबेस के लिए ER डायग्राम विकसित करने के लिए एक स्टेप-बाय-स्टेप गाइड है:

  1. एंटिटी की पहचान करें:सबसे पहले डेटाबेस में शामिल होने वाली अलग-अलग एंटिटी की पहचान करें। इन एंटिटी को लोग, स्थान, चीजें या डेटाबेस के क्षेत्र से संबंधित अवधारणाएं हो सकती हैं। उदाहरण के लिए, कार रेंटल सिस्टम में, एंटिटी में कारें, ग्राहक, किराए और रखरखाव शामिल हो सकते हैं।
  2. विशेषताओं को निर्धारित करें:अगला, प्रत्येक एंटिटी की विशेषताओं को निर्धारित करें। विशेषताएं वे लक्षण या गुण होते हैं जो एंटिटी का वर्णन करते हैं। उदाहरण के लिए, कार एंटिटी की विशेषताएं मेक, मॉडल, वर्ष और लाइसेंस प्लेट नंबर शामिल हो सकते हैं।
  3. संबंधों की पहचान करें:एंटिटी और उनकी विशेषताओं की पहचान करने के बाद, एंटिटी के बीच संबंधों को निर्धारित करें। संबंध एंटिटी के बीच संबंध या संबंध होते हैं। उदाहरण के लिए, कार और किराए एंटिटी के बीच संबंध यह है कि एक कार को एक विशिष्ट किराए की अवधि के लिए किराए पर दिया जा सकता है।
  4. कार्डिनैलिटी को निर्धारित करें:कार्डिनैलिटी एक एंटिटी के उन उदाहरणों की संख्या को वर्णित करती है जो दूसरी एंटिटी के उदाहरणों से जुड़ सकते हैं। उदाहरण के लिए, कार और किराए एंटिटी के बीच कार्डिनैलिटी एक-से-बहुत हो सकती है, जिसका अर्थ है कि एक कार कई ग्राहकों को किराए पर दी जा सकती है।
  5. संबंध की डिग्री को निर्धारित करें:संबंध की डिग्री संबंध में शामिल एंटिटी की संख्या को संदर्भित करती है। उदाहरण के लिए, कार और किराए एंटिटी के बीच संबंध द्विआधारी संबंध है, जिसका अर्थ है कि इसमें केवल दो एंटिटी शामिल हैं।
  6. प्रारंभिक डायग्राम बनाएं:पिछले चरणों में एकत्र की गई जानकारी का उपयोग करके एक प्रारंभिक ER डायग्राम बनाएं। इस डायग्राम में एंटिटी, विशेषताएं, संबंध, कार्डिनैलिटी और संबंध की डिग्री शामिल होनी चाहिए।
  7. डायग्राम को बेहतर बनाएं: ER आरेख को सटीकता, पूर्णता और सांत्वना के लिए समीक्षा करके सुधारें। आवश्यकता होने पर किसी भी आवश्यक समायोजन या संशोधन करें ताकि आरेख डेटाबेस की आवश्यकताओं का सही रूप से प्रतिनिधित्व करे।
  8. प्रतिबंध जोड़ें: डेटाबेस में डेटा के प्रवेश को सीमित करने वाले नियम या शर्तों के रूप में डेटा अखंडता और सांत्वना सुनिश्चित करने में मदद करने वाले किसी भी प्रतिबंध को आरेख में जोड़ें। उदाहरण के लिए, एक प्रतिबंध यह हो सकता है कि एक कार एकाइटी को एक वैध लाइसेंस प्लेट नंबर होना चाहिए।
  9. आरेख को अंतिम रूप दें: जब ER आरेख को सुधार लिया गया हो और प्रतिबंध जोड़ दिए गए हों, तो आरेख को अंतिम रूप दें। अंतिम आरेख को डेटाबेस और उसकी आवश्यकताओं का सही रूप से प्रतिनिधित्व करना चाहिए।
  10. डेटाबेस उत्पन्न करें: अंतिम ER आरेख का उपयोग करके डेटाबेस स्कीमा उत्पन्न करें। डेटाबेस स्कीमा डेटाबेस की संरचना को परिभाषित करता है, जिसमें तालिकाएं, कॉलम और उनके बीच संबंध शामिल हैं।

अवधारणात्मक, तार्किक और भौतिक डेटा मॉडलिंग के बीच अंतर को समझना

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

प्रत्येक चरण में क्या शामिल है, इसका एक सारांश यहाँ दिया गया है:

  1. अवधारणात्मक डेटा मॉडल: इस चरण में डेटा और उनके बीच संबंधों के उच्च स्तर के दृष्टिकोण को समझने पर ध्यान केंद्रित किया जाता है। यह किसी विशिष्ट तकनीक या डेटाबेस प्रबंधन प्रणाली (DBMS) से स्वतंत्र है। मुख्य उद्देश्य मुख्य एकाइटी, उनके संबंधों और उनके गुणों की पहचान करना है। इस चरण का परिणाम एक अवधारणात्मक डेटा मॉडल है, जिसका उपयोग तार्किक डेटा मॉडल के विकास के लिए दिशा देने के लिए किया जाता है।
  2. तार्किक डेटा मॉडल: इस चरण में डेटा संरचनाओं और संबंधों को विस्तार से परिभाषित करने पर ध्यान केंद्रित किया जाता है। इसमें एक तार्किक स्कीमा शामिल है जो अवधारणात्मक चरण में पहचाने गए डेटा मॉडल अवधारणाओं के अनुरूप होती है, एक एंटिटी-रिलेशनशिप आरेख (ERD) या समान उपकरण का उपयोग करके। तार्किक डेटा मॉडल व्यवसाय की आवश्यकताओं को डेटा संरचना और संबंधों के संदर्भ में प्रस्तुत करता है और भौतिक डेटाबेस डिज़ाइन से स्वतंत्र है। इस चरण का परिणाम एक तार्किक डेटा मॉडल है, जिसका उपयोग भौतिक डेटा मॉडल के विकास के लिए दिशा देने के लिए किया जाता है।
  3. भौतिक डेटा मॉडल: इस चरण में तार्किक डेटा मॉडल को एक विशिष्ट डेटाबेस प्रबंधन प्रणाली में अनुवाद करने पर ध्यान केंद्रित किया जाता है, लक्षित DBMS के प्रदर्शन, भंडारण आवश्यकताओं और तकनीकी सीमाओं को ध्यान में रखते हुए। भौतिक डेटा मॉडल डेटाबेस वस्तुओं, जैसे तालिकाएं, कॉलम और इंडेक्स, के वर्णन करता है, साथ ही उनके डेटा प्रकार, आकार और प्रतिबंधों के बारे में भी बताता है। इस चरण का परिणाम एक भौतिक डेटा मॉडल है, जिसका उपयोग डेटाबेस को बनाने और लागू करने के लिए किया जाता है।

सारांश में, अवधारणात्मक चरण डेटा एकाइटी और उनके संबंधों को उच्च स्तर पर परिभाषित करता है, तार्किक चरण विस्तृत डेटा संरचनाओं और संबंधों को परिभाषित करता है, और भौतिक चरण तार्किक डेटा मॉडल को एक विशिष्ट डेटाबेस तकनीक में नक्शा बनाता है, जिसमें प्रदर्शन और भंडारण के विचार शामिल हैं।

समस्या विवरण से अवधारणात्मक ERD बनाना

ERD में चार एकाइटी शामिल हैं: कार, ग्राहक, किराया और रखरखाव। प्रत्येक एकाइटी के अपने गुण हैं, जैसे कार एकाइटी के लिए car_id, मॉडल, मेक, वर्ष, दैनिक दर, ईंधन प्रकार, is_available, ग्राहक एकाइटी के लिए first_name, last_name, ईमेल, phone_number और पता, किराया एकाइटी के लिए start_date, end_date, rental_rate, insurance_charge, fuel_charge, और रखरखाव एकाइटी के लिए type, description, cost और maintenance_date।

ERD एकाइटी के बीच संबंधों को भी दिखाता है, जिसमें कार और किराया एकाइटी के बीच किराया संबंध, किराया और ग्राहक एकाइटी के बीच ग्राहक किराया संबंध, और कार और रखरखाव एकाइटी के बीच कार रखरखाव संबंध शामिल हैं।

Car rental conceptual ERD

अवधारणात्मक ERD को तार्किक ERD में सुधारें

तार्किक ERD में तालिकाओं, कॉलमों, कुंजियों और संबंधों पर जोर देने वाले अधिक औपचारिक, विस्तृत नोटेशन शामिल है। विशेष रूप से, कॉलम के डेटा प्रकार प्रस्तुत किए गए हैं। साथ ही, प्रत्येक संबंध की प्रकृति को दर्शाने के लिए संबंधों पर लेबल जोड़े गए हैं (“किराया”, “किराया लिया गया”, और “आवश्यकता”)।

Car rental logical ERD

तार्किक ERD को भौतिक ERD में सुधारें

भौतिक ERD एक ‘डेटाबेस स्कीमा आरेख’ है जो एक विशिष्ट DBMS में डेटाबेस को लागू करने के लिए पर्याप्त विवरण प्रदान करता है। एकाइटी और कॉलम के नाम को निम्नलिखित तरीके से संशोधित किया गया है:

  • DBMS-विशिष्ट सिंटैक्स का समर्थन करें।
  • गैर-आरक्षित शब्दों के उपयोग सुनिश्चित करें (उदाहरण के लिए, order -> purchase_order, desc -> description)
  • संगठन-विशिष्ट नामकरण प्रणाली के अनुरूप फिट हो

रखरखाव एकाइटी में कॉलम ‘desc’ का नाम ‘description’ के रूप में बदल दिया गया है।

Car rental physical ERD

डेटाबेस स्कीमा उत्पन्न करना: ERD को भौतिक स्कीमा में बदलना

डेटाबेस स्कीमा डेटाबेस संरचना का एक दृश्य प्रतिनिधित्व है जो एक संबंधात्मक डेटाबेस प्रबंधन प्रणाली में डेटा के संगठन को परिभाषित करता है। स्कीमा को एक एंटिटी-रिलेशनशिप आरेख (ERD) के आधार पर बनाया जाता है, जिसका उपयोग एक प्रणाली में विभिन्न एकाइटी के बीच संबंधों को मॉडल करने के लिए किया जाता है।

इस मामले में, ERD को पहले तार्किक ERD में सुधारा गया जिसने कारों, ग्राहकों, किराए के और रखरखाव के बीच संबंधों और उनके संबंधित गुणों को परिभाषित किया। तार्किक ERD ने एकता के बीच संबंधों और कार्डिनैलिटी को स्थापित करने में मदद की।

तार्किक ERD को सुधारने के बाद अगला चरण एक भौतिक ERD बनाना था जो आवश्यक डेटा प्रकार, प्राथमिक और विदेशी कुंजियों और किसी भी प्रतिबंध के साथ वास्तविक डेटाबेस स्कीमा को परिभाषित करता है। भौतिक ERD तार्किक ERD को दर्शाता है लेकिन डेटा डेटाबेस में कैसे संग्रहीत होता है, इसके बारे में अधिक विवरण के साथ।

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

टेबल कार बनाएं (
car_id INT प्राथमिक कुंजी,
मॉडल VARCHAR(255),
निर्माता VARCHAR(255),
वर्ष INT,
दैनिक दर DECIMAL(10, 2),
ईंधन प्रकार VARCHAR(255),
उपलब्ध है BOOLEAN
);

टेबल ग्राहक बनाएं (
customer_id INT प्राथमिक कुंजी,
पहला नाम VARCHAR(255),
अंतिम नाम VARCHAR(255),
ईमेल VARCHAR(255),
फ़ोन नंबर VARCHAR(255),
पता VARCHAR(255)
);

टेबल किराए बनाएं (
किराए का आईडी INT प्राथमिक कुंजी,
शुरुआत की तारीख DATE,
अंतिम तारीख DATE,
किराए की दर DECIMAL(10, 2),
बीमा शुल्क DECIMAL(10, 2),
ईंधन शुल्क DECIMAL(10, 2),
car_id INT,
customer_id INT,
विदेशी कुंजी (car_id) कार(car_id) के संदर्भ में,
विदेशी कुंजी (customer_id) के उल्लेख करती है Customer(customer_id)
);

रखरखाव बनाएँ (
maintenance_id INT प्राथमिक कुंजी,
type VARCHAR(255),
description TEXT,
cost DECIMAL(10, 2),
maintenance_date DATE,
car_id INT,
विदेशी कुंजी (car_id) के उल्लेख करती है Car(car_id)
);

सारांश

लेख में एक प्रभावी डेटाबेस स्कीमा बनाने के लिए एंटिटी-रिलेशनशिप आरेखों (ERDs) को अनुकूलित करने की प्रक्रिया की चर्चा की गई है। ERD को अवधारणात्मक स्तर से तार्किक स्तर और फिर भौतिक स्तर तक अनुकूलित किया जाता है। तार्किक ERD एंटिटी के बीच संबंधों और कार्डिनैलिटी को स्थापित करता है, जबकि भौतिक ERD सभी आवश्यक डेटा प्रकार, प्राथमिक और विदेशी कुंजियों और अनियमों के साथ वास्तविक डेटाबेस स्कीमा को परिभाषित करता है।

फिर भौतिक ERD के आधार पर SQL कोड लिखा जाता है ताकि उचित तालिकाओं, स्तंभों और संबंधों के साथ डेटाबेस स्कीमा बनाया जा सके। लेख में एक प्रभावी डेटाबेस डिजाइन के लिए ERD को अनुकूलित करने के महत्व पर जोर दिया गया है और ERD से डेटाबेस स्कीमा बनाने की प्रक्रिया के बारे में जानकारी प्रदान की गई है।

प्रातिक्रिया दे