Preços do Pub/Sub
O custo do Pub/Sub tem três componentes:
- custos de capacidade para publicação e entrega de mensagens;
- Custos de transferência de dados associados à capacidade que cruza um limite de Google Cloud zona ou região
- Custos de armazenamento associados à retenção de mensagens
As cobranças de serviço do Pub/Sub são baseadas no uso (o número de bytes publicados, entregues ou armazenados).
As cobranças de capacidade e armazenamento do Pub/Sub Lite, por outro lado, são baseadas na capacidade reservada.
As cobranças de transferência de dados para ambos os serviços são baseadas no uso, em vez de capacidade reservada.
Pré-requisitos
Este documento exige que você entenda a arquitetura do Pub/Sub ou do Pub/Sub Lite e os termos comuns que fazem parte de cada produto. Para mais informações, consulte Arquitetura do Pub/Sub.
Exemplos de preços
A tabela a seguir compara o custo mensal de sistemas do Pub/Sub e do Pub/Sub Lite para cargas de amostra na América do Norte. Este exemplo considera um período de armazenamento de mensagens de 24 horas, uma utilização de recursos de 50% para o Pub/Sub Lite e um tipo de assinatura pull ou push para o Pub/Sub. Outros tipos de assinaturas podem ter custos adicionais.
| Capacidade de publicação em MiBps | número de assinaturas | Tópico do Lite zonal | Tópico do Lite regional | Pub/Sub |
|---|---|---|---|---|
| 10 | 1 | US$ 169 | US$ 608 | US$ 2.000 |
| 10 | 2 | US$ 214 | US$ 788 | US$ 3.000 |
| 100 | 1 | US$ 1.688 | US$ 6.075 | US$ 19.760 |
| 100 | 2 | US$ 2.138 | US$ 7.875 | US$ 29.640 |
Ao comparar os custos do Pub/Sub e do Pub/Sub Lite, considere as diferenças nos recursos entre os dois produtos. Para mais informações, consulte Como escolher o Pub/Sub ou o Pub/Sub Lite.
Preços do serviço do Pub/Sub
Os detalhes de preços nesta seção se aplicam apenas ao Pub/Sub e não ao Pub/Sub Lite. Esta seção inclui os seguintes tópicos:
- Custos de transferência
- Custos de armazenamento
- Custos de transformações de mensagens únicas
- Custos de transferência de dados
- Faturamento do Pub/Sub entre projetos
- Custos de mensagens filtradas
Custos de capacidade de processamento
A capacidade de processamento é o número total de bytes gravados (capacidade de publicação) em um tópico do Pub/Sub ou lidos (capacidade de assinatura) de uma assinatura de um tópico em um intervalo de tempo.
Todo mês, os primeiros 10 GiB de capacidade de processamento identificados como SKU Message Delivery Basic para uma conta de faturamento são gratuitos. Depois disso, o preço será de US$40 por TiB em todas as Google Cloud regiões. No entanto, se você estiver usando um tópico de importação ou uma assinatura de exportação, leia as próximas seções.
Custos de capacidade de processamento para assinaturas do BigQuery
As assinaturas do BigQuery custam US$50 por TiB em todas as Google Cloud regiões para leitura (taxa de transferência de assinatura) de uma assinatura e gravação no BigQuery. Não há cobranças adicionais de ingestão de dados do BigQuery. No entanto, outros tipos de cobranças do BigQuery, como armazenamento e extração de dados, se aplicam. Para mais informações, consulte Preços do BigQuery. Os primeiros 10 GiB de capacidade de processamento de assinatura do BigQuery não são gratuitos.
Custos de capacidade de processamento para assinaturas do Cloud Storage
As assinaturas do Cloud Storage custam US$50 por TiB em todas as Google Cloud regiões para leitura (taxa de transferência de assinatura) de uma assinatura e gravação no Cloud Storage. Quando uma assinatura do Cloud Storage grava arquivos em um bucket, outros tipos de cobranças adicionais podem ser aplicados. Isso inclui cobranças como armazenamento, recuperação e replicação. Para mais informações, consulte Preços do Cloud Storage. Os primeiros 10 GiB de capacidade de transferência da assinatura do Cloud Storage não são gratuitos.
Custos de capacidade de processamento para tópicos de importação
A importação de tópicos (para o Kinesis Data Streams) custa US$50 por TiB em todas as Google Cloud regiões para ingerir dados no Pub/Sub (taxa de transferência de publicação).
A importação de tópicos (para Cloud Storage, Azure Event Hubs, AWS MSK ou Confluent Cloud) custa US$80 por TiB em todas as Google Cloud regiões para ingerir dados no Pub/Sub (taxa de transferência de publicação).
Quando um tópico de importação ingere dados em um tópico do Pub/Sub, outros tipos de cobranças adicionais específicas da fonte podem ser aplicados. Isso inclui cobranças como saída da AWS para a origem do Kinesis Data Streams e cobranças de operação do Cloud Storage para a origem do Cloud Storage. Os primeiros 10 GiB de capacidade de processamento de tópicos de importação não são gratuitos.
Cálculo do volume de mensagens
O volume de dados de uma mensagem é a soma dos tamanhos dos seguintes atributos da mensagem:
- O número de bytes na cadeia do corpo da mensagem codificada
- Para cada atributo, o tamanho da chave e seu valor
- 20 bytes para o carimbo de data/hora
- O tamanho da string
message_id - O tamanho dos campos opcionais adicionais, como os associados ao acesso antecipado e outras APIs de acesso restrito.
Um mínimo de 1 KB é avaliado para cada solicitação, independentemente dos tamanhos das mensagens na solicitação. Portanto, para mensagens menores que 1 KB, é mais barato agrupar várias mensagens em uma única solicitação.
Custos de armazenamento
Os custos de armazenamento de US $0,27 por GiB por mês são cobrados para o seguinte:
- Um tópico está configurado para reter mensagens. Nesse caso, as tarifas de armazenamento de mensagens são cobradas pelo armazenamento de todas as mensagens publicadas no tópico até a duração de retenção de mensagens configurada.
- Uma assinatura é configurada para reter mensagens confirmadas. Nesse caso, as tarifas de armazenamento são cobradas pelas mensagens confirmadas retidas;
- Quando é criado um snapshot de uma assinatura. Nesse caso, as tarifas de armazenamento de mensagens são cobradas pelo armazenamento das mensagens retidas pelo snapshot. Além disso, se a assinatura tiver um backlog de mensagens não confirmadas quando o snapshot for criado, será cobrada uma tarifa única equivalente ao armazenamento desse backlog por sete dias.
Uma assinatura é configurada com uma duração de retenção de mensagens de mais de um dia e tem um backlog com mais de um dia. Nesse caso, as tarifas de armazenamento são cobradas pelas mensagens não confirmadas com mais de 1 dia. Não há cobrança adicional para mensagens não confirmadas que já são retidas pelo tópico da assinatura (se o tópico da assinatura estiver configurado para reter mensagens).
Considere um tópico sem a retenção de mensagens ativada e uma assinatura anexada com a duração da retenção de mensagens definida como o padrão de 7 dias. Se os assinantes conseguirem processar as mensagens em até um dia após a publicação, os proprietários da assinatura não pagam taxas de armazenamento por mensagens não confirmadas. No entanto, são cobradas taxas de armazenamento para mensagens não confirmadas retidas por mais de um dia da publicação se os assinantes não conseguirem processar as mensagens nas primeiras 24 horas.
Considere um tópico com duração de retenção de mensagens definida como 4 dias e uma assinatura anexada com duração de retenção de mensagens definida como o padrão de 7 dias. Os proprietários de assinaturas não pagam taxas de armazenamento por mensagens não confirmadas retidas por menos de 4 dias da publicação, porque essas mensagens já são retidas pelo tópico. Se os assinantes não conseguirem processar as mensagens após 4 dias da publicação, os proprietários da assinatura serão cobrados pelos 3 dias adicionais.
Manter mensagens confirmadas em assinaturas individuais oferece a maior flexibilidade para os proprietários de assinaturas, mas geralmente é o mecanismo de armazenamento mais caro. O mecanismo de armazenamento mais barato é a retenção de mensagens de tópico, porque as mensagens retidas para um tópico podem ser usadas em todas as assinaturas anexadas sem taxas adicionais por assinatura. O Pub/Sub não cobra dos proprietários de assinaturas pelas mensagens não confirmadas retidas se essas mensagens já forem retidas pelo tópico. Os snapshots também podem ser uma opção econômica porque um único snapshot pode ser usado em várias assinaturas.
Observe que, se as configurações de retenção de mensagens do tópico forem alteradas, as cobranças de mensagens não confirmadas também poderão mudar. Por exemplo, os proprietários de assinaturas podem começar a incorrer em cobranças de armazenamento em mensagens não confirmadas se o proprietário do tópico desativar a retenção de mensagens.
Custos de transformação de mensagens únicas
Os custos de SMT de UDFs representam a quantidade total de dados processados usando uma SMT de tópico do Pub/Sub ou uma SMT de assinatura do Pub/Sub. As cobranças de processamento de dados são baseadas no maior tamanho de mensagem entre entrada e saída. Por exemplo, se uma SMT de UDF transforma uma mensagem de 5 MB em uma mensagem de 8 MB, os custos de processamento de dados serão calculados com base em 8 MB.
O preço é de US $40 por TiB em todas as regiões do Google Cloud.
Custos de transferência de dados
As taxas de transferência de dados pela Internet e entrega de mensagens entre Google Cloud regiões são consistentes com as taxas de rede VPC, com as seguintes exceções:
Não há taxas de transferência de dados de zona para o uso do Pub/Sub.
A saída para produtos do Google não está isenta de taxas de transferência de dados.
Não há cobrança pela transferência de dados para o Pub/Sub. Por exemplo, se o editor estiver em outra região ou zona, você precisa pagar taxas de transferência de dados pelo serviço de origem, mas não é necessário pagar taxas de transferência de dados de entrada. Da mesma forma, se o editor estiver publicando no Amazon Web Service (AWS) ou em um data center particular, você não precisará pagar taxas de transferência de dados para o Pub/Sub.
Se você usar assinaturas de exportação para gravar dados em destinos como tabelas multirregionais do BigQuery ou buckets birregionais ou multirregionais do Cloud Storage, os custos de transferência de dados serão aplicados apenas nas seguintes situações:
Publicação fora das regiões de um recurso de destino: se os editores enviarem dados para uma região fora das regiões cobertas pelo recurso multirregional ou birregional, os custos de transferência de dados serão aplicados a todos os dados.
Roteamento otimizado: se os editores enviarem dados para uma região dentro das regiões do recurso de destino, os custos de transferência de dados serão aplicados apenas aos dados que o Pub/Sub roteia para uma região diferente para entrega otimizada. Esse roteamento otimizado só ocorre em circunstâncias excepcionais.
Você será cobrado pela transferência de dados sempre que uma mensagem ultrapassar um limite de região. Se você tiver vários assinantes em uma região diferente daquela em que as mensagens são armazenadas, as taxas de transferência de dados serão cobradas de maneira independente para a entrega para cada assinante.
Custos de transferência de dados devido à política de armazenamento de mensagens
Se uma política de armazenamento de mensagens forçar os dados a sair de uma Google Cloud região, podem ocorrer taxas adicionais de transferência de dados entre regiões. Por exemplo, considere uma mensagem com os seguintes eventos:
- Publicada na região A
- Roteada para a região B para armazenamento
- Entregue a um cliente assinante na região C
Nesse caso, o cenário de faturamento é explicado da seguinte forma:
- O projeto que contém o tópico é faturado pela transferência de dados da região A para a região B.
- O projeto com a assinatura é faturado pela transferência de dados da região B para a região C.
O projeto que contém o tópico é cobrado uma taxa de transferência de dados apenas se a mensagem publicada estiver armazenada em uma região diferente da que a mensagem foi publicada (ou seja, B é, na verdade, uma região diferente de A). Uma taxa de transferência de dados será cobrada do projeto que contém a assinatura apenas se a mensagem publicada estiver armazenada em uma região diferente da do cliente de assinante (C é diferente de B).
Custos de mensagens filtradas
O Pub/Sub reconhece automaticamente as mensagens que não correspondem a um filtro, mas você ainda incorre em taxas de capacidade para essas mensagens. Não há taxas de transferência de dados para mensagens filtradas.
O mínimo de 1.000 bytes não se aplica às mensagens que o serviço Pub/Sub reconhece automaticamente. As taxas de entrega de mensagens são baseadas no número de bytes nessas mensagens, independentemente do tamanho delas.
Faturamento do Pub/Sub entre projetos
Se você usa Pub/Sub em projetos, as tarifas de Pub/Sub serão cobradas do projeto que contém o recurso solicitado:
- O projeto faturado para publicação é o que contém o tópico.
- O projeto faturado para a assinatura é o que contém a assinatura.
Por exemplo, se a publicação faz parte do projeto A, o projeto A receberá as cobranças pelos dados extraídos da assinatura, mesmo se ela estiver anexada a um tópico no projeto B.
Se a conta de serviço autorizada no projeto A consumir mensagens de uma assinatura no projeto B, o projeto B receberá as cobranças pelos dados extraídos da assinatura.
Preços do serviço do Pub/Sub Lite
Os detalhes de preços a seguir se aplicam apenas ao Pub/Sub Lite, não ao Pub/Sub. A menos que especificado de outra forma, os detalhes se aplicam a tópicos Lite zonais e regionais. As seções a seguir estão incluídas:
Custos de capacidade de processamento
A capacidade de processamento é o número total de bytes gravados (capacidade de publicação) em um tópico do Pub/Sub Lite ou lidos (capacidade de assinatura) de uma assinatura de um tópico durante um intervalo de tempo.
As taxas de capacidade de processamento do Pub/Sub Lite são baseadas na capacidade de processamento provisionada ou reservada, em vez da capacidade de processamento real (MiBps) ou do número total de bytes em um período de faturamento (MiB por mês). A capacidade de processamento é provisionada e precificada em unidades de capacidade. É possível provisionar capacidade de processamento para um ou mais tópicos na mesma região usando uma reserva do Lite.
A tabela a seguir mostra os custos de capacidade e armazenamento de um sistema Pub/Sub Lite.
Capacidade de processamento com uma reserva do Lite
As reservas do Lite são uma maneira de reservar e compartilhar a capacidade entre um ou vários tópicos em uma região. As reservas do Lite são necessárias para tópicos regionais do Pub/Sub Lite.
A capacidade de reservas do Lite é medida em unidades de capacidade. Você pode provisionar apenas um número inteiro de unidades de capacidade para uma reserva. A capacidade de diferentes operações exige um número diferente de unidades de capacidade, conforme descrito na tabela a seguir:
| Unidades de capacidade necessárias | Tópico do Lite zonal | Tópico do Lite regional |
|---|---|---|
| 1 MiBps de capacidade de publicação | 1 unidade de capacidade | 4 unidades de capacidade |
| 1 MiBps de capacidade de assinatura | 0,5 unidade de capacidade | 2 unidades de capacidade |
O número de partições em todos os tópicos do Lite em uma reserva não pode ser maior que o número de unidades de capacidade reservadas.
Calcular o custo da capacidade de transferência de um único tópico com reservas
A seção a seguir ajuda a calcular o custo da capacidade de processamento de um único tópico Lite zonal que usa reservas:
- Tipo de tópico = Tópico do Lite zonal
- Número de tópicos = 1
- Número de partições = 5
- Capacidade máxima de publicação = 5 MiBps
- Unidades de capacidade necessárias para a capacidade de publicação = 5
- Capacidade máxima de assinaturas = 10 MiBps
- Unidades de capacidade necessárias para a capacidade de assinatura = 5
- Total de unidades de capacidade necessárias = 5 + 5 = 10
- Custo de 10 unidades de capacidade na América do Norte por mês = US $45
Para a mesma capacidade com um tópico regional do Lite com 5 partições, você precisa de uma reserva com 40 unidades de capacidade, 20 para capacidade de publicação e 20 para capacidade de assinatura.
É possível alterar o número de unidades de capacidade em uma reserva a qualquer momento. No entanto, você é cobrado pela capacidade máxima provisionada nas últimas 24 horas. Por exemplo, se você mudar a capacidade de uma reserva de 40 para 10 unidades de capacidade às 10h de segunda-feira, será cobrado por 40 unidades de capacidade por hora até as 10h de terça-feira e por 10 unidades de capacidade por hora depois disso.
A capacidade de uma reserva pode ser usada para a capacidade de processamento de publicação e assinatura com qualquer tópico na mesma região da reserva. Para saber mais sobre reservas, consulte Criar e gerenciar reservas do Lite.
Capacidade de processamento sem uma reserva do Lite
Esta seção se aplica apenas a tópicos Lite zonais.
Você pode optar por não usar reservas e reservar a capacidade de publicação e assinatura de um único tópico. Nesse caso, você será cobrado pela capacidade atualmente reservada, em vez do máximo por uma janela de 24 horas em execução.
A capacidade configurada sem reservas precisa estar entre os seguintes limites:
- 4 e 16 MiBps (equivalentes a 4 e 16 unidades de capacidade) para publicação em cada partição.
- 4 e 32 MiBps (equivalentes a 2 e 16 unidades de capacidade) para assinatura em cada partição.
Calcular o custo da capacidade de transferência de um único tópico sem reservas
A seção a seguir ajuda você a calcular o custo da capacidade de processamento para um único tópico Lite zonal que não usa reservas:
- Tipo de tópico = Tópico do Lite zonal
- Número de tópicos = 1
- Número de partições = 4
- Capacidade máxima de publicação = 16 MiBps
- Unidades de capacidade necessárias para a capacidade de publicação = 16
- Capacidade máxima de assinaturas = 16 MiBps
- Unidades de capacidade necessárias para a capacidade de processamento de assinatura = 8
- Total de unidades de capacidade necessárias = 16 + 8 = 24
- Custo de 24 unidades de capacidade na América do Norte por mês = US $108
Custos de armazenamento
Assim como no caso do throughput do Lite, você paga pela capacidade de armazenamento de um tópico. O Pub/Sub Lite cobra pela quantidade máxima de armazenamento provisionada em um mês. Cada partição precisa ter pelo menos 30 GiB de capacidade de armazenamento.
Um tópico Lite regional armazena dados em duas zonas de uma região, enquanto um tópico Lite zonal armazena dados apenas em uma zona de uma região. Os tópicos do Lite regionais usam dois bytes de armazenamento para cada byte de mensagens publicadas. Portanto, o custo de armazenamento por byte publicado em um tópico regional do Lite é o dobro do custo de um tópico zonal.
Para estimar a capacidade de armazenamento de um sistema do Pub/Sub Lite, consulte a lista a seguir:
Determine o período de tempo necessário para armazenar mensagens.
Para estimar o armazenamento total necessário, multiplique a taxa de transferência média esperada para cada partição pelo tempo necessário para armazenar as mensagens. Por exemplo, para publicar 40 MiB de mensagens por segundo em 10 partições em um tópico Lite zonal e reter mensagens por um dia, provisione 3.375 GiB de armazenamento (equivalente a 40 MiBps * 3.600 segundos por hora * 24 horas por dia * 1 GiB/1.024 MiB). Os custos de armazenamento são de US $135 na América do Norte (equivalente a 3.375 GiB * 24 horas por dia * 30 dias por mês * US$ 0,04 / GiB-mês-zona). Para um tópico do Lite regional, como os dados são armazenados em duas zonas, o custo de armazenamento é dobrado para US $270.
Considere a distribuição desigual de chaves.
Todas as partições recebem a mesma capacidade de armazenamento. Se você espera que algumas partições tenham um volume maior do que outras, provisione todas as partições para terem o armazenamento necessário para a maior partição.
Cálculo do volume de mensagens
Ao calcular o tamanho das mensagens para capacidade e armazenamento, cada mensagem usa um mínimo de 256 bytes. Se a mensagem for maior que 256 bytes, o tamanho será a soma dos seguintes atributos de mensagem:
- O número de bytes na cadeia do corpo da mensagem codificada
- O número de bytes na chave e no valor de cada atributo
- O número de bytes na chave do pedido
- 12 bytes para o carimbo de data/hora do evento
Custos de transferência de dados
As taxas de transferência de dados do Pub/Sub Lite só se aplicam se os assinantes estiverem em uma zona ou região diferente do local do tópico. As taxas de saída de dados da Internet e entrega de mensagens entre as Google Cloud regiões são consistentes com as taxas de rede VPC, com as seguintes exceções:
Para tópicos Lite regionais com assinantes na mesma região que o tópico, não há taxas de transferência de dados de zona.
A transferência de dados para produtos do Google não está isenta de taxas.
Pagar em uma moeda que não seja o dólar americano
Se você não paga em dólar americano, valem os preços na sua moeda local listados nas SKUsGoogle Cloud . A taxa listada é por TiB (2^40 bytes, ou aproximadamente 1,1 trilhão de bytes).
A seguir
Confira as cotas e limites do Pub/Sub ou as cotas e limites do Pub/Sub Lite.
Calcule seus custos do Pub/Sub usando a calculadora de preços.
Consulte os grupos de SKUs do Pub/Sub.