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

Solicite uma cotação personalizada

Com o sistema de pagamento por uso do Google Cloud, você paga apenas pelos serviços que usa. Entre em contato com nossa equipe de vendas e receba uma cotação personalizada para sua organização.
Entre em contato