Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

एसक्यूएल सर्वर 2008 में भूगोल डेटाटाइप कितना अच्छा है?

जैसा कि आप वर्णन कर रहे हैं, यदि आपकी हैंडलिंग केवल एक मानक Lat/Lng जोड़ी है, और आपका सारा काम एक साधारण लुकअप है, तो यकीनन आपको ज्यामिति प्रकार का उपयोग करके गति में वृद्धि के रास्ते में बहुत कुछ हासिल नहीं होने वाला है।

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

उदाहरण के लिए (एक परियोजना के आधार पर जिस पर मैं काम कर रहा हूं) आप (यदि यह यूके डेटा है) किसी दिए गए क्षेत्र के लिए सभी कस्बों/गांवों/शहरों के लिए बहुभुज परिभाषाएं डाउनलोड कर सकते हैं, फिर किसी विशेष शहर में खोज के लिए क्रॉस संदर्भ करें, या यदि आपके पास एक रोड मैप होता, तो आप पता लगा सकते थे कि कौन से ग्राहक प्रमुख वितरण मार्गों, मोटरमार्गों, प्राथमिक सड़कों के बगल में रहते थे।

आप कुछ बहुत ही फैंसी रिपोर्टिंग भी कर सकते हैं, कस्बों के मानचित्र की कल्पना करें, जहां प्रत्येक रूपरेखा को मानचित्र पर प्लॉट किया गया था, फिर एक क्षेत्र में ग्राहकों की घनत्व दिखाने के लिए रंग के साथ छायांकित किया गया था, कुछ सरल ज्यामिति एसक्यूएल आपको आसानी से एक गिनती वापस कर देगा इस तरह की जानकारी को ग्राफ़ करने के लिए डेटाबेस से।

फिर ट्रैकिंग होती है, मुझे नहीं पता कि आप कौन सा डेटा संभालते हैं, या आपके पास ग्राहक क्यों हैं, लेकिन अगर आप किसी डिलीवरी वैन के को-ऑर्डिनेट्स को फीड करते हुए कुछ भी डिलीवर करते हैं, तो यह आपको बताता है कि यह किसी दिए गए ग्राहक के कितने करीब है।

प्रश्न के लिए एसटीडीस्टेंस फास्ट है? ठीक है कि वास्तव में कहना मुश्किल है, मुझे लगता है कि एक बेहतर सवाल यह है कि "क्या यह तुलना में तेज़ है.....", हां या ना कहना मुश्किल है, जब तक कि आपके पास इसकी तुलना करने के लिए कुछ न हो।

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

सामान्य तौर पर आपको निश्चित रूप से किसी प्रकार की गति में वृद्धि देखनी चाहिए, क्योंकि सॉर्टिंग और इंडेक्सिंग में गणित डेटा के उद्देश्य के बारे में अधिक जागरूक होते हैं, क्योंकि सामान्य इंडेक्स की तरह ऑपरेशन में काफी रैखिक होने का विरोध किया जाता है।

यह भी ध्यान रखें, कि SQL सर्वर मशीन जितनी मजबूत होगी, आपको उतने ही बेहतर परिणाम मिलेंगे।

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

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




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर में पढ़ें और बढ़ाएँ int मान

  2. ADO.net SqlTransaction प्रदर्शन में सुधार करता है

  3. MS SQL सर्वर बोली के उदाहरण पर SQL (DDL, DML) पर ट्यूटोरियल

  4. SQL सर्वर में कर्सर का उपयोग करना बुरा व्यवहार क्यों माना जाता है?

  5. एक्सेल डेट सीरियल नंबर को रेगुलर डेट में बदलें