रिलेशनशिप क्लासेस का उपयोग करना या न करना?


12

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

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

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

अब स्पष्ट हो सकता है कि मैं कक्षाओं को फीचर करने के लिए रिलेशन क्लास से लेकर फ़ीचर क्लासेस का उपयोग करने जा रहा हूं, यह प्रश्न इस बात के लिए अधिक निर्दिष्ट है कि मैं डेटा को एक गैर-स्थानिक तालिका में क्यों संग्रहीत करूंगा जो आसानी से एक फीचर क्लास में स्टोर हो सकता है।

वैसे भी किसी भी इनपुट लोगों के लिए धन्यवाद!

जवाबों:


17

डेटाबेस सामान्यीकरण सिद्धांतों के कारण लोग अलग-अलग तालिकाओं में डेटा व्यवस्थित करते हैं (लिंक का पालन करें, सभी तर्क है)। कहा जा रहा है कि, ईएसआरआई रिलेशनशिप क्लासेस उन सिद्धांतों के एक जियोडाटाबेस-स्तरीय कार्यान्वयन हैं। ईमानदारी से, मैं व्यक्तिगत रूप से केवल दो उदाहरणों में उनका उपयोग करूंगा:

  • जब आपके पास कुछ डेटा होता है जो DB में सामान्यीकृत होता है और आप ArcMap संपादन उपकरण का लाभ उठाना चाहते हैं। ArcMap आपको (यकीनन) आसानी से उनके टूल में रिश्तों का पता लगाने की अनुमति देता है ।

  • जब आप एक GeoDatabase अमूर्तता का उपयोग कर रहे हैं जो GeoDatabase संदेश (जैसे सुविधा-लिंक्ड एनोटेशन , कस्टम सुविधा वर्ग, आदि) की आवश्यकता है।

हालांकि लोग दावा कर सकते हैं कि संदर्भात्मक अखंडता एक लाभ है, लेकिन सच्चाई यह है कि इसे एसक्यूएल प्रॉम्प्ट के साथ दरकिनार किया जा सकता है, इसलिए इसका लाभ वास्तव में उस वर्कफ़्लो पर निर्भर करता है जो आपके पास संशोधित करने के लिए है (यानी क्या लोग केवल आर्कपार्ट का उपयोग करते हैं) संपादित करें बनाम लोग SQL प्रश्नों या गैर-ईएसआरआई टूल के साथ भी संपादित करते हैं)।


2
वाह, बहुत बढ़िया जवाब। डेटाबेस सिद्धांत की बड़ी बड़ी दुनिया ने मेरे दिमाग को उड़ा दिया है। इनपुट के लिए एक टन धन्यवाद!
कोड़ी ब्राउन

8

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

  • एक विशेषता के बारे में कई, गैर-स्थानिक रिकॉर्ड संग्रहीत करना (जैसे कि एक हाइड्रेंट या वाल्व के लिए मासिक निरीक्षण रिकॉर्ड)
  • एक डेटा स्रोत से संबंधित रिकॉर्ड को संदर्भित करना जो आप नियंत्रित नहीं करते हैं (जैसे तृतीय-पक्ष संपत्ति प्रबंधन कार्यक्रम के डेटाबेस से रखरखाव रिकॉर्ड पढ़ना)
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.