डेटासेट की मदद से, Google Maps Platform में जियोस्पेशल डेटा अपलोड किया जा सकता है. यह डेटा, लोकल फ़ाइल या Google Cloud Storage से अपलोड किया जा सकता है. इसके बाद, Cloud Console में जाकर, किसी डेटासेट को एक या उससे ज़्यादा मैप स्टाइल से जोड़ा जा सकता है. डेटासेट को मैप की स्टाइल से जोड़ने के बाद, डेटा पर आधारित स्टाइलिंग एपीआई का इस्तेमाल करके, अपने मैप ऐप्लिकेशन की स्टाइल को डाइनैमिक तरीके से बदलें.
डेटासेट में अपना जियोस्पेशल डेटा अपलोड करने के लिए, REST API का भी इस्तेमाल किया जा सकता है. ज़्यादा जानकारी के लिए, Maps Datasets API देखें
भूमिकाएं कॉन्फ़िगर करना
Google Cloud प्रोजेक्ट में डेटासेट बनाने और उन्हें मैनेज करने के लिए, आपके पास प्रोजेक्ट के लिए मालिक या एडिटर की IAM भूमिका होनी चाहिए.
इसके अलावा, डेटासेट मैनेज करने के लिए इस्तेमाल किए जाने वाले उपयोगकर्ता खाते या सेवा खाते को ये IAM भूमिकाएं असाइन की जा सकती हैं:
Maps Platform Datasets Admin
भूमिका से, उपयोगकर्ता या सेवा खाते को प्रोजेक्ट में मौजूद डेटासेट को पढ़ने/लिखने का ऐक्सेस मिलता है. इस भूमिका की मदद से, उपयोगकर्ता किसी डेटासेट पर सभी कार्रवाइयां कर सकता है.Maps Platform Datasets Viewer
भूमिका से, प्रोजेक्ट में मौजूद डेटासेट का रीड-ओनली ऐक्सेस मिलता है. इस भूमिका की मदद से, किसी डेटासेट पर सूची बनाने, पाने या डाउनलोड करने की कार्रवाई की जा सकती है.
ज़्यादा जानकारी के लिए, Google Cloud Console का इस्तेमाल करके, IAM की भूमिका असाइन करना लेख पढ़ें.
डेटासेट के लिए डेटा सोर्स
डेटासेट बनाने के बाद, Google Cloud Storage या किसी लोकल फ़ाइल से डेटासेट में डेटा अपलोड करें.Cloud Storage से डेटा अपलोड करते समय, उस संसाधन का फ़ाइल पाथ डालें जिसमें Cloud Storage में मौजूद डेटा शामिल है. यह पाथ,
gs://GCS_BUCKET/FILE
के फ़ॉर्मैट में होता है.अनुरोध करने वाले उपयोगकर्ता के पास स्टोरेज ऑब्जेक्ट व्यूअर की भूमिका होनी चाहिए. इसके अलावा, उसके पास कोई ऐसी भूमिका भी हो सकती है जिसमें
storage.objects.get
अनुमति शामिल हो. Cloud Storage का ऐक्सेस मैनेज करने के बारे में ज़्यादा जानने के लिए, ऐक्सेस कंट्रोल की खास जानकारी लेख पढ़ें.- किसी स्थानीय फ़ाइल से डेटा अपलोड करते समय, उस GeoJSON, KML या CSV फ़ाइल का पाथ डालें जिसमें अपलोड किया जाने वाला डेटा मौजूद है.
ज़रूरी शर्तें
डेटासेट बनाते समय:
- डिसप्ले नेम, आपके Google Cloud प्रोजेक्ट में यूनीक होने चाहिए.
- दिखने वाले नाम 64 बाइट से कम होने चाहिए. ऐसा इसलिए, क्योंकि इन वर्णों को UTF-8 में दिखाया जाता है. कुछ भाषाओं में, हर वर्ण को कई बाइट से दिखाया जा सकता है.
- ब्यौरे 1,000 बाइट से कम होने चाहिए.
डेटा अपलोड करते समय:
- CSV, GeoJSON, और KML फ़ाइल टाइप का इस्तेमाल किया जा सकता है.
- ज़्यादा से ज़्यादा 500 एमबी की फ़ाइल अपलोड की जा सकती है.
- एट्रिब्यूट कॉलम के नाम, "?_" स्ट्रिंग से शुरू नहीं हो सकते.
- इसमें 3D ज्यामिति का इस्तेमाल नहीं किया जा सकता. इसमें WKT फ़ॉर्मैट में "Z" सफ़िक्स और GeoJSON फ़ॉर्मैट में ऊंचाई का कोऑर्डिनेट शामिल है.
डेटा तैयार करने के सबसे सही तरीके
अगर आपका सोर्स डेटा जटिल या बड़ा है, जैसे कि घने पॉइंट, लंबी लाइनस्ट्रिंग या पॉलीगॉन (अक्सर 50 एमबी से ज़्यादा साइज़ वाली सोर्स फ़ाइलें इस कैटगरी में आती हैं), तो विज़ुअल मैप में बेहतर परफ़ॉर्मेंस पाने के लिए, डेटा को अपलोड करने से पहले उसे आसान बनाएं.
डेटा तैयार करने के कुछ सबसे सही तरीके यहां दिए गए हैं:
- सुविधा की प्रॉपर्टी कम से कम रखें. अपने मैप को स्टाइल करने के लिए, सिर्फ़ ज़रूरी फ़ीचर प्रॉपर्टी रखें. उदाहरण के लिए, "id" और "category". यूनीक आइडेंटिफ़ायर कुंजी पर डेटा-ड्रिवन स्टाइल का इस्तेमाल करके, क्लाइंट ऐप्लिकेशन में किसी सुविधा से अतिरिक्त प्रॉपर्टी जोड़ी जा सकती हैं. उदाहरण के लिए, डेटा के हिसाब से स्टाइल तय करने की सुविधा का इस्तेमाल करके, रीयल टाइम में अपना डेटा देखना लेख पढ़ें.
- जहां हो सके वहां प्रॉपर्टी ऑब्जेक्ट के लिए, सामान्य डेटा टाइप का इस्तेमाल करें. जैसे, पूर्णांक. इससे टाइल का साइज़ कम करने और मैप की परफ़ॉर्मेंस को बेहतर बनाने में मदद मिलती है.
- फ़ाइल अपलोड करने से पहले, जटिल ज्यामिति को आसान बनाएं. इसके लिए, अपनी पसंद का कोई भी जियोस्पेशल टूल इस्तेमाल किया जा सकता है. जैसे, ओपन सोर्स Mapshaper.org यूटिलिटी. इसके अलावा, BigQuery में ST_Simplify फ़ंक्शन का इस्तेमाल करके भी ऐसा किया जा सकता है.
- फ़ाइल अपलोड करने से पहले, बहुत ज़्यादा पॉइंट वाले क्लस्टर बनाएं. इसके लिए, अपनी पसंद के किसी भी जियोस्पेशल टूल का इस्तेमाल किया जा सकता है. जैसे, ओपन सोर्स turf.js क्लस्टर फ़ंक्शन. इसके अलावा, BigQuery में ST_CLUSTERDBSCAN का इस्तेमाल करके भी ऐसा किया जा सकता है. हालांकि, ऐसा सिर्फ़ पॉइंट ज्योमेट्री के लिए किया जा सकता है.
डेटासेट के सबसे सही तरीकों के बारे में ज़्यादा जानकारी के लिए, डेटासेट और BigQuery की मदद से डेटा विज़ुअलाइज़ करना लेख पढ़ें.
GeoJSON की ज़रूरी शर्तें
iOS के लिए Maps SDK, मौजूदा GeoJSON स्पेसिफ़िकेशन के साथ काम करता है. iOS के लिए Maps SDK, GeoJSON फ़ाइलों के साथ भी काम करता है. इन फ़ाइलों में, यहां दिए गए किसी भी ऑब्जेक्ट टाइप का डेटा हो सकता है:
- ज्यामिति ऑब्जेक्ट. ज्यामिति ऑब्जेक्ट, एक स्पेशल शेप होता है. इसे पॉइंट, लाइन, और पॉलीगॉन के यूनियन के तौर पर दिखाया जाता है. इसमें वैकल्पिक होल भी होते हैं.
- सुविधा ऑब्जेक्ट. किसी सुविधा ऑब्जेक्ट में, ज्यामिति के साथ-साथ नाम/वैल्यू के अतिरिक्त जोड़े भी शामिल होते हैं. इनका मतलब, ऐप्लिकेशन के हिसाब से अलग-अलग होता है.
- सुविधाओं के कलेक्शन. फ़ीचर कलेक्शन, फ़ीचर ऑब्जेक्ट का एक सेट होता है.
Maps SDK for iOS, ऐसी GeoJSON फ़ाइलों के साथ काम नहीं करता है जिनमें WGS84 के अलावा किसी अन्य कोऑर्डिनेट रेफ़रंस सिस्टम (सीआरएस) में डेटा होता है.
GeoJSON के बारे में ज़्यादा जानकारी के लिए, RFC 7946 के मुताबिक देखें.
KML से जुड़ी ज़रूरी शर्तें
iOS के लिए Maps SDK की ये ज़रूरी शर्तें हैं:
- सभी यूआरएल, फ़ाइल के हिसाब से लोकल (या रिलेटिव) होने चाहिए.
- पॉइंट, लाइन, और पॉलीगॉन ज्यामिति के साथ काम करता है.
- सभी डेटा एट्रिब्यूट को स्ट्रिंग माना जाता है.
- फ़ाइल के बाहर तय किए गए आइकॉन या
<styleUrl>
. - नेटवर्क लिंक, जैसे कि
<NetworkLink>
- ग्राउंड ओवरले, जैसे कि
<GroundOverlay>
- 3D ज्यामिति या ऊंचाई से जुड़े कोई भी टैग, जैसे कि
<altitudeMode>
- कैमरे की खास जानकारी, जैसे कि
<LookAt>
- KML फ़ाइल में तय की गई स्टाइल.
CSV फ़ाइल से जुड़ी ज़रूरी शर्तें
CSV फ़ाइलों के लिए, प्राथमिकता के क्रम में कॉलम के ये नाम इस्तेमाल किए जा सकते हैं:
latitude
,longitude
lat
,long
x
,y
wkt
(Well-Known Text)address
,city
,state
,zip
address
- एक ही कॉलम में पते की पूरी जानकारी, जैसे कि
1600 Amphitheatre Parkway Mountain View, CA 94043
उदाहरण के लिए, आपकी फ़ाइल में x
, y
, और wkt
नाम के कॉलम मौजूद हैं.
x
और y
को ज़्यादा प्राथमिकता दी जाती है. यह प्राथमिकता, ऊपर दी गई सूची में कॉलम के नामों के क्रम के हिसाब से तय की जाती है. इसलिए, x
और y
कॉलम में मौजूद वैल्यू का इस्तेमाल किया जाता है और wkt
कॉलम को अनदेखा कर दिया जाता है.
इसके अलावा:
- हर कॉलम का नाम, सिर्फ़ एक कॉलम से जुड़ा होना चाहिए. इसका मतलब है कि आपके पास
xy
नाम का ऐसा कॉलम नहीं हो सकता जिसमें x और y, दोनों कोऑर्डिनेट का डेटा शामिल हो. x और y कोऑर्डिनेट अलग-अलग कॉलम में होने चाहिए. - कॉलम के नाम केस-इनसेंसिटिव होते हैं.
- कॉलम के नामों का क्रम मायने नहीं रखता. उदाहरण के लिए, अगर आपकी CSV फ़ाइल में
lat
औरlong
कॉलम हैं, तो ये किसी भी क्रम में हो सकते हैं.
डेटा अपलोड करने से जुड़ी गड़बड़ियां ठीक करना
किसी डेटासेट में डेटा अपलोड करते समय, आपको इस सेक्शन में बताई गई सामान्य गड़बड़ियों में से कोई एक गड़बड़ी दिख सकती है.
GeoJSON से जुड़ी गड़बड़ियां
GeoJSON में आम तौर पर होने वाली गड़बड़ियां:
type
फ़ील्ड मौजूद नहीं है याtype
स्ट्रिंग नहीं है. अपलोड की गई GeoJSON डेटा फ़ाइल में, हर Feature ऑब्जेक्ट और Geometry ऑब्जेक्ट की परिभाषा के हिस्से के तौर पर,type
नाम का एक स्ट्रिंग फ़ील्ड होना चाहिए.
KML से जुड़ी गड़बड़ियां
KML में आम तौर पर होने वाली गड़बड़ियां:
- डेटा फ़ाइल में, ऊपर दी गई KML की ऐसी कोई सुविधा नहीं होनी चाहिए जिसका इस्तेमाल नहीं किया जा सकता. ऐसा न होने पर, डेटा इंपोर्ट नहीं हो पाएगा.
CSV फ़ाइल में गड़बड़ियां
CSV फ़ाइल में आम तौर पर ये गड़बड़ियां होती हैं:
- कुछ पंक्तियों में, ज्यामिति कॉलम के लिए वैल्यू मौजूद नहीं हैं. CSV फ़ाइल की सभी लाइनों में, ज्यामिति कॉलम के लिए ऐसी वैल्यू होनी चाहिए जो खाली न हों. ज्यामिति कॉलम में ये शामिल हैं:
latitude
,longitude
lat
,long
x
,y
wkt
address
,city
,state
,zip
address
- एक ही कॉलम में पते की पूरी जानकारी, जैसे कि
1600 Amphitheatre Parkway Mountain View, CA 94043
- अगर
x
औरy
आपके ज्यामिति कॉलम हैं, तो पक्का करें कि इकाइयां देशांतर और अक्षांश हों. कुछ सार्वजनिक डेटासेट,x
औरy
हेडर में अलग-अलग कोऑर्डिनेट सिस्टम का इस्तेमाल करते हैं. अगर गलत यूनिट का इस्तेमाल किया जाता है, तो हो सकता है कि डेटासेट को इंपोर्ट कर लिया जाए. हालांकि, रेंडर किए गए डेटा में, डेटासेट पॉइंट ऐसी जगहों पर दिख सकते हैं जहां उन्हें नहीं दिखना चाहिए.
डेटासेट बनाना
डेटासेट बनाने के लिए:
- Google Cloud Console में, डेटासेट पेज पर जाएं.
- डेटासेट बनाएं पर क्लिक करें.
- डेटासेट का नाम डालें. यह नाम, सभी डेटासेट के लिए यूनीक होना चाहिए.
- डेटासेट की जानकारी डालें. हालांकि, ऐसा करना ज़रूरी नहीं है.
- जारी रखें पर क्लिक करें. इसके बाद, डेटा इंपोर्ट करें पेज दिखेगा.
- डेटासेट में डेटा भरने के लिए इस्तेमाल किए गए डेटा के अपलोड सोर्स को चुनें. जैसे, डेस्कटॉप, इसका मतलब है कि आपके सिस्टम पर मौजूद कोई लोकल फ़ाइल या
Google Cloud Storage बकेट.
- डेस्कटॉप के लिए, ब्राउज़ करें पर क्लिक करें. इसके बाद, फ़ाइल चुनने वाले टूल से फ़ाइल चुनें.
- Google Cloud Storage बकेट के लिए, ब्राउज़ करें पर क्लिक करें. इसके बाद, डेटा वाली बकेट और फ़ाइल चुनें.
- फ़ाइल फ़ॉर्मैट चुनें.
- अपनी सेटिंग की समीक्षा करने के लिए, जारी रखें पर क्लिक करें.
बनाएं पर क्लिक करें. आपको डेटासेट पेज दिखेगा. इस पर आपका नया डेटासेट दिखेगा. स्टेटस प्रोसेस किया जा रहा है होना चाहिए.
अगर डेटा अपलोड हो जाता है, तो:
- डेटासेट का स्टेटस COMPLETED पर सेट है.
- डेटासेट, "चालू" वर्शन बन जाता है. साथ ही, आपके ऐप्लिकेशन में इसी वर्शन का इस्तेमाल किया जाता है.
अगर अपलोड करने में कोई गड़बड़ी होती है, तो:
- नए डेटासेट वर्शन का स्टेटस, COMPLETED के अलावा किसी और स्टेटस पर सेट हो.
किसी डेटासेट को देखना या उसमें बदलाव करना
डेटासेट बनाने के बाद, उसे देखा जा सकता है या उसमें बदलाव किया जा सकता है:
- Google Cloud Console में, डेटासेट पेज पर जाएं.
- डेटासेट के नाम पर क्लिक करें. इसके बाद, डेटासेट की जानकारी पेज दिखेगा.
- डेटासेट के बारे में जानकारी देखने के लिए, जानकारी टैब पर क्लिक करें. इस टैब पर, डेटासेट के नाम और जानकारी में भी बदलाव किया जा सकता है.
- मैप पर अपना डेटासेट देखने के लिए, झलक देखें टैब पर क्लिक करें. हालांकि, ऐसा सिर्फ़ उन डेटासेट के लिए किया जा सकता है जिनकी स्थिति COMPLETED या REVERTED है.
- डेटासेट के सभी एट्रिब्यूट देखने के लिए, टेबल डेटा टैब पर क्लिक करें. हालांकि, सिर्फ़ उन डेटासेट के एट्रिब्यूट देखे जा सकते हैं जिनकी स्थिति COMPLETED या REVERTED है. ये ऐसे एट्रिब्यूट हैं जिनका इस्तेमाल, मैप पर डेटासेट को स्टाइल करने के लिए किया जा सकता है.
- डेटा को लोकल फ़ाइल में डाउनलोड करने के लिए, डाउनलोड करें बटन पर क्लिक करें.
- डेटासेट मिटाने के लिए, मिटाएं बटन पर क्लिक करें.
डेटासेट में नया डेटा अपलोड करने के लिए, डेटा फ़ाइल इंपोर्ट करें बटन पर क्लिक करें.
डेटासेट में नया डेटा अपलोड करने पर, डेटासेट का नया वर्शन बन जाता है. अगर नया डेटा अपलोड हो जाता है, तो:
- डेटासेट के नए वर्शन का स्टेटस, COMPLETED पर सेट हो जाता है.
- नया वर्शन, "चालू" वर्शन बन जाता है. साथ ही, आपके ऐप्लिकेशन में इसी वर्शन का इस्तेमाल किया जाता है.
अगर अपलोड करने में कोई गड़बड़ी होती है, तो:
- नए डेटासेट वर्शन का स्टेटस, COMPLETED के अलावा किसी और स्टेटस पर सेट हो. उदाहरण के लिए, अगर कोई पिछला वर्शन "चालू है" के तौर पर सेट है, तो डेटासेट का स्टेटस REVERTED पर सेट हो जाता है.
- डेटासेट का पिछला "एक्टिव" वर्शन, "एक्टिव" वर्शन के तौर पर बना रहता है. साथ ही, आपके ऐप्लिकेशन में इसी वर्शन का इस्तेमाल किया जाता है.