Earth Engine में Cloud Optimized GeoTIFFs (COGs)

Google Earth Engine की मदद से, अपने Google Cloud Storage (GCS) बकेट में सेव किए गए रास्टर डेटा के साथ काम किया जा सकता है. Cloud Optimized GeoTIFFs (COGs) का इस्तेमाल करके, Earth Engine में सीधे अपना डेटा ऐक्सेस और उसका विश्लेषण किया जा सकता है. इसके लिए, पिक्सल को Earth Engine के ऐसेट स्टोर में शामिल करने की ज़रूरत नहीं होती.

क्लाउड-फ़र्स्ट अप्रोच के कई फ़ायदे हैं. खास तौर पर, बड़े डेटासेट मैनेज करने या Earth Engine को Google Cloud के बड़े वर्कफ़्लो या बाहरी टूल और प्लैटफ़ॉर्म में इंटिग्रेट करने के लिए.

Cloud Storage और COGs का इस्तेमाल क्यों करें?

  • फ़्लेक्सिबिलिटी और इंटरऑपरेबिलिटी: अपना डेटा, Cloud Storage की स्टैंडर्ड बकेट में सेव करें. इससे अन्य टूल और सेवाओं से भी इस डेटा को ऐक्सेस किया जा सकता है. चाहे डेटा सीधे अपलोड किया जाए या Earth Engine से एक्सपोर्ट किया जाए, Cloud Storage, Earth Engine और बाहरी वर्कफ़्लो, दोनों के लिए डेटा का एकमात्र भरोसेमंद सोर्स होता है.
  • डेटा कंट्रोल और इग्रेस: Cloud Storage में डेटा सेव करने से, ऑब्जेक्ट स्टोरेज को मैनेज करने की स्टैंडर्ड सुविधाएं मिलती हैं. इससे, Cloud Storage की सुविधाओं (जैसे, Requester Pays या सार्वजनिक बकेट) का इस्तेमाल करके, अपना डेटा डाउनलोड, माइग्रेट या शेयर किया जा सकता है. साथ ही, Cloud IAM के स्टैंडर्ड तरीके से ऐक्सेस मैनेज किया जा सकता है.
  • फ़्लेक्सिबल स्केलिंग: Earth Engine के स्टोरेज की सीमाओं से बचें. Cloud Storage, पेटाबाइट स्केल तक, सेल्फ़-सर्विस स्टोरेज स्केलिंग की सुविधा देता है. इसमें स्टोरेज की कोई सीमा नहीं होती.
  • डेटा को शामिल करने के लिए इंतज़ार करने की ज़रूरत नहीं: COG को रजिस्टर करने में ज़्यादा समय नहीं लगता. ऐसा इसलिए, क्योंकि इंडेक्सिंग और पुष्टि के लिए, Earth Engine सिर्फ़ फ़ाइल हेडर से मेटाडेटा (जैसे, प्रोजेक्शन और डाइमेंशन) पढ़ता है. असल पिक्सल डेटा, Cloud Storage में सेव रहता है और कंप्यूटेशन के दौरान, मांग पर इसे पढ़ा जाता है. इससे, डेटा को शामिल करने के लिए अलग से कोई टास्क करने की ज़रूरत नहीं होती.

Earth Engine में COG वर्कफ़्लो

Earth Engine, Cloud Storage पर COGs के साथ, दोनों दिशाओं में काम करने वाले वर्कफ़्लो के साथ काम करता है. Earth Engine में, GCS से सीधे COGs को पढ़ा जा सकता है. साथ ही, Earth Engine से कंप्यूटेशन के नतीजों को सीधे GCS में COGs के तौर पर लिखा जा सकता है.

Cloud Storage से COGs पढ़ना

