Обзор основных операций Firestore

Основные операции Firestore в версии Standard предоставляют широкий набор возможностей для работы с базой данных документов, включая гибкие SDK для большого количества языков программирования, поддержку работы в реальном времени и офлайн, высокую доступность в конфигурациях с одним и несколькими регионами, а также удобную бессерверную модель работы с бесшовным автомасштабированием.

Основные функции

Версия Standard – это Cloud Firestore, оптимизированная для быстрой разработки приложений с использованием основных операций.

  • Модель данных. В Cloud Cloud Firestore используется гибкая иерархическая структура данных NoSQL, в которой данные хранятся в документах, организованных в коллекции и подколлекции.
  • В реальном времени и офлайн. Эти операции включают встроенную поддержку запросов на прослушивание в реальном времени, которые мгновенно обновляют клиентские приложения при изменении данных, а также надежное автономное хранение для мобильных и веб-клиентов.
  • Запросы. Основные операции поддерживают выразительные и эффективные запросы, позволяющие использовать цепочки фильтров и сортировку. Ключевой характеристикой является то, что производительность запроса пропорциональна размеру набора результатов, а не общему размеру набора данных.

Индексация

В версии Standard индексирование строго контролируется с помощью основных операций.

  • Обязательное индексирование. Все запросы должны быть подкреплены индексом. Если операция Core попытается выполнить запрос без соответствующего индекса, она завершится ошибкой, а не сканированием коллекции.
  • Автоматические индексы. Чтобы упростить разработку, Cloud Firestore автоматически создает индексы для всех полей в документе.
  • Составные индексы, создаваемые вручную. Для сложных операций Core, включающих несколько полей, разработчики должны вручную создавать составные индексы. Примером может служить запрос, фильтрующий по одному полю и сортирующий по другому. Клиентский SDK упрощает этот процесс, предоставляя ссылку на ошибку, которая направляет разработчика в консоль Firebase для создания конкретного отсутствующего индекса.

Оплата и лимиты

Модель оплаты для основных операций в версии Standard основана на количестве обработанных документов или индексов, а не на размере обработанных данных (за исключением хранилища). Цены ниже указаны в валюте "us-central1".

  • Плата за документы. Вы платите за количество прочитанных, записанных и удаленных документов.

    • Чтение: 0,03 доллара США за 100 000 операций чтения или 0,30 доллара США за миллион операций чтения, взимается за документ.
    • Запись: 0,09 доллара США за 100 000 записей или 0,90 доллара США за миллион записей (плата взимается за документ).
    • Удаление: 0,01 доллара США за 100 000 удалений или 0,10 доллара США за миллион удалений.
  • Стоимость записи индекса. В отличие от версии Enterprise, за запись записей индекса не взимается отдельная плата. Обновления индекса включены в стоимость записи документа. Однако вы платите за хранение этих индексов.

  • Запросы на прослушивание в реальном времени. Обновления в реальном времени оплачиваются как стандартные операции чтения документов. Плата за одно чтение взимается каждый раз, когда документ добавляется или обновляется в наборе результатов прослушивателя.

  • Чтение записей индекса. Хотя большинство основных операций оплачивается по количеству документов, некоторые сложные операции, такие как агрегированные запросы (count, sum, avg) или векторный поиск, оплачиваются по количеству прочитанных записей индекса.

  • Бесплатная квота. В стандартную версию входит бесплатный пакет, который включает 50 000 операций чтения, 20 000 операций записи и 20 000 операций удаления в день.