यह सत्यापित करते हुए कि विशेषता अनुक्रमित का उपयोग आर्कोबजेक्ट्स से क्वेरी में किया जा रहा है?


11

हमारे पास .NET के माध्यम से ArcObjects का उपयोग करके लिखे गए एक बड़े प्रोजेक्ट के हिस्से के रूप में कुछ सॉफ़्टवेयर हैं। यह सॉफ़्टवेयर एक स्कीमा में कई फ़ाइल जियोडेट डेटाबेस से डेटा को एक समान लेकिन भिन्न स्कीमा में एकल फ़ाइल जियोडैटाबेस में माइग्रेट और मर्ज करता है। माइग्रेशन में कुछ चरणों में एक मौजूदा पंक्ति को देखना और इसे एक अलग टेबल से डेटा के साथ अपडेट करना शामिल है। यह बहुत धीमा हो सकता है जब गंतव्य जियोडेटाबेस बड़ा है, इसलिए मैंने क्वेरी या अपडेट प्रदर्शन को बेहतर बनाने के लिए कुछ बहु-फ़ील्ड विशेषता अनुक्रमित जोड़े हैं।

क्या कोई ऐसा तरीका है जिससे मैं पुष्टि कर सकता हूं कि प्रश्न नए विशेषता अनुक्रमित का उपयोग कर रहे हैं, और शायद क्वेरी को कैसे निष्पादित किया जा रहा है?

मुझे लगता है कि मैं वास्तव में एक क्वेरी योजना के बराबर की तलाश कर रहा हूं - EXPLAIN PLANओरेकल में समान ।

क्वेरी सीधे आर्कओबजेक्ट्स (कोई RDBMS बैकएंड या SQL) का उपयोग करके एक फाइल जियोडैटेबेस पर हैं।


क्या आपने विशेषता अनुक्रमित के साथ और बिना प्रदर्शन को समय दिया है? मुझे लगता है कि यह जानने का एकमात्र तरीका है कि वे एक प्रभाव डाल रहे हैं।
blah238

मैं अब कई डेटा साइज़ के साथ प्रदर्शन परीक्षण चला रहा हूँ। जब मैं उन्हें प्राप्त करूँगा तो परिणाम पोस्ट करने की कोशिश करूँगा।
Gnat

मैंने स्मॉलवर्ल्ड मागिक की is_size_fast?विधि के समान आर्कोबजेक्ट्स क्लास लाइब्रेरी में देखा , जो कि इंडेक्स का उपयोग होने पर सही है, लेकिन मैं एक समान आर्कोबजेक्ट्स कॉल नहीं देख सकता।
Gnat

एफजीडीबी ईएसआरआई का अपना डेटाबेस प्रारूप है, एक एपीआई है जो आपको ईएसआरआई वस्तुओं के बिना डेटा का उपयोग करने की अनुमति देगा, लेकिन मुझे संदेह है कि आपके प्रश्नपत्र पर बहुत प्रकाश डाला जाएगा। संकेतों का उपयोग स्वचालित है और इसका पता नहीं लगाया जा सकता है या इसकी पुष्टि नहीं की जा सकती है। मैं blah238 से सहमत हूं, यह सुनिश्चित करने का एकमात्र तरीका है। 'अद्वितीय' और 'आरोही' विकल्पों में एक बड़ा अंतर हो सकता है, लेकिन केवल इन विकल्पों का उपयोग करें यदि आप विशिष्टता और / या आरोहण के बिल्कुल निश्चित हैं।
माइकल स्टिमसन

@ blah238 मुझे लगता है कि आप अपनी टिप्पणी को एक उत्तर में बदल सकते हैं।
PolyGeo

जवाबों:


1

फ़ाइल जियोडैटेबेस Esri का अपना डेटाबेस प्रारूप है, एक एपीआई है जो आपको ArcObjects के बिना डेटा तक पहुंचने की अनुमति देगा, लेकिन मुझे संदेह है कि यह आपके प्रश्न पर बहुत प्रकाश डालेगा।

डेटाबेस स्तर पर सूचकांकों का उपयोग स्वचालित है, और उनका उपयोग करने वाले कार्यों की समयबद्धता को छोड़कर पता लगाया या पुष्टि नहीं की जा सकती है।

मैं blah238 के साथ सहमत हूं, केवल यह सुनिश्चित करने के लिए बताने का एकमात्र तरीका है कि बिना निर्मित किए गए सूचकांकों के साथ चलें और समय के अंतर की तुलना करें।

सूचकांक बनाने के लिए 'अद्वितीय' और 'आरोही' विकल्पों में एक बड़ा अंतर हो सकता है लेकिन केवल इन विकल्पों का उपयोग करें यदि आप विशिष्टता और / या आरोही के बारे में पूरी तरह से निश्चित हैं , तो क्या डेटा उपयुक्त नहीं होना चाहिए या तो सूचकांक का निर्माण नहीं होगा या, यदि यह निर्माण करता है, बढ़ाने के बजाय प्रदर्शन को प्रतिकूल रूप से प्रभावित करने की संभावना है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.