Precio

Los precios de Cloud Pub/Sub se basan en los siguientes factores:

  • Ingestión y entrega de mensajes
  • Almacenamiento de mensajes relacionados con la función de búsqueda (seek): capturas y mensajes confirmados retenidos.

Ingestión y entrega de mensajes

Plan de precios hasta el 21 de junio del 2019

El volumen de datos se calcula a partir de los datos de mensajes y atributos de las operaciones pull, push y publish. Los precios de la ingestión y entrega de mensajes se basan en el volumen de datos que se transmiten durante un mes natural:

Volumen de datos mensual Precio por TiB
Primeros 10 GB Gratis
Siguientes 50 TiB 60 USD
Siguientes 100 TiB 50 USD
Más de 150 TiB 40 USD
Si pagas en una moneda que no sea el dólar estadounidense, se aplicarán los precios que figuran para tu divisa en los SKU de Cloud Platform. Los precios se detallan por TiB (240 bytes, aproximadamente 1070 millones de bytes).

Ejemplo de ingestión y entrega de mensajes

Para hacerte una idea más clara de los costes generales que podrían conllevar tus operaciones, imagina que tienes una aplicación que publica mensajes de 1024 kB para un tema con dos suscripciones, a una velocidad de 1 MiB por segundo. Si los suscriptores mantienen un ritmo constante, Cloud Pub/Sub ingerirá mensajes a 1 MiB por segundo y los entregará a 2 MiB por segundo, lo que se traduce en una velocidad de transmisión de datos total de 3 MiB por segundo. En el transcurso de un mes de 30 días, este ejemplo daría lugar al siguiente volumen: 3 MiB/second x 3600 seconds/hour x 24 hours/day x 30 days/month x 1 month/(2^20 MiB/TiB) = 7.416 TiB. Una vez que se sobrepasara el nivel gratuito (10 GB), el volumen de datos restantes sería de 7,406 TiB. Puesto que el precio por TiB son 60 USD, el cargo final serían 444,36 USD.

Volumen mínimo facturable

El volumen mínimo de datos por solicitud (no por mensaje) que se puede facturar es 1 kB. Por ejemplo: el volumen de datos real de 100 solicitudes de publicación, si cada una contiene un mensaje de 500 bytes, es 50 kB. No obstante, su volumen facturable sería el siguiente: 1 KB/request x 100 requests = 100 KB. Sin embargo, si los 100 mensajes se publican en una sola solicitud de publicación, el volumen de datos facturable será el mismo que el real (50 kB).

Facturación multiproyecto

Si usas Cloud Pub/Sub en varios proyectos, las tarifas del servicio se facturan para el proyecto que contiene el recurso solicitado (como una suscripción). Por ejemplo, una cuenta de servicio del proyecto A podría tener acceso de suscriptor a una suscripción del proyecto B (que corresponde a la cuenta de facturación B). Los datos que la cuenta de servicio A extraiga de la suscripción se facturarán a la cuenta de facturación B. Si, por el contrario, la suscripción se encuentra en el proyecto A (aunque esté vinculada a un tema del proyecto B), los datos extraídos de la suscripción se facturarán a la cuenta A.

Precios de la entrega de mensajes a partir de junio del 2019

El precio de la publicación y entrega de mensajes es de 40 USD por TiB, y no hay diferentes niveles. Además, vamos a implementar tarifas para el tráfico de salida de datos entre regiones. Las tarifas correspondientes al tráfico de salida de Internet y a la entrega de mensajes entre regiones de GCP seguirán siendo las mismas que las tarifas de red de Compute Engine, a excepción de las salidas entre zonas y a otros productos de Google. No se aplica ninguna tarifa al tráfico de salida entre zonas para el uso de Cloud Pub/Sub. Sin embargo, las salidas a productos de Google no están exentas de la tarifa correspondiente. Por ejemplo, un mensaje de 1 MiB que se publique en us-west1 y se entregue a un suscriptor en europe-west1 generará un cargo total de 3 MiB entre dos SKU distintos: 2 MiB de Message Delivery Basic (1 MiB por publicación y otro por entrega) y 1 MiB de Inter-Region Data Delivery from Americas to EMEA.

Si quieres prepararte para este cambio, puedes analizar tu propio uso mediante la opción para exportar la facturación a BigQuery. Cuando la hayas configurado en tu cuenta de facturación, podrás usar una consulta como la siguiente para obtener más detalles sobre tu uso:

SELECT TIMESTAMP_TRUNC(usage_start_time, day) as usage_date,
  sku.description,
  usage.unit,
  sum(usage.amount) as egress_volume
FROM `BILLING_EXPORT_TABLE`
WHERE
  _PARTITIONTIME >= TIMESTAMP("2019-01-01")
  AND service.description = "Cloud Pub/Sub"
  AND (sku.description like "Internet data%"
      OR sku.description like "Inter-region data%")
