סוגי המכסות
בפלטפורמת 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 יש נפח אחסון נתונים תואם שנמדד בבייטים. הנכסים יכולים להיות בבעלות של פרויקטים בענן או של אנשים פרטיים (נכסים מדור קודם), וכל נכס נספר במגבלת האחסון הכוללת ובמגבלת מספר הנכסים של הבעלים ב-Earth Engine.
כדי להגיש בקשה להגדלת מכסת האחסון של נכסים לשימוש לא מסחרי או למחקר, ראו שימוש לא מסחרי או למחקר.
זמן EECU ליום
כדי לשלוט בעלויות, אתם יכולים להגביל את כמות זמן ה-EECU שפרויקט יכול לצרוך ב-Earth Engine ביום. כברירת מחדל, המכסה הזו לא מוגבלת. אדמינים של מכסות יכולים להגדיר את המגבלה הזו במסוף Cloud על ידי סינון לפי מדד המכסה earthengine.googleapis.com/daily_eecu_usage_time. אחרי שמגדירים את המכסה הזו, היא צוברת את זמן ה-EECU שנצרך על ידי בקשות מוצלחות של Earth Engine של כל המשתמשים בפרויקט. אם חורגים מהמכסה, הבקשות נכשלות עד שהמכסה מתאפסת ביום הבא או עד שמגדילים את המגבלה. במדריך לבקרת עלויות מוסבר איך מגדירים את המכסה הזו.
מגבלות מכסה קבועות
מגבלות המכסות האלה מוגדרות ברמת הפלטפורמה, ולכן אי אפשר לשנות אותן לכל משתמש או לכל פרויקט. סביר להניח שהם לא ישתנו באופן משמעותי לאורך זמן.
זמן החישוב
לסוגים שונים של בקשות יש משכי זמן מקסימליים שונים, שמפורטים במסמכי התיעוד של סביבות העיבוד.
כדי לקבל עזרה בתיקון שגיאות של זמן קצוב לתפוגה, אפשר לעיין במדריך לניפוי באגים.
הזיכרון שבשימוש לכל בקשה
אם בקשה נכשלת עם השגיאה "User memory limit exceeded", המשמעות היא ש-Earth Engine לא הצליח לחשב את התשובה במסגרת הזיכרון שבשימוש המותר. לפלטפורמת החישוב של EE יש כמות מוגבלת של זיכרון RAM זמין, וכדי להבטיח שהמערכת תישאר יציבה, כל בקשה יכולה להשתמש רק בכמות מסוימת. כמות הזיכרון המקסימלית שזמינה תלויה בסוג הבקשה (למשל, יותר זיכרון למשימת אצווה מאשר למשבצת מפה), אבל אלה מגבלות שחלות על כל המערכת.
לקבלת עזרה בתיקון שגיאות זיכרון, אפשר לעיין במדריך לניפוי באגים.
נתונים מצטברים
במהלך עיבוד הבקשות ב-Earth Engine, אנחנו מפרידים סוגים מסוימים של חישובי משנה שאנחנו יודעים שהם דורשים משאבי מחשוב רבים. חישובי המשנה האלה נקראים "צבירות", והם מטופלים באופן מיוחד במערכת EE. התוצאות של הצבירות נשמרות במטמון כדי למנוע חישוב מחדש.
צבירת נתונים בו-זמנית
כדי למנוע התפצלות חישובית לא מבוקרת, אנחנו מגבילים את מספר הצבירות שמשתמש בודד יכול להריץ בו-זמנית, ואי אפשר לשנות את זה. אם בקשה נכשלת ומוצגת השגיאה "Too many concurrent aggregations", המשמעות היא שהיו יותר מדי צבירות שפעלו בו-זמנית.
כדי לקבל עזרה בתיקון שגיאות בצבירה בו-זמנית, אפשר לעיין במדריך לניפוי באגים.
תוצאות צבירה גדולות
אם בקשה נכשלת עם השגיאה "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 ביום
המכסה היומית של יחידת הקיבולת של BigQuery היא מכסה בהתאמה אישית שמאפשרת להגביל את כמות יחידת הקיבולת שפונקציות הרסטר של BigQuery יכולות לצרוך ב-Earth Engine ביום נתון בפרויקט נתון. המכסה היומית צוברת את הזמן הכולל של כל השאילתות, גם אלה שנכשלות. אפשר לראות את המכסה במסוף Cloud במדד earthengine.googleapis.com/bigquery_slot_usage_time, ואדמין של מכסות יכול להגדיל או להקטין את הערך. כדי להגדיל את הערך מעבר לערך ברירת המחדל, צריך ליצור בקשה להגדלת המכסה, שתאושר באופן אוטומטי. השינוי ייכנס לתוקף תוך 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 נכשלות עד שהמכסה מתאפסת ביום הבא או עד שהאדמין מגדיל את המגבלה.