Cuotas y límites

En este documento, se enumeran las cuotas y los límites del sistema que se aplican a AlloyDB para PostgreSQL.

  • Las cuotas especifican la cantidad de un recurso compartido contable que puedes usar. Las cuotas se definen en los servicios de Google Cloud , como AlloyDB para PostgreSQL.
  • Los límites del sistema son valores fijos que no se pueden cambiar.

Cuotas

Google Cloud usa cuotas para garantizar la equidad y reducir los aumentos repentinos en el uso y la disponibilidad de los recursos. Una cuota restringe la cantidad de un recurso de Google Cloud que puede usar tu proyecto de Google Cloud . Las cuotas se aplican a una variedad de tipos de recursos, incluidos los componentes de hardware, software y red. Por ejemplo, las cuotas pueden restringir la cantidad de llamadas a la API para un servicio, la cantidad de balanceadores de cargas que se usan en simultáneo en tu proyecto o la cantidad de proyectos que puedes crear. Las cuotas protegen a la comunidad de usuarios deGoogle Cloud , ya que evitan la sobrecarga de los servicios. Las cuotas también te ayudan a administrar tus propios recursos de Google Cloud .

El sistema de cuotas Cloud realiza las siguientes acciones:

  • Supervisa tu consumo de productos y servicios de Google Cloud
  • Restringe el consumo de esos recursos.
  • Proporciona un medio para solicitar cambios en el valor de la cuota.

En la mayoría de los casos, cuando intentas consumir más de lo que permite la cuota de un recurso, el sistema bloquea el acceso al recurso, y la tarea que intentas realizar falla.

Por lo general, las cuotas se aplican a nivel del proyecto de Google Cloud . El uso de un recurso en un proyecto no afecta tu cuota disponible en otro proyecto. Dentro de un proyecto de Google Cloud , las cuotas se comparten entre todas las aplicaciones y direcciones IP.

Google Cloud también ofrece cuotas de prueba gratuitas que proporcionan acceso limitado a los proyectos para ayudarte a explorar Google Cloud sin cargo.

No todos los proyectos tienen las mismas cuotas. Si aumenta tu uso de Google Cloud , es posible que aumenten tus cuotas.

Para obtener más información sobre las cuotas, consulta Trabaja con cuotas.

Si deseas obtener información específica sobre las cuotas que impone AlloyDB, consulta Cuotas de frecuencia y Cuotas de recursos.

También existen límites para los recursos de AlloyDB. A diferencia de las cuotas, los límites del sistema no se pueden cambiar.

Permisos para verificar y editar cuotas

Para ver tus cuotas, debes tener el permiso serviceusage.quotas.get.

Para cambiar tus cuotas, debes tener el permiso serviceusage.quotas.update.

Estos permisos se incluyen de forma predeterminada en las funciones básicas de IAM de Propietario y Editor, y en la función de Administrador de cuotas predefinida.

Verifica tus cuotas

De forma predeterminada, la tabla de cuotas de la consola de Google Cloud muestra las cuotas de todos los servicios. Puedes verificar las cuotas actuales de los recursos de AlloyDB en tu proyecto con la lista Filtrar de la tabla.

Para verificar las cuotas actuales de recursos de AlloyDB en tu proyecto, completa los siguientes pasos:

  1. En la consola de Google Cloud , ve a la página Cuotas.

    Ir a Cuotas

  2. En la tabla de cuotas, haz clic en Filtrar.

  3. Selecciona Servicio en la lista Propiedades y, luego, selecciona API de AlloyDB en la lista Valores.

Aumenta tus cuotas

A medida que tu uso de Google Cloud aumenta con el tiempo, las cuotas pueden incrementarse según corresponda. Si prevés un aumento considerable en el uso, envía la solicitud con unos días de antelación para garantizar que las cuotas tengan la capacidad necesaria.

  1. En la página Cuotas, haz clic en Filtrar.
  2. Selecciona Servicio en la lista Propiedades y, luego, selecciona API de AlloyDB en la lista Valores.

    Si no ves la API de AlloyDB, significa que la API de AlloyDB Admin no está habilitada.

  3. Selecciona las cuotas que deseas cambiar.

  4. Haz clic en Editar cuotas.

  5. Ingresa tu nombre, correo electrónico y número de teléfono, y haz clic en Siguiente.

  6. Ingresa tu solicitud de cuota y haz clic en Enviar solicitud.

