מכסות ב-Earth Engine

סוגי המכסות

בפלטפורמת Earth Engine יש מספר מגבלות על מכסות, כדי להבטיח שהמשאבים יחולקו באופן הוגן בין המשתמשים. מכיוון שיש הרבה סוגים שונים של משאבים שזמינים ב-Earth Engine (חישוב, אחסון וכו'), יש גם הרבה סוגים שונים של מכסות.

ההבדל העיקרי בין סוגי המכסות הוא אם אפשר לשנות אותן. במכסות מסוימות אנחנו יכולים לשנות את המגבלות על בסיס משתמש או פרויקט, אבל במכסות אחרות מדובר במגבלות מערכתיות שאי אפשר לשנות.

מגבלות מכסה שניתנות להתאמה

המגבלות הבאות חלות על כל פרויקט בנפרד.

סוג המכסה ערך ברירת המחדל (לכל פרויקט)
מספר מקסימלי של בקשות בו-זמנית (נקודת קצה רגילה) ‫40 בקשות בו-זמנית
מספר מקסימלי של בקשות בו-זמנית (נקודת קצה עם נפח גבוה) ‫40 בקשות בו-זמנית
הקצב המקסימלי של בקשות (לכל פרויקט) ‫100 בקשות לשנייה (6,000 בקשות לדקה)
קצב בקשות מקסימלי (לכל חשבון) ‫100 בקשות לשנייה (6,000 בקשות לדקה)
מספר ממוצע של משימות אצווה בו-זמנית 2 משימות (בממוצע)
נפח האחסון המקסימלי של נכסים ‫250GB
מספר הנכסים המקסימלי 10,000
זמן מחשוב ב-Earth Engine‏ (EECU-time) ביום בשניות ללא הגבלה

בקשות אינטראקטיביות מקבילות

כל פרויקט יכול לשלוח במקביל בקשות אינטראקטיביות עד למגבלת המכסה. אם חורגים מהמגבלה, Earth Engine יחזיר שגיאות מסוג HTTP 429: Too Many Requests. בדרך כלל, ספריית הלקוח של Earth Engine מטפלת בשגיאות האלה. היא עוטפת את הבקשות בהשהיה מעריכית לפני ניסיון חוזר (exponential backoff) ומנסה לשלוח את השאילתה שוב עד שהיא מצליחה. ספריית הלקוח של Earth Engine תנסה לשלוח את הבקשה מחדש עד חמש פעמים.

כדי להימנע מקבלת שגיאות 429, מומלץ להפעיל שמירת נתונים במטמון באפליקציה, למשל באמצעות memcache, כדי להימנע משאילתות מיותרות כשזה אפשרי. אם משתמשים בגרסה ישנה יותר של ספריית הלקוח של Earth Engine שלא מנסה לבצע אוטומטית ניסיון חוזר של שאילתות, או אם שאילתה עדיין לא הושלמה אחרי חמישה ניסיונות חוזרים, יכול להיות שתצטרכו להטמיע השהיה אקספוננציאלית לפני ניסיון חוזר (exponential backoff) סביב הבקשות.

קצב הבקשות (QPS)

בנוסף למגבלות על פעולות בו-זמניות, ב-Earth Engine יש מגבלות על קצב בקשות אינטראקטיביות ברמת הפרויקט וברמת המשתמש. אפשר לשנות את ההגדרות האלה במסוף Cloud.

משימות בו-זמניות של אצווה

משימות אצווה מוגבלות למקבילויות קטנות, כי הן משתמשות ביותר משאבים מאשר בקשות אינטראקטיביות.

כשמשתמשים ב-Earth Engine למטרות לא מסחריות, המספר המקסימלי של משימות אצווה שאפשר להריץ בו-זמנית נקבע לפי התוכנית הלא מסחרית שלכם.

כשמשתמשים ב-Earth Engine למטרות מסחריות, מספר משימות האצווה המקסימלי שאפשר להריץ בו-זמנית נקבע לפי תוכנית התמחור, אבל אפשר להגביל אותו עוד יותר על ידי הגדרת מגבלת מקבילות של משימות אצווה לכל פרויקט. כברירת מחדל, מגבלת ההפעלה בו-זמנית של משימות באצ' בפרויקט מוגדרת למקסימום המותר לפי תוכנית התשלומים שהוגדרה בחשבון לחיוב של הפרויקט. כדי לראות או לעדכן את המגבלה הזו בפרויקט, אפשר לעיין במסמכי התיעוד של כלי שורת הפקודה.

מכסת האחסון של נכסים

לכל נכס Earth Engine יש גודל אחסון נתונים תואם שנמדד בבייטים. הבעלות על נכסים יכולה להיות של פרויקטים ב-Cloud או של אנשים פרטיים (נכסים מדור קודם), וכל נכס נספר במכסה של הבעלים ב-Earth Engine, במכסה הכוללת של נפח האחסון ובמכסה של מספר הנכסים.

זמן השימוש היומי במכשיר

אם אתם רוצים לשלוט בעלויות, אתם יכולים להגביל את כמות הזמן ב-EECU שפרויקט יכול לצרוך ב-Earth Engine בכל יום. כברירת מחדל, המכסה הזו היא ללא הגבלה. אדמינים של מכסות יכולים להגדיר את המגבלה הזו במסוף Cloud על ידי סינון לפי מדד המכסה earthengine.googleapis.com/daily_eecu_usage_time. אחרי שמגדירים את המכסה הזו, היא צוברת את הזמן שכל המשתמשים בפרויקט צורכים ב-EECU בבקשות מוצלחות ל-Earth Engine. אם חורגים מהמכסה, הבקשות ייכשלו עד שהמכסה תתאפס ביום שלמחרת או עד שהמגבלה תוגדל. פרטים נוספים על הגדרת המכסה הזו זמינים במדריך לאמצעי בקרה על עלויות.

מגבלות קבועות במכסות

מגבלות המכסה האלה מוגדרות ברמת הפלטפורמה, ולכן אי אפשר לשנות אותן על בסיס משתמש או פרויקט. סביר להניח שהם לא ישתנו באופן משמעותי לאורך זמן.

זמן החישוב

לסוגים שונים של בקשות יש משכי זמן מקסימליים שונים, שמפורטים במסמכי התיעוד בנושא סביבות עיבוד.

לקבלת עזרה בתיקון שגיאות שקשורות לפסק זמן, אפשר לעיין במדריך לניפוי באגים.

הזיכרון שבשימוש לכל בקשה

אם בקשה נכשלת עם השגיאה 'חריגה ממגבלת הזיכרון של המשתמש', המשמעות היא ש-Earth Engine לא הצליח לחשב את התשובה במסגרת טביעת הזיכרון המותרת. לפלטפורמת החישוב של EE יש כמות מוגבלת של זיכרון RAM, וכדי להבטיח שהמערכת תישאר יציבה, כל בקשה יכולה להשתמש רק בכמות מסוימת. כמות הזיכרון המקסימלית שזמינה תלויה בסוג הבקשה (למשל, יותר זיכרון למשימת אצווה מאשר למשבצת מפה), אבל אלה מגבלות שחלות על כל המערכת.

לקבלת עזרה בתיקון שגיאות זיכרון, אפשר לעיין במדריך לניפוי באגים.

נתונים מצטברים

במהלך העיבוד של בקשות Earth Engine, אנחנו מפרידים סוגים מסוימים של חישובים משניים שידוע לנו שהם עתירי חישובים. חישובי המשנה האלה נקראים 'צבירות', והמערכת של EE מטפלת בהם באופן מיוחד. התוצאות של הצבירות נשמרות במטמון כדי למנוע חישוב מחדש.

צבירות בו-זמניות

כדי למנוע פיצול לא מבוקר של חישובים, אנחנו מגבילים את מספר הצבירות שמשתמש יכול להריץ בו-זמנית, ואי אפשר לשנות את ההגבלה הזו. אם בקשה נכשלת עם השגיאה 'יותר מדי צבירות בו-זמנית', המשמעות היא שהמבקש הפעיל יותר מדי צבירות בו-זמנית.

לקבלת עזרה בתיקון שגיאות של צבירה מקבילה, אפשר לעיין במדריך לניפוי באגים.

תוצאות צבירה גדולות

אם בקשה נכשלת עם השגיאה Computed value too large (הערך המחושב גדול מדי), המשמעות היא שהצבירה החזירה תוצאה גדולה מדי שלא יכולה להיכנס למטמון שלנו. מגבלת הגודל על תוצאות מחושבות היא 100MiB, וזו מגבלה כלל-מערכתית.

מגבלות על ייבוא טבלאות

הסבר על מגבלות ההעלאה של טבלאות מופיע במדריך לייבוא נתונים של טבלאות.

גודל המטען הייעודי (payload) של הבקשה

כל שאילתה ב-Earth Engine מוגבלת לגודל של 10MB. בדרך כלל חורגים מהמגבלה הזו רק כשחלק גדול של נתונים נוספים נכלל ישירות בשאילתה, כמו קובץ shapefile או מבנה GeoJSON ששולבו בשאילתה. במקום זאת, צריך להעלות את האובייקטים האלה ולהפוך אותם לנכס FeatureCollection, ולהפנות אליהם באמצעות מזהה הנכס.

אורך תור המשימות

משימות שממתינות לתזמון (במצב READY) יוצרות את "תור המשימות". כל תור של פרויקט תומך ב-3,000 משימות לכל היותר. המשמעות היא שלא ניתן להגדיר יותר מ-3,000 משימות במצב READY.

מגבלות המכסה של פונקציות רסטר ב-BigQuery

המכסות הבאות חלות על קריאות ל-Earth Engine מ-BigQuery, למשל כשמשתמשים בפונקציית ה-SQL‏ ST_REGIONSTATS.

סוג המכסה ערך ברירת המחדל (לכל פרויקט)
זמן השימוש ביחידת קיבולת ב-BigQuery ביום ‫1,260,000 שניות של משבצות זמן (350 שעות של משבצות זמן)

זמן השימוש ביחידת קיבולת ב-BigQuery ביום

המכסה של זמן השימוש ביחידות הקיבולת (Slot) ב-BigQuery ליום היא מכסה בהתאמה אישית שמאפשרת להגביל את כמות הזמן שפונקציות רסטר של BigQuery יכולות לצרוך ב-Earth Engine ביום מסוים עבור פרויקט מסוים. המכסה היומית כוללת את הזמן הכולל של כל השאילתות, גם אלה שנכשלו. אפשר לראות את המכסה במדד earthengine.googleapis.com/bigquery_slot_usage_time במסוף Cloud, ואדמין של מכסות יכול להגדיל או להקטין את הערך. כדי להגדיל את הערך מעבר לערך שמוגדר כברירת מחדל, צריך ליצור בקשה להגדלת המכסה, שתאושר באופן אוטומטי. השינוי אמור להיכנס לתוקף תוך 10 דקות.

אם תחרגו מהמכסה הזו, מערכת BigQuery תחזיר את הודעת השגיאה הבאה:

From Earth Engine: Custom quota exceeded: Your usage exceeded the custom quota for'earthengine.googleapis.com/bigquery_slot_usage_time', which is adjustable by your administrator in the Google Cloud console: https://console.cloud.google.com/quotas/?project=_.

אם חורגים מהמכסה, הקריאות ל-ST_REGIONSTATS ייכשלו עד שהמכסה תתאפס ביום שלמחרת או עד שמנהל יגדיל את המגבלה.