Cloud Run, обслуживающий список продуктов Firestore (режим Datastore), возвращает все продукты, что приводит к превышению лимитов памяти и всплескам операций чтения Datastore. Что следует сделать, чтобы предотвратить сбои, сократить количество операций чтения и оптимизировать производительность?
Выберите ответ
Нажмите на вариант, чтобы проверить свой ответ.
Правильный ответ: Изменить запрос, возвращающий список продуктов, используя курсоры..
Почему это правильный ответ
Использование курсоров (cursors) является наиболее эффективным способом для постраничного вывода данных в Firestore (Datastore mode). Курсоры позволяют получить следующую страницу результатов, начиная с последнего элемента предыдущей страницы, что значительно сокращает количество операций чтения и потребление памяти, так как не нужно заново сканировать уже прочитанные данные. Изменение запроса с использованием целочисленных смещений (integer offsets) не рекомендуется, так как при больших смещениях база данных все равно сканирует пропущенные элементы, что приводит к неэффективным операциям чтения и потенциальному превышению лимитов. Использование лимитов (limits) само по себе не решает проблему, если не комбинируется с механизмом постраничного вывода, таким как курсоры. Простое ограничение количества возвращаемых элементов не предотвратит проблемы, если запрос все еще пытается обработать большой объем данных. Изменение конфигурации Cloud Run для увеличения лимитов памяти (memory limits) является временным решением, которое маскирует проблему неэффективного запроса, но не устраняет ее коренным образом. Это может привести к увеличению затрат и не решит проблему избыточных операций чтения в Datastore.
Сдайте экзамен — без бесконечного поиска ответов
Получите все проверенные вопросы и объяснения для этого экзамена в одном месте и сэкономьте часы подготовки. 1000+ сертификаций · 20+ языков · начните бесплатно.
Сдайте экзамен быстрее → Карта не требуется