Cuotas de frecuencia

AlloyDB admite cuotas de frecuencia, que también se conocen como límites de frecuencia o cuotas de API. Las cuotas de frecuencia definen la cantidad de solicitudes que puedes realizar a la API de AlloyDB Admin.

Cada cuota de frecuencia corresponde a todas las solicitudes de un grupo de uno o más métodos de la API de Admin de AlloyDB. Las cuotas de frecuencia se restablecen después de un intervalo específico del servicio, por ejemplo, la cantidad de solicitudes a la API por día.

Cuando usas Google Cloud CLI o la consola de Google Cloud , realizas solicitudes a la API, que se suman a tus límites de frecuencia. Si usas cuentas de servicio para acceder a la API, esas solicitudes también se tienen en cuenta en tu límite de frecuencia.

Las cuotas de frecuencia se aplican y se vuelven a completar automáticamente en intervalos de 60 segundos (1 minuto). Esto significa que, si tu proyecto alcanza el máximo de una cuota de frecuencia en cualquier momento en 60 segundos, debes esperar a que se vuelva a completar esa cuota antes de realizar más solicitudes en ese grupo. Si tu proyecto excede un límite de frecuencia, recibirás un código de estado HTTP 429 con el motivo rateLimitExceeded.

Las APIs de AlloyDB Admin se dividen en seis grupos según el tipo de operación. Las cuotas de frecuencia se imponen por minuto, por grupo de API, por proyecto, por región y por usuario. Para cada combinación única de estos atributos, AlloyDB impone una cuota independiente. Por ejemplo, si 100 usuarios acceden a las APIs de Mutate en un solo minuto para un proyecto y una región determinados, cada usuario recibe una cuota predeterminada de entre 180 y 250 solicitudes por minuto para cada combinación de proyecto y región.

El rango de cuota predeterminado para cada grupo es el siguiente:

Nombre del grupo Descripción Rango de cuota predeterminado en consultas por minuto Métodos de la API
APIs de Connect Establecer nuevas conexiones 180-2000
  • projects.locations.clusters.generateClientCertificate
  • projects.locations.clusters.instances.getConnectionInfo
Cómo obtener APIs Lee un solo recurso. 180-1000
  • projects.locations.clusters.get
  • projects.locations.clusters.instances.get
  • projects.locations.backups.get
  • projects.locations.get
API de la operación Get Obtén el último estado de una operación de larga duración. 950-1400
  • projects.locations.operations.get
Enumera APIs Lee un grupo de recursos del mismo tipo. 180-1000
  • projects.locations.clusters.list
  • projects.locations.clusters.instances.list
  • projects.locations.backups.list
  • projects.locations.supportedDatabaseFlags.list
  • projects.locations.list
API de List operations Enumera las operaciones que coinciden con un filtro específico en la solicitud. 2200-3000
  • projects.locations.operations.list
Mutación de APIs Modifica el estado del recurso. 180-250
  • projects.locations.clusters.create
  • projects.locations.clusters.patch
  • projects.locations.clusters.delete
  • projects.locations.clusters.restore
  • projects.locations.clusters.instances.create
  • projects.locations.clusters.instances.patch
  • projects.locations.clusters.instances.delete
  • projects.locations.clusters.instances.failover
  • projects.locations.clusters.instances.restart
  • projects.locations.backups.create
  • projects.locations.backups.patch
  • projects.locations.backups.delete
  • projects.locations.operations.delete
  • projects.locations.operations.cancel

Cuotas de recursos

AlloyDB admite cuotas de recursos, también conocidas como cuotas de asignación. Las cuotas de recursos son la cantidad máxima de recursos que puedes crear para un tipo de recurso, si estos están disponibles. Las cuotas de recursos restringen el uso de recursos que no tienen una frecuencia de uso, como la cantidad de instancias de máquina virtual (VM) que usa tu proyecto en un momento determinado.

Las cuotas de recursos no se restablecen con el tiempo. En su lugar, debes tomar medidas para liberar los recursos que no se usan, como borrar un clúster que no se necesita.

Actualmente, se imponen cuotas de recursos a la cantidad de clústeres y CPU virtuales que se usan, como se detalla en las siguientes secciones.