GCS पर होस्ट किए गए COGs को Earth Engine में लाने के लिए, आपके पास दो विकल्प हैं:

  1. सीधे लोड करना (ee.Image.loadGeoTIFF): GCS यूआरआई का इस्तेमाल करके, किसी एक इमेज को सीधे लोड करें. यह सुविधा, तुरंत टेस्ट करने, ऐड हॉक ऐनलिसिस या अस्थायी डेटा के लिए सबसे सही है:

    JavaScript

    var image = ee.Image.loadGeoTIFF('gs://google-sample-bucket/my_image.tif');
    

    Python

    image = ee.Image.loadGeoTIFF('gs://google-sample-bucket/my_image.tif')
    

    पूरी तरह से तैयार उदाहरण के लिए, Cloud GeoTIFFs से इमेज देखें.

  2. रजिस्टर की गई ऐसेट: अपलोड मेनिफ़ेस्ट का इस्तेमाल करके, एक या एक से ज़्यादा COGs को Earth Engine की ऐसेट के तौर पर रजिस्टर करें. इसके लिए, COG रजिस्टर करने की गाइड देखें. प्रोडक्शन वर्कफ़्लो के लिए, यह तरीका अपनाने का सुझाव दिया जाता है. खास तौर पर, इमेज कलेक्शन बनाते समय.

सुविधा सीधे लोड करना (loadGeoTIFF) रजिस्टर की गई ऐसेट (मेनिफ़ेस्ट)
सेटअप कोई नहीं (सिर्फ़ GCS यूआरआई) मेनिफ़ेस्ट (Python क्लाइंट, सीएलआई या REST)
परफ़ॉर्मेंस स्टैंडर्ड (पढ़ने पर हेडर पढ़ता है) ऑप्टिमाइज़ किया गया (बनाते समय इंडेक्स किया गया)
मैनेजमेंट कोई ऐसेट नहीं बनाई गई ऐसेट की संख्या के कोटे में गिना जाता है, स्टोरेज में नहीं.
इस्तेमाल का उदाहरण प्रोटोटाइप करना, ऐड हॉक ऐनलिसिस प्रोडक्शन वर्कफ़्लो के लिए, जिन्हें तेज़ी से पढ़ने की ज़रूरत होती है.

Cloud Storage में COGs लिखना

Earth Engine के कंप्यूटेशन के नतीजों को, Cloud Storage बकेट में COGs के तौर पर सेव करने के लिए, Export.image.toCloudStorage बैच एक्सपोर्ट फ़ंक्शन का इस्तेमाल करें. इसके लिए, इमेज एक्सपोर्ट करना लेख पढ़ें. साथ ही, cloudOptimized पैरामीटर को true में formatOptions पर सेट करें. इससे, Earth Engine को इमेज कंपाइल करने और उसे सीधे आपकी GCS बकेट में, पूरी तरह से कंपैटिबल COG के तौर पर लिखने का निर्देश मिलता है.

Cloud Storage बकेट की काम करने वाली जगहें

Earth Engine को आपकी Cloud Storage बकेट का ऐक्सेस देने के लिए, बकेट इन डेटा सेंटर वाले इलाकों या मल्टी-रीजन में से किसी एक में होनी चाहिए:

  • us मल्टी-रीजन
  • अमेरिका का कोई भी ड्यूअल-रीजन, जिसमें us-central1 शामिल हो
  • us-central1 इलाका

अगर आपकी बकेट, किसी अन्य रीजनल डेटा सेंटर में है, तो Earth Engine, रजिस्ट्रेशन और पढ़ने के अनुरोधों को अस्वीकार कर देगा. Earth Engine, सिर्फ़ Google Cloud Storage बकेट में सेव किए गए COGs को ऐक्सेस करता है. क्लाउड स्टोरेज की सेवा देने वाली बाहरी कंपनियों और सामान्य एचटीटीपी यूआरएल के लिए, यह सुविधा उपलब्ध नहीं है.

लागत से जुड़े पहलू और स्टोरेज क्लास

रजिस्टर की गई COG ऐसेट का विश्लेषण करते समय, Earth Engine से पढ़ने पर, आपके Google Cloud प्रोजेक्ट पर Cloud Storage के रीड ऑपरेशन या डेटा वापस पाने के शुल्क नहीं लगते.

Cloud Storage, आपसे मुख्य रूप से स्टैंडर्ड मासिक ऐट-रेस्ट डेटा स्टोरेज (GB/महीना) और बाहरी क्लाइंट डेटा ट्रांसफ़र या नेटवर्क इग्रेस शुल्क लेता है. यह शुल्क, आपकी बकेट की जगह और क्लाइंट नेटवर्किंग कॉन्फ़िगरेशन के हिसाब से तय होता है.

