এই পৃষ্ঠায় বর্ণনা করা হয়েছে কীভাবে দৈনিক সীমা নির্ধারণ করতে হয় এবং চলমান EECU-সময় নিরীক্ষণ করতে হয়, যা আর্থ ইঞ্জিনে গণনাগত ব্যয় নিয়ন্ত্রণে সহায়তা করে।
দৈনিক EECU-সময় সীমিত করুন
আপনার আর্থ ইঞ্জিন খরচ নিয়ন্ত্রণে সাহায্য করার জন্য, আপনি নিম্নলিখিত ক্লাউড কোটা আপডেট করে আপনার প্রজেক্টকে প্রতিদিন যে পরিমাণ EECU-টাইম ব্যবহারের অনুমতি দেওয়া হবে তার উপর একটি সীমা নির্ধারণ করতে পারেন:
-
Earth Engine compute time (EECU-time) per day in seconds: একটি প্রকল্প-স্তরের কোটা যা একটি প্রকল্পের সকল ব্যবহারকারীর মোট EECU-টাইমকে সীমিত করে।
আপনি যে আর্থ ইঞ্জিন কোটা নির্ধারণ করতে পারেন সে সম্পর্কে আরও তথ্যের জন্য, আর্থ ইঞ্জিন কোটা দেখুন।
দৈনিক সীমা নির্ধারণ করুন
আপনি গুগল ক্লাউড কনসোলের 'Quotas & System Limits' পেজে কোটা দেখতে ও সম্পাদনা করতে পারেন। যখন আপনি কোনো কোটা সমন্বয় করেন, তখন পরিবর্তনটি কয়েক মিনিটের মধ্যে কার্যকর হয়। দৈনিক সীমা নির্ধারণ বা আপডেট করতে, নিম্নলিখিতগুলি করুন:
- আপনার নির্বাচিত প্রকল্পে প্রকল্প কোটা পরিবর্তন করার অনুমতি আপনার আছে কিনা তা যাচাই করুন।
- গুগল ক্লাউড কনসোলের কোটা পৃষ্ঠায় যান।
-
earthengine.googleapis.com/daily_eecu_usage_timeএর জন্য ফিল্টার করতে ফিল্টার সার্চ বক্সে থাকা মেট্রিক ফিল্টারটি ব্যবহার করুন। যদি আপনিEarth Engine compute time (EECU-time) per day in secondsকোটা দেখতে না পান, তবে যাচাই করুন যে আপনি নির্বাচিত প্রজেক্টের জন্য আর্থ ইঞ্জিন এপিআই (API) সক্রিয় করেছেন কিনা। - তিন-বিন্দু মেনু থেকে ‘কোটা সম্পাদনা করুন’ (Edit quota) -এ ক্লিক করুন।
- যদি আনলিমিটেড চেকবক্সটি নির্বাচিত থাকে, তাহলে সেটিকে অনির্বাচিত করুন।
- 'নতুন মান' ফিল্ডে আপনার কাঙ্ক্ষিত সীমাটি EECU-সেকেন্ডে লিখুন। 'অনুরোধ জমা দিন' -এ ক্লিক করুন।
কোটা দেখা ও পরিচালনা করার বিষয়ে আরও তথ্যের জন্য, ‘কোটা দেখুন ও পরিচালনা করুন’ দেখুন।
ফেরত আসা ত্রুটির বার্তা
দৈনিক সীমা নির্ধারণ করার পর, তা অতিক্রম করলে আর্থ ইঞ্জিন নিম্নলিখিত ত্রুটি বার্তাটি দেখায়:
আপনার ব্যবহার 'earthengine.googleapis.com/daily_eecu_usage_time'-এর জন্য নির্ধারিত কোটা অতিক্রম করেছে, যা আপনার প্রশাসক গুগল ক্লাউড কনসোলে (https://console.cloud.google.com/quotas/?project=_) সমন্বয় করতে পারেন।
কোটা অতিক্রম করলে, পরের দিন কোটা পুনরায় সেট না করা পর্যন্ত অথবা কোনো প্রশাসক কর্তৃক সীমা বৃদ্ধি না করা পর্যন্ত আর্থ ইঞ্জিন অনুরোধগুলি ব্যর্থ হবে।
সূক্ষ্ম পর্যবেক্ষণ এবং সতর্কীকরণ
দৈনিক সীমার চেয়েও সূক্ষ্মভাবে খরচ নিয়ন্ত্রণ ও নিরীক্ষণ করার প্রয়োজন হলে, নিম্নলিখিত রেসিপিগুলোর জন্য আরও বেশি সেট-আপের প্রয়োজন হবে, কিন্তু এগুলো workload_tag এবং ব্যাচ টাস্ক পর্যায়ে অ্যালার্টিং ও ক্যান্সেলেশন সক্ষম করে।
এই রেসিপিগুলো চলমান অনুরোধগুলোর জন্য প্রদর্শিত চলমান EECU-টাইম মনিটরিং ব্যবহার করে। ক্লাউড মনিটরিং-এ চলমান EECU-টাইম রিপোর্টিং সম্পর্কে আরও তথ্যের জন্য মনিটরিং ব্যবহার নির্দেশিকা দেখুন।
সতর্কতা কনফিগার করুন
কোনো মেট্রিক একটি নির্দিষ্ট থ্রেশহোল্ডে পৌঁছালে আপনাকে সতর্ক করার জন্য আপনি ক্লাউড মনিটরিং-এ অ্যালার্ট কনফিগার করতে পারেন। ক্লাউড মনিটরিং-এর অ্যালার্টিং সিস্টেমটি খুবই নমনীয়। আমরা এখানে আমাদের পছন্দের কয়েকটি পদ্ধতি সংগ্রহ করেছি, তবে আপনার প্রয়োজন অনুযায়ী কাস্টম কনফিগারেশন তৈরি করতে পারেন।
রেসিপি: workload_tag ব্যবহারের জন্য চ্যাট বিজ্ঞপ্তি
এই উদাহরণটি দেখায় যে, কোনো নির্দিষ্ট workload_tag জন্য Earth Engine-এর কম্পিউট ব্যবহার একটি নির্দিষ্ট সীমা অতিক্রম করলে কীভাবে একটি চ্যাট নোটিফিকেশন (যেমন, একটি Google Chat মেসেজ বা একটি Slack মেসেজ) পাঠানো যায়। এটি সেই ক্ষেত্রে কার্যকর হতে পারে, যেখানে আপনার কিছু এক্সপোর্ট টাস্ক রয়েছে যা আপনার প্রোডাকশন সার্ভিসের জন্য ডেটা তৈরি করে, এবং আপনি চান যে সেগুলি সম্মিলিতভাবে একটি নির্দিষ্ট পরিমাণের চেয়ে বেশি EECU-সময় ব্যবহার করলে আপনাকে জানানো হোক।
- ক্লাউড কনসোলের ক্লাউড মনিটরিং বিভাগের অ্যালার্টিং পৃষ্ঠায় যান।
- নতুন অ্যালার্টিং পলিসি কনফিগার করতে 'Create policy' নির্বাচন করুন।
- মেট্রিকটি নির্বাচন করুন:
- ইন-প্রোগ্রেস EECU-সেকেন্ড বলতে অপেক্ষমান (এখনও সফল হয়নি) গণনার সেকেন্ডের সংখ্যাকে বোঝায়।
- মেট্রিকটি দেখতে আপনাকে "সক্রিয়" ফিল্টারটি অনির্বাচিত করতে হতে পারে।
- একটি ফিল্টার যোগ করুন:
- একটি নির্দিষ্ট ওয়ার্কলোড ট্যাগ ফিল্টার করতে
workload_tag == your_workload_tag_valueব্যবহার করুন। - একটি নির্দিষ্ট ধরনের গণনা ফিল্টার করতে
compute_type = batchঅথবাcompute_type = onlineব্যবহার করুন।
- একটি নির্দিষ্ট ওয়ার্কলোড ট্যাগ ফিল্টার করতে
- একটি উপযুক্ত 'রোলিং উইন্ডো' মান বেছে নিন। যদি নিশ্চিত না হন, তবে
5 minব্যবহার করুন। - 'রোলিং উইন্ডো ফাংশন' মেনু থেকে 'সাম' নির্বাচন করুন।

- অ্যালার্ট ট্রিগারটি নির্বাচন করুন এবং এর একটি নাম দিন।
- নোটিফিকেশন চ্যানেলগুলো নির্বাচন করুন।
- এই পদ্ধতির জন্য, আমরা মোডাল উইন্ডো থেকে "ম্যানেজ নোটিফিকেশন চ্যানেলস" বেছে নেব, তারপর "অ্যাড নিউ"-তে গিয়ে আপনার গুগল চ্যাটের স্পেস আইডি পেস্ট করব। চ্যাট দেখার সময় জিমেইল বা চ্যাট পেজের ইউআরএল-এ এই আইডিটি খুঁজে পাওয়া যাবে।
- গুগল চ্যাট ব্যবহার করলে, আপনাকে
@Google Cloud Monitoringটাইপ করতে হবে এবং আপনার স্পেসে অ্যালার্টিং অ্যাপটি যোগ করার জন্য অ্যাপটি নির্বাচন করতে হবে (যদি আপনার সংস্থা অনুমতি দেয়)।
- প্রাসঙ্গিক নীতি এবং তীব্রতার লেবেলগুলো নির্বাচন করুন।
- একটি সংক্ষিপ্ত ডকুমেন্টেশন কোড লিখুন।
- আপনার নতুন সতর্কীকরণ নীতি প্রকাশ করুন!
একবার সেট করা হয়ে গেলে, আপনার প্রোজেক্টের জন্য নির্ধারিত সীমা অতিক্রম করলেই আপনি আপনার চ্যাট স্পেসে অ্যালার্ট পাবেন।
রেসিপি: মোট চলমান EECU-সময়ের জন্য ইমেল অ্যালার্ট পান
চ্যাট নোটিফিকেশনের জন্য নির্ধারিত পদ্ধতিটি অনুসরণ করুন, তবে দুটি পরিবর্তন করুন:
-
workload_tagফিল্টার যোগ করার ধাপটি এড়িয়ে যান, যাতে আপনি সমস্ত মান দেখতে পারেন। - নোটিফিকেশন চ্যানেল নির্বাচন করার সময়, চ্যাট চ্যানেল কনফিগার করার পরিবর্তে আপনার ইমেল ঠিকানা যোগ করুন।
সতর্কতার বিলম্ব এবং সময়
মনে রাখবেন যে মনিটরিং রিপোর্টগুলো পৌঁছাতে সামান্য বিলম্ব হয়, তাই তাৎক্ষণিক নোটিফিকেশন আশা করা উচিত নয়।
সম্পদ-নির্ভর কাজগুলি বাতিল করুন
একটি সীমা নির্ধারণ করা থাকলে, আর্থ ইঞ্জিন এপিআই (Earth Engine API) ব্যবহার করে পর্যায়ক্রমে অপেক্ষাধীন কাজের তালিকা পরীক্ষা করা এবং EECU-সেকেন্ডের সীমা অতিক্রমকারী যেকোনো চলমান কাজ বাতিলের জন্য অনুরোধ করা সম্ভব।
প্রণালী: নোটবুকে বা স্থানীয় পাইথন শেলে কোডের একটি অংশ চালান।
eecu_seconds_limit = 50 * 60 * 60 # 50 hours
print("Watching for operations to cancel...")
while(True):
for op in ee.data.listOperations():
if op['metadata']['state'] == 'RUNNING':
if op['metadata'].get('batchEecuUsageSeconds', 0) > eecu_seconds_limit:
print(f"Cancelling operation {op['name']}")
ee.data.cancelOperation(op['name'])
time.sleep(10) # 10 seconds