Cuotas de recursos en los clústeres

Esta cuota se aplica a la cantidad de clústeres por proyecto y por región. El valor predeterminado de esta cuota varía de 3 a 10 clústeres por proyecto por región, según el historial de uso del proyecto. El valor máximo admitido para esta cuota es de 15 clústeres por proyecto y por región.

Si realizas una solicitud de creación o restablecimiento de clúster con la consola de Google Cloud , gcloud CLI o la API de AlloyDB Admin, y eso genera un incumplimiento de cuota, la solicitud falla con un mensaje de error similar al siguiente:

Quota limit 'ClustersUsedPerProjectPerRegion' has been exceeded. Limit: 5 in region us-central1.

Cuotas de recursos en las CPU virtuales

Esta cuota se aplica a la cantidad de vCPU por proyecto y por región. Cada instancia consume una parte de esta cuota según la cantidad de VMs que usa. Cada instancia principal usa dos VMs. Cada instancia del grupo de lectura usa una VM para cada nodo que contiene. Tú proporcionas la cantidad de CPU virtuales que usa cada VM cuando creas o actualizas la instancia.

El valor predeterminado de esta cuota varía de 128 a 512 vCPU por proyecto por región, según el historial de uso del proyecto.

Si realizas una solicitud para crear o actualizar una instancia con la consola de Google Cloud , gcloud CLI o la API de AlloyDB Admin, y eso genera un incumplimiento de cuota, la solicitud falla con un mensaje de error similar al siguiente:

Quota limit 'VCPUsUsedPerProjectPerRegion' has been exceeded. Limit: 128 in region us-central1.

Cuotas de recursos en el almacenamiento

Esta cuota se aplica a la cantidad de datos que se pueden almacenar en cada clúster. El valor predeterminado de esta cuota es de 16 TiB por clúster. El valor máximo admitido es de 128 TiB por clúster.

Si realizas una solicitud de escritura en la base de datos, como una sentencia INSERT que genera un incumplimiento de cuota, la solicitud fallará con el siguiente mensaje de error:

AlloyDB instance exceeds available storage quota.

Disponibilidad de recursos

Las cuotas de recursos no garantizan que los recursos estén disponibles en todo momento. Si un recurso no está disponible de forma física para tu región, no puedes crear recursos nuevos de ese tipo, aunque tengas cuota restante en tu proyecto.

Límites

Para solicitar un aumento del límite, presenta un caso de asistencia.

Elemento Límite
Nodos de grupo de lectura por clúster (en todas las instancias de grupo de lectura) 20
Cantidad máxima de conexiones simultáneas por instancia

El valor predeterminado es 1,000; se puede ajustar hasta 240,000.

Cantidad máxima de conexiones simultáneas

AlloyDB limita las conexiones simultáneas máximas de una instancia a 1,000, a menos que establezcas su marca max_connections en un valor más alto.

Usa la siguiente tabla como guía para decidir el valor de conexiones máximas en función del tamaño de tu instancia:

CPU virtual Memoria Valor recomendado de max_connections
2 16 1000
4 32 2000
8 64 4000
16 128 5000
32 256 5000
64 512 5000
96 768 5000
128 864 5000

Ten en cuenta las siguientes consideraciones antes de establecer el valor:

  • Cuando configuras la marca max_connections en una instancia de grupo de lectura, el valor nuevo debe coincidir o superar el valor de max_connections de la instancia principal de su clúster.
  • Recomendamos ejecutar un máximo de cuatro consultas simultáneas por CPU virtual de la instancia.
  • Para cargas de trabajo que implican conexiones a corto plazo, considera usar un agrupador de conexiones, como pgbouncer o pgpool-II.
  • Te recomendamos que agregues un grupo de conexiones del lado de la aplicación, como HikariCP o c3p0.
  • Si decides establecer el valor en un valor superior a las recomendaciones (hasta 240,000), ten en cuenta el consumo de memoria adicional para cada conexión activa que reduciría la memoria del búfer compartido.

    Para calcular este consumo de memoria, se multiplica la cantidad de consultas simultáneas por el valor establecido para la marca work_mem. El valor predeterminado para esta marca es 4MB o la cantidad de CPU virtuales en la instancia, lo que sea mayor.