Rodzaje limitów
Platforma Earth Engine ma kilka limitów, które zapewniają sprawiedliwy podział zasobów między użytkowników. W Earth Engine dostępnych jest wiele różnych typów zasobów (obliczenia, pamięć itp.), dlatego istnieje wiele różnych typów limitów.
Główna różnica między różnymi typami limitów polega na tym, czy można je dostosowywać. W przypadku niektórych rodzajów limitów możemy zmieniać limity dla poszczególnych użytkowników lub projektów, a inne rodzaje limitów są ograniczeniami systemowymi, których nie można zmienić.
Dostosowywane limity
W przypadku poszczególnych projektów obowiązują podane niżej limity.
| Typ limitu | Wartość domyślna (w przypadku każdego projektu) |
|---|---|
| Maksymalna liczba równoczesnych żądań (standardowy punkt końcowy) | 40 równoczesnych żądań |
| Maksymalna liczba równoczesnych żądań (punkt końcowy o dużej liczbie żądań) | 40 równoczesnych żądań |
| Maksymalna liczba żądań (na projekt) | 100 żądań na sekundę (6000 żądań na minutę) |
| Maksymalna liczba żądań (na konto) | 100 żądań na sekundę (6000 żądań na minutę) |
| Średnia liczba równoczesnych zadań zbiorczych | 2 zadania (średnio) |
| Maksymalna ilość miejsca na dane | 250 GB |
| Maksymalna liczba komponentów | 10 000 |
| Dzienny czas obliczeniowy Earth Engine (EECU-time) w sekundach | Bez ograniczeń |
Równoczesne żądania interaktywne
Każdy projekt może równolegle wysyłać maksymalnie interaktywnych� Jeśli limit zostanie przekroczony, Earth Engine zwróci błędy „HTTP 429: Too Many Requests”. Zazwyczaj te błędy są obsługiwane przez bibliotekę klienta Earth Engine, która opakowuje żądania w odczekiwanie wykładnicze i ponawia zapytanie, dopóki nie zostanie ono wykonane. Biblioteka klienta Earth Engine ponawia próbę wysłania żądania maksymalnie 5 razy.
Aby uniknąć błędów 429, możesz włączyć buforowanie w aplikacji, np. za pomocą memcache, aby w miarę możliwości unikać zbędnych zapytań. Jeśli używasz starszej wersji biblioteki klienta Earth Engine, która nie ponawia automatycznie zapytań, lub jeśli zapytanie nadal nie zostało ukończone po 5 próbach, może być konieczne wdrożenie wycofywania wykładniczego w przypadku żądań.
Częstotliwość żądań (QPS)
Oprócz limitów jednoczesnych połączeń Earth Engine ogranicza szybkość interaktywnych żądań na poziomie projektu i użytkownika. Te ustawienia można dostosować w konsoli Cloud.
Równoczesne zadania wsadowe
Zadania wsadowe mają ograniczoną równoległość, ponieważ zużywają więcej zasobów niż żądania interaktywne.
W przypadku niekomercyjnego korzystania z Earth Engine maksymalna liczba zadań wsadowych, które możesz uruchamiać jednocześnie, jest określana przez Twój poziom niekomercyjny.
W przypadku komercyjnego korzystania z Earth Engine maksymalna liczba zadań wsadowych, które można uruchomić jednocześnie, jest określana przez plan cenowy, ale można ją dodatkowo zmniejszyć, ustawiając limit współbieżności zadań wsadowych dla poszczególnych projektów. Domyślnie limit współbieżności zadań wsadowych w projekcie jest ustawiony na maksymalną wartość dozwoloną przez pakiet płatności skonfigurowany na koncie rozliczeniowym projektu. Aby wyświetlić lub zaktualizować ten limit w projekcie, zapoznaj się z dokumentacją narzędzia wiersza poleceń.
Limit miejsca na dane dotyczące komponentów
Każdy zasób Earth Engine ma odpowiadający mu rozmiar pamięci danych mierzony w bajtach. Komponenty mogą należeć do projektów w Cloud lub do osób (starsze komponenty), a każdy komponent jest wliczany do limitu Earth Engine właściciela w zakresie ogólnej ilości miejsca na dane i liczby komponentów.
Czas EECU dziennie
Jeśli chcesz kontrolować koszty, możesz ograniczyć ilość czasu EECU, jaką projekt może wykorzystywać w Earth Engine dziennie. Domyślnie ten limit jest nieograniczony. Administratorzy limitów mogą ustawić ten limit w konsoli Google Cloud, filtrując go według earthengine.googleapis.com/daily_eecu_usage_time. Po ustawieniu ten limit gromadzi czas EECU zużyty przez udane żądania Earth Engine wszystkich użytkowników w projekcie. Gdy limit zostanie przekroczony, żądania będą odrzucane do czasu zresetowania limitu następnego dnia lub jego zwiększenia. Więcej informacji o ustawianiu tego limitu znajdziesz w przewodniku po kontroli kosztów.
Stałe limity
Te typy limitów są ustawiane na poziomie platformy, więc nie można ich dostosowywać na poziomie poszczególnych użytkowników ani projektów. Z czasem raczej nie ulegną one znaczącym zmianom.
Czas obliczeń
Różne typy żądań mają różne maksymalne czasy trwania, które są szczegółowo opisane w dokumentacji dotyczącej środowisk przetwarzania.
Pomoc dotyczącą naprawiania błędów przekroczenia limitu czasu znajdziesz w przewodniku debugowania.
Wykorzystanie pamięci na żądanie
Jeśli żądanie zakończy się niepowodzeniem z powodu przekroczenia limitu pamięci użytkownika, oznacza to, że Earth Engine nie był w stanie obliczyć odpowiedzi w ramach dozwolonego rozmiaru pamięci. Platforma obliczeniowa EE ma ograniczoną ilość dostępnej pamięci RAM, a aby zapewnić stabilność systemu, każde żądanie może wykorzystywać tylko określoną ilość pamięci. Maksymalna ilość dostępnej pamięci zależy od typu żądania (np. więcej w przypadku zadania wsadowego niż w przypadku kafelka mapy), ale są to limity systemowe.
Pomoc dotyczącą naprawiania błędów pamięci znajdziesz w przewodniku debugowania.
Agregacje
Podczas przetwarzania żądań Earth Engine wyodrębniamy niektóre rodzaje obliczeń pomocniczych, które są bardzo wymagające pod względem mocy obliczeniowej. Te obliczenia cząstkowe są nazywane „agregacjami” i są specjalnie obsługiwane w systemie EE. Wyniki agregacji są przechowywane w pamięci podręcznej, aby uniknąć ponownego obliczania.
Równoczesne agregacje
Aby uniknąć niekontrolowanego rozprzestrzeniania się obliczeń, ograniczamy liczbę agregacji, które pojedynczy użytkownik może uruchomić jednocześnie. Tego limitu nie można zmienić. Jeśli żądanie zakończy się niepowodzeniem z powodu „Zbyt wielu równoczesnych agregacji”, oznacza to, że w momencie wysłania żądania było uruchomionych zbyt wiele agregacji.
Pomoc dotyczącą naprawiania błędów związanych z jednoczesnym przesyłaniem zbiorczym znajdziesz w tym przewodniku.
Wyniki dużej agregacji
Jeśli żądanie zakończy się niepowodzeniem z komunikatem „Computed value too large” (Obliczona wartość jest zbyt duża), oznacza to, że agregacja zwróciła wynik, który jest zbyt duży, aby zmieścić się w naszej pamięci podręcznej. Limit rozmiaru obliczonych wyników wynosi 100 MiB i jest to limit obowiązujący w całym systemie.
Limity importu tabeli
Limity przesyłania tabel zostały opisane w przewodniku po importowaniu danych z tabeli.
Rozmiar ładunku żądania
Pojedyncze zapytanie do Earth Engine jest ograniczone do 10 MB. Ten limit jest zwykle przekraczany tylko wtedy, gdy w zapytaniu znajduje się duży fragment dodatkowych danych, np. plik kształtu lub struktura GeoJSON, które zostały wstawione do zapytania. Zamiast tego należy je przesłać i przekształcić w zasób FeatureCollection, a następnie odwoływać się do niego za pomocą identyfikatora zasobu.
Długość kolejki zadań
Zadania oczekujące na zaplanowanie (w stanie READY) tworzą „kolejkę zadań”. Kolejka każdego projektu obsługuje maksymalnie 3000 zadań. Oznacza to,że nie można mieć więcej niż 3000 zadań w stanie READY.
Limity funkcji rastrowych BigQuery
W przypadku wywołań Earth Engine z BigQuery, np. podczas korzystania z funkcji SQL ST_REGIONSTATS, obowiązują te limity:
| Typ limitu | Wartość domyślna (w przypadku każdego projektu) |
|---|---|
| Czas wykorzystania przedziałów BigQuery dziennie | 1 260 000 sekund przedziałów (350 godzin przedziałów) |
Czas wykorzystania przedziałów BigQuery dziennie
Limit czasu przedziału BigQuery na dzień to limit niestandardowy, który pozwala ograniczyć ilość czasu przedziału, jaką funkcje rastrowe BigQuery mogą wykorzystywać w Earth Engine w danym dniu w danym projekcie. Limit dzienny obejmuje łączny czas wszystkich zapytań, nawet tych, które się nie powiodły. Limit możesz sprawdzić w Cloud Console w sekcji earthengine.googleapis.com/bigquery_slot_usage_time. Wartość limitu może być zwiększana lub zmniejszana przez administratora limitów. Aby zwiększyć wartość powyżej wartości domyślnej, utwórz prośbę o zwiększenie limitu, która zostanie automatycznie zatwierdzona. Zmiana powinna zacząć obowiązywać w ciągu 10 minut.
Jeśli przekroczysz ten limit, BigQuery zwróci ten komunikat o błędzie:
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=_.
Po przekroczeniu limitu wywołania ST_REGIONSTATS będą kończyć się niepowodzeniem do czasu zresetowania limitu następnego dnia lub zwiększenia go przez administratora.