Preços do Firestore no modo Datastore
Neste documento, você encontra detalhes sobre os preços do modo Datastore.
Uso gratuito
O Firestore no modo Datastore oferece uso gratuito, que permitem que você dê os primeiros passos sem nenhum custo. Se você necessitar de mais uso, ative o faturamento no seu projeto.
O uso é contabilizado diariamente e redefinido aproximadamente à meia-noite no Horário do Pacífico.
| Uso gratuito | |
|---|---|
| Leituras de entidades | 50.000 por dia |
| Gravações de entidades | 20.000 por dia |
| Exclusões de entidades | 20.000 por dia |
| Dados armazenados | 1 GiB |
| Operações pequenas | 50.000 por dia |
| Transferência de dados de saída | 10 GiB por mês |
As operações e os recursos a seguir não incluem o uso sem custo financeiro. Ative o faturamento para usar estes recursos:
- Dados da PITR
- Dados em backup
- Restaurar operações
- Operações de clonagem
- TTL
Para mais informações sobre como esses recursos são cobrados, consulte Considerações sobre o tamanho do armazenamento.
Preços por região
Para conferir os preços de leituras, gravações, exclusões e armazenamento para cada local do modo Datastore, consulte os preços do Firestore.
Operações de leitura
É cobrada uma operação de leitura para cada entidade lida e uma operação de leitura para cada lote de até 1.000 entradas de índice lidas.
Entradas de índice
É cobrada uma operação de leitura para cada lote de até 1.000 entradas de índice lidas por uma consulta, exceto em:
As consultas que têm até uma propriedade de intervalo não são cobradas por leituras
de entradas de índice e têm uma cobrança mínima de zero operações de leitura. Use os exemplos a seguir
para saber quando a leitura de entradas de índice é cobrada. Em seguida, use a seção
billing_details do Query Explain para validar sua compreensão.
A consulta a seguir contém uma propriedade de igualdade (age) e uma
propriedade de intervalo (start_date) e não é cobrada por leituras de entradas de índice:
Query<Entity> query =
Query.newEntityQueryBuilder()
.setKind("Employee")
.setFilter(
CompositeFilter.and(
PropertyFilter.eq("age", 35), PropertyFilter.ge("start_date", new Date(2020, 1, 1))))
.build();
A consulta a seguir contém duas propriedades de intervalo (age e start_date) e
é cobrada por leituras de entradas de índice:
Query<Entity> query =
Query.newEntityQueryBuilder()
.setKind("Employee")
.setFilter(
CompositeFilter.and(
PropertyFilter.ge("age", 35), PropertyFilter.ge("start_date", new Date(2020, 1, 1))))
.build();
Uma propriedade que aparece na cláusula "order by" é considerada uma propriedade de intervalo
quando há pelo menos outra propriedade de intervalo.
Portanto, a consulta a seguir contém dois campos de intervalo
(age e start_date) e é cobrada por leituras de entradas de índice:
Query<Entity> query =
Query.newEntityQueryBuilder()
.setKind("Employee")
.setFilter(PropertyFilter.ge("age", 35))
.setOrderBy(OrderBy.asc("start_date")).build()
.build();
Uma propriedade que aparece na cláusula distinct on é considerada uma propriedade de intervalo
quando há pelo menos outra propriedade de intervalo. Portanto, a consulta a seguir contém duas propriedades de intervalo (age e start_date) e é cobrada por leituras de entradas de índice:
Query<Entity> query =
Query.newEntityQueryBuilder()
.setKind("Employee")
.setFilter(PropertyFilter.ge("age", 35))
.setDistinctOn("start_date")
.build();
Consultas de agregação
Para as consultas de agregação count(),
sum() e avg(), cobramos 1 leitura de entidade para cada lote de até
1.000 entradas de índice lidas pela consulta.
Por exemplo, as consultas de agregação com 0 a 1.000 entradas de índice são faturadas como 1 leitura de entidade. Para uma consulta de agregação que lê 1.500 entradas de índice, serão cobradas 2 leituras de entidade.
Para saber mais sobre os índices usados e as entradas de índice lidas, use o Query Explain.
Transformações de propriedade
Cada operação de transformação de propriedade
como increment e appendMissingElements é cobrada por uma leitura
e uma gravação. Uma operação de confirmação com uma inserção, atualização ou upsert e
uma transformação de propriedade na mesma entidade conta como uma leitura e uma gravação.
Operações pequenas
Pequenas operações incluem estes itens:
- Chamadas para alocar IDs.
- Consultas apenas de chaves. Uma consulta apenas de chaves é considerada como a leitura de uma única entidade da própria consulta. Os resultados individuais são considerados pequenas operações.
- Consultas de projeção que não usam a cláusula
distinct on. Esse tipo de consulta é considerado como a leitura de uma única entidade da própria consulta. Os resultados individuais são considerados pequenas operações.
Operações pequenas são gratuitas, mas é necessário ativar o faturamento se você necessitar de mais uso gratuito por dia.
Query Explain e Analyze
O uso do Query Explain and Analyze gera custos.
Quando uma consulta é explicada com a opção padrão, nenhuma operação de leitura de índice ou entidade é realizada. Independentemente da complexidade da consulta, uma operação de leitura é cobrada.
Quando uma consulta é explicada com a opção de análise, operações de índice e leitura são executadas, portanto, a consulta é cobrada normalmente. Não há custo adicional pela atividade de explicação e análise, somente a cobrança normal para a consulta que está sendo executada.
Largura de banda da rede
Você recebe cobranças pela largura de banda da rede usada pelas solicitações do Firestore no modo Datastore, conforme exibido nas seções a seguir. O custo da largura de banda da rede referente a uma solicitação depende do tamanho e do destino da resposta, além de variar de acordo com o local do banco de dados do Datastore.
Preços gerais de rede
Para solicitações originadas no Google Cloud Platform, por exemplo, de um aplicativo em execução no Google Compute Engine, você será cobrado da seguinte maneira:
| Tipo de tráfego | Preço |
|---|---|
| Transferência de dados de entrada | Sem custo financeiro |
| Transferência de dados em uma região | Sem custo financeiro |
| Transferência de dados entre regiões na mesma multirregião | Sem custo financeiro |
| Transferência de dados entre regiões nos EUA (por GiB) | US$ 0,01 (primeiros 10 GiB sem custos por mês.) |
| Transferência de dados entre regiões, não incluindo o tráfego entre as regiões dos EUA | Taxas de transferência de dados de saída da Internet do Google Cloud Platform |
Se você não paga em dólar americano, valem os preços na sua moeda local listados na página SKUs do Cloud Platform.
Taxas de transferência de dados da Internet
Haverá cobrança pela transferência de dados da Internet pelo seguinte:
- SolicitaçõesGoogle Cloud entre regiões, não incluindo o tráfego entre as regiões dos EUA
- Solicitações de fora do Google Cloud
Se você não paga em dólar americano, valem os preços na sua moeda local listados na página SKUs do Cloud Platform.
Operações de importação e exportação
As operações de exportação e importação são cobradas por leituras e gravações de entidades nas taxas mostradas na tabela acima. Se você cancelar uma exportação ou importação, será cobrado pelas operações feitas até o momento em que a solicitação de cancelamento tiver sido propagada no Firestore no modo Datastore.
Como localizar informações sobre uso de cota para seu app
Para verificar o uso do modo Datastore do aplicativo, incluindo o consumo de cota, acesse a página de detalhes de cota do App Engine. Você terá que fazer isso mesmo que seu aplicativo não seja executado no App Engine.
Os recursos do modo Datastore usados pelo aplicativo são listados na página Armazenamento exibida. Uma opção é clicar em Mostrar recursos fora de uso para verificar a lista completa de informações de cota disponíveis.
Consideração sobre o tamanho do armazenamento
Você receberá cobrança pelo montante de dados armazenados no modo Datastore, incluindo a sobrecarga do armazenamento. O montante da sobrecarga inclui metadados, índices integrados, índices compostos e versões de recuperação pontual (PITR, na sigla em inglês). Também é cobrado pelo tamanho do armazenamento de backup e pelas operações de restauração.
Cada entidade armazenada no banco de dados requer os seguintes metadados, que contribuem para o tamanho do armazenamento:
- A chave da entidade, incluindo o tipo, o ID ou o nome da chave, e as chaves dos ancestrais da entidade.
- O nome e o valor de cada propriedade. Como o Firestore no modo Datastore não tem esquema, o nome de cada propriedade precisa ser armazenado com o valor da propriedade de qualquer entidade fornecida.
- Todas as linhas de índices integrados e compostos que se referem a essa entidade. Cada linha contém o tipo de entidade e o número de valores da propriedade dependendo da definição do índice e da chave da entidade.
Para ver como o armazenamento no modo Datastore é calculado, acesse esta página.
Dados da PITR
Se você ativar a PITR, vai ser cobrado pelo armazenamento de dados PITR. A maioria dos clientes vai perceber que o custo total do armazenamento de dados PiTR é semelhante ao custo de armazenamento do banco de dados.
Os custos de armazenamento da PITR são calculados em GB/mês diariamente. O modo Datastore mede o tamanho do banco de dados diariamente. Durante o período de um mês, a média desses pontos de amostra é feita para calcular o tamanho do armazenamento do banco de dados. Esse valor médio é multiplicado pelo preço unitário de PITR (GB/mês).
Por exemplo, se o tamanho médio do seu banco de dados durante um mês for de 1 GiB e a PITR estiver ativada para o mês inteiro, o tamanho dos dados da PITR faturável também será de 1 GiB.
Faturamento mínimo: você pode receber uma cobrança de até 1 dia no custo de armazenamento da PITR mesmo se desativá-la dentro de um dia após a ativação.
Dados de backup e operações de restauração
Se você ativar os backups, será cobrado pelo armazenamento dos backups do banco de dados. O tamanho do armazenamento de um backup é igual ao tamanho do armazenamento do banco de dados quando o backup foi feito.
Os custos de armazenamento para backups são em GiB por mês. Durante o período de um mês, o número de dias em que cada backup é retido, a média ao longo do mês, também é calculado. O custo de cada backup é calculado com base no tamanho do armazenamento do backup multiplicado pela proporção do mês em que o backup é retido e multiplicado pelo preço unitário. Os limites do dia são definidos pelo fuso horário Estados Unidos/Los_Angeles para fins de faturamento.
Quando você realiza uma operação de restauração, o modo Datastore mede o tamanho do backup para a operação de restauração. O tamanho do backup é multiplicado pelo preço unitário das operações de restauração (GiB).
A seguir
- Leia a documentação do Firestore no modo Datastore.
- Primeiros passos com o Firestore no modo Datastore.
- Use a calculadora de preços.
- Saiba mais sobre soluções e casos de uso do Firestore no modo Datastore.