Поддержка собственного режима в редакциях Firestore Standard и Enterprise

На этой странице описаны различные интерфейсы, доступные для доступа к данным в базе данных в нативном режиме.

Интерфейсы управления

В нативном режиме поддерживаются два интерфейса для доступа к данным:

Эксплуатация трубопроводов

Новый интерфейс запросов для Cloud Firestore . Конвейерные операции поддерживают компонуемый синтаксис на основе этапов. Вы создаете операцию, определяя последовательность этапов, которые выполняются в определенном порядке. Это позволяет выполнять сложные операции, такие как фильтрация по результату агрегации, что ранее было невозможно в исходном интерфейсе (основные операции).

Функции управления конвейером доступны только в версии Firestore Enterprise и находятся на стадии предварительного запуска.

Основные операции

Основные операции представляют собой оригинальный интерфейс для Cloud Firestore . В основных операциях используется синтаксис цепочки методов ( .where() , .orderBy() , .get() ) для получения документов или коллекций по ссылкам. Порядок этапов запроса подразумевается, а поддержка агрегации ограничена.

Основные операции доступны как в корпоративной, так и в стандартной версиях, однако параметры индексации по умолчанию существенно различаются в разных версиях. Подробности см. в следующем разделе.

Различия в интерфейсе между версиями.

Благодаря внедрению поддержки нативного режима в корпоративной версии, доступны как операции Firestore Core, так и операции Pipeline. При использовании операций Core в корпоративной версии новое поведение индексов и модель ценообразования снимают многие ограничения стандартной версии.

Особенность Стандартное издание Корпоративная версия
Поддерживаемые операции запросов Ограничено основными операциями Firestore Core. Поддерживает операции Firestore Core и Pipeline, а также операции Firestore, совместимые с MongoDB.
Требования к индексированию Для выполнения всех запросов необходимы индексы. Для выполнения запросов индексы не требуются.
Создание индекса Автоматические индексы создаются для отдельных полей. Вы можете создавать составные индексы вручную. Автоматическое создание индексов не предусмотрено . Индексы необходимо управлять вручную.
Производительность и стоимость запросов Как правило, запросы отличаются высокой производительностью благодаря требованиям к индексам. Оптимизируйте производительность и затраты на запросы, создавая индексы. Вы можете выявить отсутствующие индексы с помощью функций Query Explain и Query Insights.

Запросы без индексов могут стать неэффективными и дорогостоящими по мере роста объема данных, что потребует мониторинга и настройки.

Накладные расходы на индексацию Запись в индексы бесплатна, так как индексы создаются автоматически. При записи индексных записей расходуются единицы записи при записи связанного документа (1 единица записи на 1 КиБ размера индексной записи). Вы экономите на хранении данных, не создавая индексные записи для каждого поля.
Модель выставления счетов (чтение/запись/удаление) Оплата взимается за каждое чтение, запись и удаление документа . Оплата производится за каждое чтение и запись (транш). Чтение оплачивается в единицах чтения (транши по 4 КиБ). Запись и удаление объединяются в единицы записи (транши по 1 КиБ).
Базовая цена (за миллион долларов). Указанные цены действительны для центрального региона США.

Стоимость прочтения: 0,03 доллара за 100 000 документов (или 0,30 доллара за миллион).

Стоимость написания: 0,09 доллара за 100 000 документов (или 0,90 доллара за миллион).

Удаление: 0,01 доллара за 100 000 документов (или 0,10 доллара за миллион).

Стоимость считанных единиц: 0,05 доллара за 1 миллион считанных единиц.

Единицы записи: 0,26 доллара за 1 миллион единиц записи. Цены, как правило, ниже для документов размером менее 4 КиБ по сравнению со стандартной стоимостью чтения.

Обновления в режиме реального времени

Указанные цены действительны для центрального региона США.

Обновления в режиме реального времени включены в стоимость и оплачиваются как чтение по цене 0,03 доллара за 100 000 документов . Для обновлений в реальном времени используется новый отдельный артикул (SKU – Realtime Update Units), оплата производится за каждый транш в 4 КиБ. Стоимость обновлений в реальном времени составляет 0,30 доллара США за миллион единиц чтения .

Следующие шаги