माइग्रेशन

OpenStreetMap Nominatim से माइग्रेट करना

जियोकोडिंग विकल्पों में Nominatim की एक अनोखी जगह है, क्योंकि यह ओपन सोर्स सॉफ़्टवेयर भी है जिसे आप खुद चला सकते हैं और एक सार्वजनिक डेमो इंस्टेंस भी है जिसे कोई भी सीधे क्वेरी कर सकता है, और यह एक उपयोग नीति से चलता है जो औपचारिक API कुंजी के बजाय एक वर्णनात्मक User-Agent हेडर और अनुरोधों की उचित रफ़्तार की अपेक्षा करती है। इसके JSON रिस्पॉन्स में एक display_name स्ट्रिंग, संख्याओं के बजाय स्ट्रिंग के रूप में lat और lon की जोड़ी, और OpenStreetMap की अपनी टैगिंग परंपराओं वाला एक address ऑब्जेक्ट होता है, जैसे road, suburb और postcode

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

My Geocode का Nominatim कम्पैटिबिलिटी होस्ट display_name, lat, lon और पते के फ़ील्ड की संरचना को हूबहू दोहराता है, और केवल कॉपीराइट, शर्तों और गोपनीयता का टेक्स्ट Nominatim के अपने आउटपुट से अलग होता है। संदर्भ विवरण /compatibility/nominatim/ पर हैं। सार्वजनिक Nominatim इंस्टेंस के लिए लिखा गया कोड, उसके स्ट्रिंग टाइप वाले निर्देशांक फ़ील्ड समेत, कम्पैटिबिलिटी होस्ट के रिस्पॉन्स को बिना बदलाव के पार्स कर लेना चाहिए।

इस खास माइग्रेशन में असल में क्या बदलता है:

  • साझा उपयोग नीति से जुड़ी User-Agent हेडर की शर्त अब नहीं रहती; इसके बजाय ऑथेंटिकेशन एक कुंजी से होता है, जो X-API-Key हेडर, Authorization: Bearer हेडर, HTTP Basic auth या query पैरामीटर के रूप में भेजी जाती है
  • साझा संसाधन की किसी अनिर्दिष्ट रेट लिमिट के बजाय एक अनुमान लगाने योग्य दैनिक कोटा: प्रतिदिन 2,500 अनुरोध बिना कुंजी के मुफ़्त, और हर कुंजी पर नेटवर्क के हिसाब से गिने जाने वाले प्रतिदिन 2,500 और मुफ़्त
  • चलाने के लिए कोई इन्फ्रास्ट्रक्चर नहीं और बनाए रखने के लिए कोई OpenStreetMap डेटा एक्सट्रैक्ट नहीं, क्योंकि होस्टेड सेवा यह सब संभालती है

मुफ़्त कोटा के बाद कीमत €0.0001 प्रति अनुरोध की दर से प्रीपेड क्रेडिट या €50 प्रति माह की Unlimited कुंजी है, और इस कम्पैटिबिलिटी होस्ट समेत हर एंडपॉइंट की कीमत प्लेटफ़ॉर्म के बाकी हर एंडपॉइंट जैसी ही है।

जिन टीमों ने खास तौर पर ओपन भौगोलिक डेटा पर Nominatim की नींव को महत्व दिया, उनके लिए यह जानना उपयोगी है कि OpenStreetMap की परंपराओं पर बने फ़ील्ड नाम, जैसे ज़्यादा सामान्य शब्दों के बजाय suburb और postcode, इस कम्पैटिबिलिटी होस्ट की संरचना में आगे आते हैं, इसलिए आपका कोड पते की जिस शब्दावली की अपेक्षा करता है, वह माइग्रेशन के बाद भी समझ में आनी चाहिए।