GROUP BY usage_date, sku.description, usage.unit;

Almacenamiento de mensajes relacionados con la función de búsqueda (seek)

Precio

La tarifa de almacenamiento de mensajes es de 0,27 USD por GiB al mes, y se cobra en los siguientes casos:

  • Se configura una suscripción para retener mensajes confirmados y que, de esta forma, puedan procesarse de nuevo mediante la función de búsqueda (seek). En este caso, se cobran las tarifas de almacenamiento para mensajes confirmados retenidos.
  • Se crea una captura de una suscripción. En este caso, se cobran las tarifas de almacenamiento para los mensajes sin confirmar de la captura en cuestión.

Ejemplo de suscripción con mensajes confirmados retenidos

Ahora, toma como referencia el ejemplo anterior sobre la ingestión de mensajes, pero imagina que solo tiene una suscripción que se haya configurado para retener mensajes confirmados:

  • El tema de la suscripción tiene un tráfico de entrada de datos con una velocidad constante de 1 MiB por segundo.
  • El suscriptor mantiene un ritmo constante respecto a los datos de la suscripción, con un consumo de 1 MiB por segundo, y tiene un número muy bajo de mensajes nuevos acumulados.
  • Se ha configurado la suscripción para que retenga mensajes confirmados durante 7 días.
  • El volumen de mensajes confirmados aumenta al siguiente ritmo: 1MiB/second x 3600 seconds/hour x 24 hours/day = 86.4 GiB/day.
  • Después de 7 días, los mensajes confirmados retenidos comienzan a caducar y el volumen total de mensajes confirmados almacenados se estabiliza en el siguiente valor: 7 days x 86.4 GiB/day = 605GiB.
La tarifa mensual total por almacenar este volumen de mensajes será, de manera aproximada, la siguiente: 605 GiB-month x $0.27/GiB-month = $163.

Ejemplo de tarifas de almacenamiento de mensajes de una captura

Estas tarifas consisten en un cargo que se incrementa conforme se publican nuevos mensajes en el tema de la captura y en otro cargo único que se cobra cuando se crea. Como ejemplo, piensa en la captura de una suscripción con mensajes confirmados retenidos. La captura caduca a los 7 días (a menos que se elimine antes), ya que la suscripción desde la que se crea no tiene mensajes sin confirmar acumulados. Los datos que se publican en el primer minuto (60 MiB) se almacenan como "7 días-1 minuto"; los datos publicados en el segundo minuto, como "7 días-2 minutos"; y así sucesivamente. Todo esto se traduce en 605 GiB de trabajo acumulado cuando caduca la captura, lo que supone la siguiente cantidad de almacenamiento utilizado: 1/2 x 605 GiB x 7 days = 2118 GiB-days. Finalmente, el cargo correspondiente a estos datos para un mes natural sería el siguiente: 2118 GiB-days x (1/30 months/day) x $0.27/GiB-month = $19. Por este motivo, las capturas pueden ser una alternativa rentable para la retención de mensajes confirmados.

Ejemplo de captura de una suscripción con trabajo acumulado

Si la suscripción tiene mensajes sin confirmar acumulados cuando se crea la captura, se hace un único cobro equivalente al que conlleva el almacenamiento de dicho trabajo acumulado durante los 7 días completos. Por ejemplo, imagina una suscripción con 10 GiB de mensajes sin confirmar acumulados. En dicho caso, el cobro único al crear la captura sería el siguiente: 10 GiB x 7 days / 30 days/month x 0.27/GiB-month = $0.63.

Implicaciones de la restricción de ubicaciones de recursos

Las políticas de almacenamiento de mensajes pueden generar tarifas adicionales de tráfico (de red) de salida entre regiones si, de conformidad con la política, los datos están obligados a salir de una región de GCP. Por ejemplo, supongamos que se ha hecho lo siguiente con un mensaje:

  • Se ha publicado en la región A.
  • Se ha dirigido a la región B para su almacenamiento.
  • Se ha entregado a un cliente de suscriptor en la región C.

En ese caso, ocurrirá lo siguiente:

  • Se facturará el tráfico de salida de la red de la región A a la B al proyecto que contenga el tema.
  • Al proyecto que contenga la suscripción se le facturará el tráfico de salida de la región B a la C.

Al proyecto que contenga el tema solo se le aplicará una tarifa de salida si el mensaje publicado se ha almacenado en una región distinta a la región donde se publicó (en este caso, la región B y la región A no son la misma región). Por otro lado, al proyecto que contenga la suscripción solo se le aplicará una tarifa de salida si el mensaje publicado se ha almacenado en una región distinta a la región donde se encuentra el cliente de suscriptor (C y B no son la misma región).

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Cloud Pub/Sub Documentation