Las instancias de virtual warehouse de Hologres admiten el escalado programado, lo que permite crear planes de elasticidad para ajustar automáticamente los recursos de cómputo durante los picos de tráfico. Esta función mejora la estabilidad de la instancia, optimiza el uso de recursos y reduce costos. Este tema describe cómo utilizar la función de escalado programado.
Casos de uso
Considere un escenario donde el equipo de una plataforma de datos utiliza init_warehouse para trabajos ETL grandes, importaciones masivas de alto volumen e ingesta de datos casi en tiempo real, mientras que el Equipo de Negocios A y el Equipo de Negocios B usan warehouse 1 y warehouse 2 para consultas. A continuación se presentan los casos de uso típicos del escalado programado:
Para la ingesta de datos en tiempo real y casi en tiempo real, continúe usando la virtual warehouse
init_warehouse. Si el volumen de datos es estable durante todo el día, no se requiere un plan de elasticidad. Si existe un pico de escritura recurrente y predecible dentro de una ventana de tiempo específica (generalmente menor a 16 horas), cree un plan de elasticidad para aprovisionar recursos elásticos adicionales durante ese periodo.Para las consultas de los equipos de negocios, siga utilizando virtual warehouses separadas a fin de garantizar el aislamiento de cargas de trabajo. Si el volumen de consultas es estable, no es necesario un plan de elasticidad. Si las solicitudes de consulta siguen un ciclo diario predecible, cree un plan de elasticidad para agregar recursos elásticos adicionales durante las horas pico de consultas.
Para trabajos ETL grandes e importaciones masivas de alto volumen, se recomienda usar recursos de Serverless Computing. Serverless Computing proporciona recursos de cómputo adicionales bajo demanda sin necesidad de aprovisionamiento previo. Esto mejora la estabilidad de la instancia, reduce los errores de memoria insuficiente (OOM) y le permite pagar solo por lo que usa. Para más información, consulte Serverless Computing. Para aprender a utilizarlo, consulte Use Serverless Computing.
Conceptos clave
Para consultar las definiciones de recursos de cómputo a nivel de instancia y de virtual warehouse, véase Terminology.
A continuación se muestra un ejemplo de la configuración de recursos de una instancia:
|
Categoría |
Detalles de recursos |
|
Instancia |
96 CU reservadas, con 64 CU asignadas y 32 CU sin asignar. |
|
32 CU elásticas. |
|
|
Recursos totales de cómputo: 96 + 32 = 128 CU. |
|
|
Virtual warehouse init_warehouse |
32 CU reservadas, 16 CU elásticas, para un total de 48 CU. |
Facturación
Recursos reservados de la instancia: Son recursos de cómputo dedicados a su instancia de virtual warehouse y se facturan según el método de facturación de su instancia (suscripción o pay-as-you-go).
-
Recursos elásticos de la instancia: Recursos de cómputo adicionales aprovisionados mediante la función de escalado programado. El costo se calcula de la siguiente manera:
Cost = Actual elastic resource usage (CU-hours) × Unit price. Para precios unitarios específicos, consulte Billing overview. Las facturas se liquidan por hora y los cargos se deducen automáticamente de su cuenta.NotaEl sistema registra el uso de recursos elásticos cada minuto. Al final de cada hora, calcula el uso total correspondiente, convierte las unidades, genera una factura y deduce automáticamente el cargo de su cuenta.
Los recursos elásticos de la instancia se aprovisionan de forma independiente a los recursos no asignados de la instancia. Incluso si su instancia tiene recursos reservados sin asignar, el escalado programado aprovisionará nuevos recursos elásticos en lugar de utilizar los no asignados.
Limitaciones
El escalado programado está disponible únicamente para instancias de virtual warehouse. No es compatible con instancias de propósito general ni con réplicas de solo lectura.
El escalado programado es compatible con Hologres v2.2.21 y versiones posteriores.
-
Disponibilidad regional:
La función de escalado programado se encuentra actualmente en vista previa pública. Para solicitar acceso, utilice su cuenta principal de Alibaba Cloud para completar el formulario de Solicitud de vista previa pública de escalado programado de Hologres.
Región
Disponibilidad
Descripción
China (Hangzhou), China (Shanghai), China (Beijing) y China (Shenzhen)
Compatible
Puede usar esta función directamente después de que se apruebe su solicitud.
China (Shanghai) Finance Cloud, China (Beijing) Gov Cloud, China (Shenzhen) Finance Cloud, Japan (Tokyo), Malaysia (Kuala Lumpur), Indonesia (Jakarta) y México
No compatible
Las solicitudes de prueba no están disponibles.
China (Chengdu), China (Hong Kong), Singapore, Germany (Frankfurt), US (Silicon Valley), US (Virginia) y UAE (Dubai)
Disponible mediante ticket
Para solicitar acceso, siga estos pasos:
-
Complete el formulario de solicitud: Hologres Scheduled Scaling Public Preview Application.
-
Envíe un ticket para continuar con el procesamiento.
-
Notas de uso
-
Permisos necesarios para el escalado programado:
Para crear un plan de elasticidad, debe usar una cuenta principal de Alibaba Cloud o un usuario RAM con el permiso
AliyunHologresWarehouseFullAccess. Este permiso otorga acceso de solo lectura a la consola de Hologres y derechos de configuración para la función de escalado programado. Para instrucciones de autorización, consulte Grant permissions to a RAM user.La cuenta debe tener permisos de
Superuseren la instancia para crear un plan de elasticidad y asegurar que cada operación de escalado programado se active correctamente. Para instrucciones de autorización, consulte Grant development permissions to a RAM user for an instance.
AvisoSi se revoca el permiso de
Superuserde la cuenta que creó un plan de elasticidad, todas las operaciones subsiguientes de escalado programado fallarán. Para evitar fallos derivados de cambios en los permisos, se recomienda utilizar una cuenta dedicada a operaciones para gestionar los planes de elasticidad. -
Las operaciones de escalado pueden afectar las consultas y escrituras en ejecución:
En Hologres v2.2, las operaciones de escalado horizontal hacia afuera y hacia adentro provocan una breve interrupción de aproximadamente 15 segundos en las consultas y escrituras de la virtual warehouse.
A partir de Hologres v3.0, las operaciones de escalado hacia afuera no interrumpen las consultas ni las escrituras, aunque el estado de la virtual warehouse se muestre como "Processing". Las operaciones de escalado hacia adentro todavía causan una interrupción de unos 15 segundos.
A partir de Hologres v3.1, las operaciones de escalado hacia adentro no afectan a la mayoría de las consultas y escrituras. Sin embargo, si una consulta de larga duración o una escritura que requiere más de 60 minutos para completarse está en progreso cuando se activa un escalado hacia adentro, la tarea fallará 60 minutos después de que comience la operación de escalado.
-
Una vez configurado un plan de elasticidad para una virtual warehouse:
No puede detener ni eliminar la virtual warehouse, tampoco puede reducir manualmente sus recursos.
Solo puede aumentar los recursos de la virtual warehouse a través de la consola de Hologres. No se admite la ejecución manual del comando
hg_alter_warehousepara escalar hacia afuera.Solo puede crear nuevas virtual warehouses a través de la consola de Hologres. No se admite la ejecución manual del comando
hg_create_warehouse.
Los recursos elásticos para el escalado programado son recursos pay-as-you-go y su disponibilidad no está garantizada. Se recomienda configurar alertas de Cloud Monitor para eventos de fallo de escalado, tal como se describe en Monitoring and alerts for scheduled scaling.
Procedimiento
Gestión de recursos de virtual warehouse
-
Vaya a la página de Virtual Warehouse Management.
Inicie sesión en la consola de Hologres y seleccione una región en la barra de navegación superior.
En el panel de navegación izquierdo, haga clic en Instances y luego haga clic en el Instance ID objetivo.
En el panel de navegación izquierdo de la página de detalles de la instancia, haga clic en Virtual Warehouse Management.
-
Consulte el uso de recursos de la instancia de virtual warehouse.
En la pestaña Virtual Warehouse Resource Management, puede ver el uso de recursos de su instancia de virtual warehouse, incluidos los recursos reservados de la instancia (tanto asignados como no asignados) y los recursos elásticos de la instancia.
-
Gestione los recursos de la virtual warehouse.
Haga clic en Create Virtual Warehouse. En el cuadro de diálogo Create Virtual Warehouse, introduzca un Virtual Warehouse Name y especifique el Virtual Warehouse Resource para crear una nueva virtual warehouse.
-
Para una virtual warehouse con un Status de Running, puede realizar operaciones de Modify Configuration, Restart, Stop y Rebalance. Para más información sobre el reequilibrio, consulte Shard rebalancing (Rebalance).
NotaNo puede ejecutar la acción Stop en la virtual warehouse predeterminada
init_warehousede una instancia.
Planes de elasticidad
Línea de tiempo
Vaya a la página de Virtual Warehouse Management y haga clic en la pestaña Virtual Warehouse Scaling Plan.
En la lista desplegable Instance/Virtual Warehouse, seleccione una instancia o una virtual warehouse específica para ver su línea de tiempo de plan de elasticidad. La línea de tiempo muestra operaciones futuras de escalado programado, no métricas históricas de recursos.
Configuración
En la pestaña Virtual Warehouse Scaling Plan, haga clic en el icono
a la izquierda de la virtual warehouse objetivo y luego haga clic en + Add Time Period. Configure las horas de inicio y fin para el periodo activo diario, establezca la cantidad de recursos de cómputo elásticos y haga clic en Save en la columna Actions para aplicar los cambios.Puede Edit o Delete un plan de elasticidad existente.
La cantidad de recursos de cómputo elásticos no puede exceder la cantidad de recursos de cómputo reservados.
Cada virtual warehouse admite un máximo de cinco periodos de tiempo elásticos.
Cuando elimina un plan de elasticidad, el estado de la virtual warehouse cambia temporalmente a "Processing", incluso si la cantidad de recursos no varía. Las operaciones de lectura y escritura no se ven afectadas durante este tiempo.
Al guardar un plan de elasticidad, si el cambio afecta la cantidad actual de recursos elásticos, Hologres realiza inmediatamente la operación de escalado correspondiente. Consulte los siguientes ejemplos:
-
Ejemplo 1
Suponga que la hora actual es 16:00. Agrega un nuevo plan de elasticidad a la virtual warehouse A, que tiene 64 CU reservadas:
Si el periodo activo es de 15:00 a 18:00 con 32 CU elásticas, los recursos totales de cómputo de la virtual warehouse A escalarán inmediatamente hacia afuera hasta alcanzar 96 CU al guardar.
-
Ejemplo 2
Suponga que la hora actual es 16:00. Modifica un plan de elasticidad existente para la virtual warehouse A, que tiene 64 CU reservadas:
Antes de la modificación: El periodo activo es de 15:00 a 18:00 con 32 CU elásticas.
Después de la modificación: El periodo activo es de 17:00 a 18:00 con 32 CU elásticas.
Al guardar, los recursos totales de cómputo de la virtual warehouse A se reducirán inmediatamente de 96 CU a 64 CU.
Monitoreo y alertas para el escalado programado
Puede monitorear la ejecución del plan de elasticidad de las siguientes maneras.
Registros de ejecución del plan de elasticidad
Vaya a la página de Virtual Warehouse Management y haga clic en la pestaña Elastic Event Execution Logs.
Seleccione un rango de tiempo para ver el historial de ejecución de planes de elasticidad anteriores. Esta pestaña contiene las subpestañas Scheduled Scaling y Auto Scaling. Puede filtrar por rango de fechas, y la tabla muestra información como Execution Time, Virtual Warehouse, Execution Status, Event Type, Reserved Compute Resources y Target Elastic Compute Resources.
Métricas de monitoreo
En la sección de métricas de monitoreo de la consola de Hologres, puede consultar la métrica Warehouse_timed_elastic_cores(Count), que representa la cantidad de núcleos aprovisionados por el escalado programado. Puede configurar reglas de alerta para esta métrica según sea necesario. Para más información, consulte Monitoring metrics.
Eventos de Cloud Monitor
Todas las operaciones de escalado realizadas por los planes de elasticidad de Hologres se registran como eventos en Cloud Monitor.
-
Vaya al Centro de eventos de Cloud Monitor. En la pestaña System Event, seleccione Hologres en la sección Event Monitoring para monitorear eventos de escalado programado. Los nombres de los eventos son los siguientes:
Instance:Warehouse:TimedElastic:Start: Ha comenzado una operación de escalado programado para una virtual warehouse.Instance:Warehouse:TimedElastic:Finish: Se ha completado una operación de escalado programado para una virtual warehouse.Instance:Warehouse:TimedElastic:Failed: Ha fallado una operación de escalado programado para una virtual warehouse.
-
Puede configurar notificaciones y alertas basadas en estos eventos de Cloud Monitor. Para más información, consulte Use system events for alerting.
A continuación se muestra un ejemplo de un evento de fallo de escalado:
{ "Status": "Failed", "InstanceName": "<instance_id>", "ResourceId": "<instance_resource_id>", "Content": { "ScaleType": "ScaleDown", "ScheduleId": "xxxxxx", "TimedElasticCPU": 0, "WarehouseId": "2", "WarehouseName": "<warehouse_name>" }, "Product": "hologres", "Time": 1722852008000, "Level": "WARN", "RegionId": "<region>", "Id": "<event_id>", "GroupId": "0", "Name": "Instance:Warehouse:TimedElastic:Failed" }
ActionTrail
Las operaciones en la consola de Hologres, como editar un plan de elasticidad, y las operaciones de escalado resultantes se registran en ActionTrail. Para más información, consulte Audit event logs.