Вот несколько примеров, которые помогут вам понять ценообразование Firestore Enterprise Edition в различных сценариях.
Пример запроса ценообразования
Сценарий: Запрос фильтрует данные по полю username со значением ilovefirebase в коллекции, содержащей 100 документов, каждый из которых имеет размер 2 КБ. Предположим, что существует только один username с именем username и значением ilovefirebase . Тот же запрос выполняется 1 миллион раз.
| Активность | Стандартная версия (запрос с автоматической индексацией) | Корпоративная версия (индексированный запрос) | Корпоративная версия (сканирование неиндексированных коллекций) |
| Статус индексации | Для поиска имени пользователя используется автоматически созданный индекс . | После создания индекса вручную по полю имени пользователя. | Не использует индекс ; сканирует всю коллекцию пользовательских данных размером 200 КБ. |
| Количество единиц чтения на запрос | Начисляются затраты за 1 прочтение . | Затраты начисляются за 2 единицы считывания (1 для сканирования индекса и 1 для чтения документа). | Стоимость составляет 50 единиц чтения (100 документов по 2 КиБ = 200 КиБ общего объема сканирования. 200 КиБ / 4 КиБ за единицу = 50 единиц). |
| Общая стоимость (за 1 миллион запросов) | 0,30 доллара за миллион запросов (1 чтение по 0,30 доллара за миллион прочитанных единиц). | 0,10 доллара за миллион запросов (2 единицы чтения по 0,05 доллара за миллион единиц чтения). | 2,50 доллара за миллион запросов (50 единиц чтения по 0,05 доллара за миллион). |
Сводка разницы в стоимости
- Индексированный запрос: В версии Enterprise тот же запрос стоит 0,10 доллара за миллион долларов при использовании индекса, созданного вручную по полю имени пользователя.
- Запрос на сканирование коллекции без индексов: В версии Enterprise стоимость запроса на сканирование коллекции без индексов составляет 2,50 доллара за миллион запросов , что значительно выше, чем 0,30 доллара, взимаемых за эквивалентный запрос на чтение с автоматическим индексированием в версии Standard. Это показывает, что запросы без индексов могут приводить к низкой производительности и дорогостоящему выполнению.
- Преимущество в стоимости: 0,10 доллара за миллион единиц чтения в три раза дешевле, чем стоимость чтения с индексом в стандартной версии. Это демонстрирует низкую базовую цену единицы чтения в корпоративной версии при оптимизации запросов.
Пример ценообразования в реальном времени
Для получения более подробной информации о ценах см. раздел «Цены в режиме реального времени» .
Сценарий 1: Миллион клиентов запрашивают 10 самых последних записей в коллекции (проиндексированных по временной метке). Размер каждой записи составляет 6 КБ. Две из этих записей впоследствии обновляются, в результате чего клиентам отправляются обновления в режиме реального времени.
| Активность | Стандартное издание | Корпоративная версия | Основные ценовые предложения |
| Модель ценообразования | Первичный запрос и обновления в режиме реального времени оплачиваются за каждый прочитанный документ. | Первоначальный запрос оплачивается с использованием единицы чтения (транш 4 КиБ). Для обновлений в реальном времени используется отдельный SKU для обновлений в реальном времени. | В корпоративной версии используется ценообразование за единицу чтения, что обеспечивает более низкую стоимость первоначального чтения. |
| Первое прочтение (первоначальная синхронизация 10 сообщений, каждое из которых содержит 6 КБ документов) | На каждого клиента приходится 10 операций чтения (размер документа не имеет значения). | На каждого клиента приходится 21 единица считывания. (1 единица чтения на сканирование индекса 10 сообщений) (20 единиц чтения: 2 единицы чтения на документ 6 КиБ * 10 документов) | В корпоративной версии используется больше модулей (21 против 10), но цена за единицу значительно ниже. |
| Стоимость первого прочтения (за 1 миллион) | 10 просмотров * 1 миллион клиентов по цене 0,30 доллара за миллион: 3,00 доллара. | 21 единица чтения * 1 миллион клиентов по 0,05/миллион: 1,05 долл. США. | В корпоративной версии первое ознакомление обойдется в 4 раза дешевле. |
| Обновления в реальном времени (2 обновления для документов размером 6 КиБ) | Произошло 2 прочтения (2 обновленных документа). | Затрачивается 4 единицы обновления в реальном времени (2 единицы обновления в реальном времени на 6 КБ документов * 2 обновления в реальном времени). | В корпоративной версии обновления в режиме реального времени выделены в отдельный SKU. |
| Стоимость в реальном времени (на 1 миллион клиентов) | 2 просмотра * 1 миллион клиентов по цене 0,30 доллара за миллион: 0,60 доллара. | 4 единицы в режиме реального времени * 1 миллион клиентов по цене 0,30 долл./миллион: 1,20 долл. | В версии Enterprise стоимость обновления в режиме реального времени выше для данного конкретного сценария обновления. |
| Общая стоимость | 3,60 долл. (3,00 долл. + 0,60 долл.). | 2,25 доллара (1,05 доллара + 1,20 доллара). | В сценарии с большими документами (6 КБ) и большим объемом данных корпоративная версия обходится дешевле ($2,25 против $3,60) . |
Дополнительные примеры цен на запросы прослушивания в реальном времени для корпоративной версии.
Для наглядности, затраты в следующих сценариях рассчитаны с использованием тарифа us-central1 в размере 0,05 доллара США за миллион единиц чтения и 0,30 доллара США за миллион единиц обновления в реальном времени.
| Сценарий (клиенты, размер документа) | Этап 1: Первоначальный запрос (синхронизация) и его детали. | Этап 1: Первоначальная обработка запросов | Примерная стоимость | Этап 2: Подробности обновлений в режиме реального времени | Этап 2: Потребление обновлений в реальном времени | Примерная стоимость |
| 1 клиент, 2 КБ документов | Запрос выполняет сканирование неиндексированной коллекции из 10 000 последовательных документов размером 2 КиБ каждый. | 5000 единиц чтения | 0,00025 долл. США (расчет произведен исходя из 0,05 долл. США/миллион) | Клиент получает в общей сложности 1000 документов с обновлениями в режиме реального времени, размер каждого документа составляет 2 КиБ. | 1000 блоков обновления в реальном времени | 0,003 долл. США (Рассчитано исходя из 0,30 долл. США/миллион) |
| 1000 клиентов, документы размером 2 КиБ | Каждый из 1000 клиентов выполняет запрос, который сканирует неиндексированную коллекцию из 10 000 последовательных документов размером 2 КиБ каждый. | 5 миллионов единиц чтения | 0,25 доллара (расчет произведен исходя из 0,05 доллара за миллион долларов) | 1000 клиентов получают по 1000 документов в общей сложности, обновляемых в режиме реального времени, при этом размер каждого документа составляет 2 КиБ. | 1 миллион блоков обновления в реальном времени | 0,30 долл. США (расчет произведен исходя из 0,30 долл. США/миллион долларов США) |
| 1000 клиентов, документы объемом 6 КиБ | Каждый из 1000 клиентов выполняет запрос, который сканирует неиндексированную коллекцию из 10 000 последовательных документов размером 6 КиБ каждый. | 15 миллионов единиц чтения | 0,75 доллара (расчет произведен исходя из 0,05 доллара за миллион долларов) | 1000 клиентов получают по 1000 документов в общей сложности, обновляемых в режиме реального времени, размером 6 КиБ каждый. | 2 миллиона блоков обновления в реальном времени | 0,60 долл. США (Рассчитано исходя из 0,30 долл. США/миллион долларов) |