La API de Cloud Healthcare aplica límites al uso de los recursos por diversos motivos. Por ejemplo, las cuotas protegen a la comunidad de usuarios de Google Cloud mediante la prevención de aumentos repentinos de uso. Google Cloud también ofrece cuotas de prueba gratuita que proporcionan acceso limitado a los usuarios que están explorando Google Cloud, incluida la API de Cloud Healthcare.
Las cuotas de la API de Cloud Healthcare se aplican por proyecto, ya sea por región o multirregionales. Si se agota la cuota en una región, eso no afecta el uso de la API de Cloud Healthcare en otras regiones.
Verifica tus cuotas y el uso
Las cuotas son límites que se aplican al almacenamiento (límites de entrada) y a las operaciones.
Puedes revisar la cuota disponible para los recursos de tu proyecto en la página Cuotas de la consola de Google Cloud.
Para mostrar solo las cuotas de la API de Cloud Healthcare, selecciona Servicio en la lista desplegable Filtrar tabla y, luego, selecciona API de Cloud Healthcare.
No todos los proyectos tienen las mismas cuotas. A medida que tu uso de la API de Cloud Healthcare aumenta con el tiempo, tus cuotas también pueden aumentar. Si esperas que el próximo aumento considerable en el uso, puedes solicitar ajustes de cuota Página Cuotas en Consola de Google Cloud No se aplican cargos por solicitar aumentos de cuota. Tus costos aumentan solo si usas más recursos.
Límites de recursos
La API de Cloud Healthcare limita el tamaño del contenido de las solicitudes (por ejemplo, el tamaño de una imagen de rayos X en una solicitud de DICOM). No puedes solicitar cambios a los límites de recursos; sin embargo, en algunos casos, puedes usar una operación de importación para importar contenido que supere el límite de recursos.
Se aplican los siguientes límites de recursos y están sujetos a cambios.
Modalidad | Límite de tamaño de solicitud |
---|---|
DICOM |
|
FHIR |
|
HL7v2 | 10 MB |
Si intentas procesar contenido más grande que el límite del recurso asociado, se muestra un error.
Límites de tamaño de executeBundle de FHIR
Puedes usar el método fhir.executeBundle
para realizar varias operaciones de FHIR en una sola solicitud a la API. La cantidad de operaciones depende de la cantidad de entradas en un lote o paquete de transacciones. Este enfoque es más eficiente que realizar llamadas a la API individuales para cada operación.
Los tiempos de procesamiento de las solicitudes de fhir.executeBundle
aumentan con la cantidad de entradas en el paquete. Hay factores como la contención de recursos (por ejemplo,
actualizar el mismo recurso como parte de muchos paquetes de transacciones en paralelo)
también afectan el rendimiento. Para ver ejemplos de cuándo puede ocurrir la contención de recursos y cómo evitar que cause errores, consulta Prácticas recomendadas de rendimiento de datos.
Paquetes grandes, especialmente los que superan los 1,000
de entrada, es posible que se agote
el tiempo de espera y que no se completen.
Para garantizar un procesamiento exitoso y oportuno, ten en cuenta estos límites cuando envíes tus
Solicitudes de fhir.executeBundle
:
- Paquetes de transacciones: Los paquetes que superen las 4,500 entradas se rechazan de inmediato para evitar los tiempos de espera. Los paquetes de transacciones requieren que todas las operaciones se realicen correctamente.
- Paquetes por lotes: No existe un límite específico de entradas, pero los paquetes más grandes aumentan el riesgo de los tiempos de espera. Los tiempos de espera pueden generar un éxito parcial, con solo algunas entradas procesadas.
Usa operaciones de importación para el contenido que supera el límite de recursos
Las operaciones de importación te permiten procesar el contenido que supera el límite de recursos asociado. El tamaño del contenido en una operación de importación está limitado solo por el tamaño máximo de almacenamiento de Google Cloud, que es de 5 TB para objetos independientes. Las operaciones de importación están sujetas a cuotas de almacenamiento que determinan cuánto tiempo tarda una operación de importación. Se recomienda que uses una operación de importación, por ejemplo, si quieres almacenar varias instancias de DICOM en un almacén DICOM y no quieres estar sujeto a los límites de tamaño de solicitud. En vez de subir las instancias mediante los métodos de Transacción de almacenamiento disponibles, puedes subirlas a un bucket de Cloud Storage y, luego, importarlas al almacén DICOM.
Si deseas obtener instrucciones para importar datos de DICOM mediante una operación de importación, consulta cómo importar y exportar datos de DICOM.
Si deseas obtener instrucciones para importar recursos de FHIR mediante una operación de importación, consulta cómo importar y exportar recursos de FHIR.
Si deseas obtener instrucciones detalladas para importar mensajes HL7v2 mediante una operación de importación, consulta Importa mensajes HL7v2 desde Cloud Storage.
Solicita que se aplique un cambio a una cuota
Para solicitar que se modifique una cuota, debes tener el permiso serviceusage.quotas.update
. Este permiso se incluye de forma predeterminada en las funciones predefinidas de Propietario, Editor y Administrador de cuotas.
Ve a la página Cuotas.
En la página Cuotas, selecciona las cuotas que deseas cambiar. Si solo deseas ver las cuotas de la API de Cloud Healthcare, selecciona Servicio en la lista desplegable Filtrar tabla y, luego, selecciona API de Cloud Healthcare.
Marca las casillas de las cuotas que quieres editar.
Haz clic en el botón Editar cuotas en la parte superior de la página.
Completa el formulario y haz clic en Siguiente.
Ingresa los límites que deseas solicitar y haz clic en Siguiente.
Haz clic en Enviar solicitud.
Las solicitudes de disminución de cuota se rechazan de forma predeterminada. Si deseas reducir la cuota, responde el correo electrónico de asistencia para explicar tus requisitos. Un representante del equipo de asistencia responderá a tu solicitud.
Recibirás una respuesta del equipo de la API de Cloud Healthcare en un plazo de 24 a 48 horas tras el envío de tu solicitud.
Planifica tu solicitud de recursos adicionales con al menos un par de días de anticipación a fin de asegurarte de que haya tiempo suficiente para completarla.
Límites de cuota
En las siguientes secciones, se describen las cuotas asociadas con la API de Cloud Healthcare. para almacenar datos y operaciones.
Cuotas de DICOM
En la siguiente tabla, se describen las cuotas de la API de Cloud Healthcare asociadas con las operaciones y los almacenes de DICOM.
Nombre de la métrica | Nombre visible | Descripción |
---|---|---|
dicomweb_ops |
Cantidad de operaciones de DICOMweb por minuto por región | Incluye los siguientes métodos:
|
dicom_structured_storage_bytes |
Entrada de almacenamiento de DICOM estructurado en bytes por minuto por región | Bytes estructurados, en forma de etiquetas DICOM y metadatos relacionados, que se envían a la API de Cloud Healthcare mientras se procesan las operaciones dicomweb_ops . |
dicom_store_ops |
Cantidad de operaciones de almacén de DICOM por minuto por región | Operaciones en el almacén de DICOM, no en los datos de DICOM. Incluye los siguientes métodos: |
dicom_store_lro_ops |
Cantidad de operaciones de larga duración del almacén de DICOM por minuto por región | Operaciones en el almacén de DICOM, no datos de DICOM, que muestran una operación de larga duración Incluye los siguientes métodos: |
dicom_structured_storage_operations_bytes |
Entrada de almacenamiento de DICOM estructurado para operaciones de larga duración en bytes por minuto por región | Bytes estructurados, en forma de etiquetas DICOM y metadatos relacionados, enviados a la API de Cloud Healthcare mientras se procesan las operaciones de dicom_store_lro_ops . |
Cuotas de FHIR
En la siguiente tabla, se describen las cuotas de la API de Cloud Healthcare asociadas con los almacenes y las operaciones de FHIR.
Nombre de la métrica | Nombre visible | Descripción |
---|---|---|
fhir_read_ops |
Cantidad de operaciones de lectura de FHIR por minuto y por región | Se mide en unidades, donde una unidad es una solicitud de lectura en un recurso de FHIR individual. Incluye los siguientes métodos: v1beta1: v1: |
fhir_write_ops |
Cantidad de operaciones de escritura de FHIR por minuto por región | Se mide en unidades, en la que una unidad es una solicitud de creación, actualización o eliminación en un recurso de FHIR individual. Incluye los siguientes métodos: v1beta1: v1: |
fhir_search_ops |
Cantidad de operaciones de búsqueda de FHIR por minuto por región | Se mide en unidades, en la que una unidad es una solicitud de búsqueda en un tipo de recurso FHIR en la que la búsqueda no requiere resolver referencias, excepto cuando se usa _include . Por ejemplo, una búsqueda de Observation?subject:Patient.identifier=system|value consume dos unidades de cuota de fhir_search_ops porque requiere dos búsquedas, una en el recurso Observation y otra en el recurso Patient, con subject como referencia.Incluye los siguientes métodos: v1beta1:
|
fhir_storage_egress_bytes |
Salida de almacenamiento de FHIR en bytes por minuto por región | Se mide en unidades, donde una unidad es un byte que la API de Cloud Healthcare lee del almacenamiento mientras procesa las operaciones fhir_read_ops , fhir_write_ops y fhir_search_ops . |
fhir_storage_bytes |
Entrada de almacenamiento de FHIR en bytes por minuto por región | Bytes enviados a la API de Cloud Healthcare mientras se procesan operaciones de fhir_write_ops . |
fhir_store_ops |
Cantidad de operaciones de almacén de FHIR por minuto por región | Operaciones en el almacén de FHIR, no en datos de FHIR. Incluye los siguientes métodos: |
fhir_store_lro_ops |
Cantidad de operaciones de larga duración de la tienda de FHIR por minuto por región | Operaciones en el almacén de FHIR, no en los datos de FHIR, que muestran una operación de larga duración. Incluye los siguientes métodos: |
fhir_storage_operations_bytes |
Entrada de almacenamiento de FHIR para operaciones de larga duración en bytes por minuto y por región | Bytes enviados a la API de Cloud Healthcare mientras se procesan operaciones de fhir_store_lro_ops . |
Búsquedas de varias operaciones
Una sola solicitud puede consumir varias unidades de cuota. Por ejemplo, una búsqueda de GET
solicitud con Observation?subject:Patient.identifier=system|value
como el
El parámetro de búsqueda consume dos unidades de cuota fhir_search_ops
. Dos búsquedas
se realizan las operaciones, una en el recurso Observación y otra en el recurso Patient, mediante
subject
como referencia.
Si una solicitud de eliminación condicional que usa Observation?status=canceled
como la búsqueda
de criterios busca y borra seis recursos de observación, los siguientes
las unidades de cuota que se consumen:
- Una unidad de cuota de
fhir_search_ops
, ya que la solicitud de búsquedaGET
solo se realiza en un tipo de recurso de FHIR, el recurso Observation. La solicitud muestra todos los recursos de observación que coinciden con los criterios de búsqueda. - Seis unidades de cuota de
fhir_write_ops
, ya que hay un total de seis operaciones deDELETE
en los recursos de observación borrados.
Ejecuta el consumo de cuota del paquete
Para enviar una solicitud de ejecución de paquete, independientemente de la cuota que consuma la solicitud, tu proyecto de Google Cloud debe tener al menos una unidad disponible para cada una de las siguientes cuotas:
fhir_read_ops
fhir_write_ops
fhir_search_ops
Si estas cuotas no están disponibles, la solicitud de ejecución del paquete falla.
Por ejemplo, si envías una solicitud fhir.executeBundle
con un paquete de transacciones que contiene 100 operaciones POST
, cada una de las cuales crea un recurso FHIR, la API de Cloud Healthcare primero verifica que haya al menos una unidad de cuota disponible para fhir_read_ops
, fhir_write_ops
y fhir_search_ops
. Si la verificación se realiza correctamente, la API de Cloud Healthcare ejecuta el paquete y crea los recursos de FHIR, que consumen un total de 100 unidades de cuota fhir_write_ops
.
Considera el siguiente paquete de transacciones, que utiliza una referencia condicional
para crear un recurso de observación si reference
existe:
{
"resourceType": "Bundle",
"type": "transaction",
"entry": [
{
"request": {
"method": "POST",
"url": "Observation"
},
"resource": {
"resourceType": "Observation",
"subject": {
"reference": "Patient?identifier=a1b2c3d4e5"
}
}
}
]
}
Cuando ejecutas el paquete, la API de Cloud Healthcare
primero verifica que al menos una unidad de cuota esté disponible para fhir_read_ops
, fhir_write_ops
y
fhir_search_ops
Si la verificación se realiza correctamente, la API de Cloud Healthcare ejecuta el paquete. Se consumen las siguientes unidades de cuota:
- Un elemento
fhir_write_ops
para crear el nuevo recurso de observación - Un
fhir_search_ops
, ya que se realiza una sola operación de búsqueda en la referenciaPatient?identifier=a1b2c3d4e5
.