स्टोरेज क्लास के लिए सुझाव

  • स्टैंडर्ड स्टोरेज (सुझाया गया): स्टैंडर्ड स्टोरेज, Earth Engine के ऐक्टिव वर्कफ़्लो के लिए सबसे सही है. इसमें, स्टोरेज की कम से कम अवधि से जुड़े कोई नियम नहीं हैं. इसलिए, अस्थायी COGs को बिना किसी शुल्क के बदला, अपडेट या मिटाया जा सकता है. इसके अलावा, अगर आप या आपके साथ मिलकर काम करने वाले लोग, Earth Engine के बाहर डेस्कटॉप जीआईएस सॉफ़्टवेयर, GDAL स्क्रिप्ट या मशीन लर्निंग नोटबुक का इस्तेमाल करके बकेट को ऐक्सेस करते हैं, तो स्टैंडर्ड स्टोरेज पर, खुदरा डेटा वापस पाने के लिए कोई शुल्क नहीं लगता.
  • Nearline, Coldline, और Archive स्टोरेज: Cloud Storage की सभी क्लास, स्टैंडर्ड स्टोरेज की तरह ही कम-लेटेंसी ऐक्सेस और थ्रूपुट उपलब्ध कराती हैं. इसलिए, Earth Engine में कोल्ड स्टोरेज टियर का इस्तेमाल करने पर, रीड परफ़ॉर्मेंस से जुड़ा कोई शुल्क नहीं लगता. Earth Engine के कंप्यूटेशन, खुदरा डेटा वापस पाने के शुल्क का आकलन किए बिना भी इन टियर को पढ़ सकते हैं. हालांकि, Cloud Storage के खुदरा नियमों के तहत, स्टोरेज की कम से कम अवधि तय की गई है. Nearline के लिए 30 दिन, Coldline के लिए 90 दिन, और Archive के लिए 365 दिन. तय की गई अवधि से पहले फ़ाइलों में बदलाव करने या उन्हें मिटाने पर, शुल्क लगता है. इसके अलावा, किसी भी बाहरी क्लाइंट टूल से कोल्ड ऑब्जेक्ट को ऐक्सेस करने पर, डेटा वापस पाने के लिए ज़्यादा शुल्क लगता है.

खुदरा कीमत और कम से कम अवधि से जुड़ी नीतियों के बारे में ज़्यादा जानने के लिए, Google Cloud Storage की कीमत से जुड़ी गाइड देखें.

ऊपर से नीचे तक का वर्कफ़्लो

Earth Engine में COGs का इस्तेमाल करने के लिए, आम तौर पर ये चरण शामिल होते हैं:

बाहरी डेटा इंपोर्ट करने के लिए:

  • ऑप्टिमाइज़ करना: बाहरी टूल (जैसे, GDAL, लोकल वर्कस्टेशन स्क्रिप्ट या क्लाउड प्रोसेसिंग पाइपलाइन) का इस्तेमाल करके, रास्टर फ़ाइलों को COG फ़ॉर्मैट में बदलें.
  • अपलोड करना: COGs को, us-central1 या अमेरिका के किसी मल्टी-रीजन में मौजूद, Cloud Storage की काम करने वाली बकेट में अपलोड करें.
  • अनुमतियां: पक्का करें कि आपके और प्रोजेक्ट में साथ मिलकर काम करने वाले लोगों के पास, फ़ाइलों को पढ़ने का Cloud Storage ऐक्सेस हो. इसके लिए, COG की अनुमतियां देखें.
  • रजिस्टर करना: COGs को Earth Engine की ऐसेट के तौर पर रजिस्टर करने के लिए, Python क्लाइंट लाइब्रेरी, earthengine कमांड-लाइन टूल या REST API का इस्तेमाल करें. इसके लिए, COG रजिस्टर करना लेख देखें.

नतीजे एक्सपोर्ट करने के लिए:

  • एक्सपोर्ट करना: Earth Engine से Cloud Storage में बैच एक्सपोर्ट करें. इसके लिए, cloudOptimized को true पर सेट करें. इसके लिए, इमेज एक्सपोर्ट करना लेख देखें.
  • रजिस्टर करना (ज़रूरी नहीं): एक्सपोर्ट किए गए COG को, आगे के विश्लेषण के लिए, Earth Engine में नई ऐसेट के तौर पर रजिस्टर करें. इसके लिए, COG रजिस्टर करना लेख देखें.

क्या आप शुरू करने के लिए तैयार हैं? अपनी पहली ऐसेट रजिस्टर करने के लिए, विस्तृत COG रजिस्टर करने की गाइड देखें.