Si sus tareas de cómputo de big data contienen muchas subconsultas similares, la función de gobernanza automatizada en Data Asset Governance ofrece una solución inteligente. Esta función identifica y clasifica automáticamente las subconsultas similares en MaxCompute, y genera recomendaciones de vistas materializadas. Posteriormente, puede crear estas vistas materializadas con un solo clic para mejorar significativamente la eficiencia de cómputo y ahorrar recursos de procesamiento.
Funcionamiento
La función de vistas materializadas en la gobernanza automatizada de DataWorks utiliza la capacidad Materialized View Recommendation and Management de MaxCompute. Escanea e identifica rápidamente numerosas subconsultas similares dentro de los trabajos SQL de MaxCompute en los escenarios de programación de DataWorks. Con base en estos hallazgos, recomienda sentencias SQL para ayudarle a crear vistas materializadas de forma rápida.
Una vez creada una vista materializada, DataWorks genera automáticamente un nodo para producir los datos de la vista y lo despliega en el entorno de producción para su programación. Los nodos descendientes existentes en DataWorks que contienen las subconsultas similares identificadas pasan a depender de este nuevo nodo generador de la vista. Debido a esta dependencia de programación, DataWorks ejecuta primero el nodo generador de la vista. Cuando un nodo descendiente ejecuta una subconsulta pública, consulta los datos precalculados de la vista materializada. Este proceso reduce los cálculos redundantes y cumple los objetivos de gobernanza.
Regiones compatibles: China (Hangzhou), China (Shanghai), China (Shenzhen), China (Beijing) y China (Chengdu).
Requisitos previos
Ha agregado un origen de datos de MaxCompute. Para obtener más información, consulte Bind a MaxCompute compute resource.
Ha habilitado el análisis inteligente para vistas materializadas en MaxCompute. Para obtener más información, consulte Materialized View Recommendation and Management.
Flujo de trabajo
-
Habilite las recomendaciones de vistas materializadas.
Después de habilitar las recomendaciones de vistas materializadas para un proyecto de MaxCompute vinculado a un espacio de trabajo de DataWorks, el sistema genera recomendaciones en la página de recomendación de vistas materializadas cuando se cumplen las siguientes condiciones:
Una tarea programada se ejecuta durante al menos tres días consecutivos.
Los datos de entrada en una subconsulta pública superan 1,000,000 filas.
La subconsulta pública contiene operadores que reestructuran datos, como JOIN o agregación (AGG).
-
Consulte las recomendaciones y cree vistas materializadas.
Puede revisar las recomendaciones de vistas materializadas para determinar si son adecuadas y, a continuación, crear una tarea de gobernanza para compilar la vista materializada.
Si configura las opciones Create Materialized View Refresh Node y Add Materialized View Refresh Node as Ancestor Node durante la creación, la vista materializada se activa en sus escenarios de programación de DataWorks después de crearse correctamente.
Se agrega automáticamente un nodo de actualización dinámica para la vista materializada antes de los nodos de tarea que tienen cálculos similares. Cuando la tarea de la tabla de origen o un nodo ascendente produce nuevos resultados, la vista materializada se actualiza primero para proporcionar los datos más recientes. Los nodos descendientes recuperan entonces los datos de esta vista materializada actualizada.
-
Gestione las vistas materializadas.
Puede gestionar las vistas materializadas creadas a partir de recomendaciones dentro de su espacio de trabajo. Esto incluye comprobar sus tasas de aciertos y analizar o eliminar cualquier vista que no funcione como se espera.
Procedimiento
Paso 1: Habilitar o deshabilitar recomendaciones
Solo un administrador del espacio de trabajo puede habilitar o deshabilitar las recomendaciones de vistas materializadas.
-
Vaya a la página de Data Asset Governance.
Inicie sesión en la consola de DataWorks. En la barra de navegación superior, seleccione la región deseada. En el panel de navegación izquierdo, elija . En la página que aparece, haga clic en Go to Data Asset Governance.
En el panel de navegación izquierdo, elija .
-
Seleccione un Workspace y haga clic en Settings for Materialized View Recommendation. Active el interruptor de recomendación inteligente para el proyecto donde desea habilitar esta función.
Aparece un cuadro de diálogo que indica que las recomendaciones se aplican solo a proyectos de MaxCompute que ya están vinculados al espacio de trabajo de DataWorks.
Paso 2: Consultar recomendaciones
Este módulo identifica automáticamente posibles vistas materializadas y sus tareas de cómputo asociadas. Los propietarios correspondientes pueden evaluar las recomendaciones y crear la vista materializada.
Para generar recomendaciones más precisas, el sistema las muestra en la página de recomendación de vistas materializadas solo después de que se cumplen las siguientes condiciones:
Una tarea programada se ejecuta durante al menos tres días consecutivos.
Los datos de entrada en una subconsulta pública superan 1,000,000 filas.
La subconsulta pública contiene operadores que reestructuran datos, como JOIN o agregación (AGG).
En la parte superior de la página, seleccione un Workspace y luego haga clic en la pestaña Materialized View Recommendation.
-
Ajuste los criterios de filtro, como Project y Analysis Time Interval, para buscar recomendaciones disponibles.
Si hay recomendaciones disponibles dentro del Analysis Time Interval especificado, puede consultar la siguiente información.
Otros criterios de filtro incluyen Data Source Type, Source Table Name, affected task node, Operation Type, recommendation rating y operation status. La tabla de resultados también incluye columnas para Input Data Volume, compute capacity, Analysis Time y Number of Materialized Views. En la columna Actions, puede hacer clic en Create Materialized View.
Parámetros clave:
-
El identificador de tarea en la columna Materialized View Recommendation contiene un resumen de la subconsulta pública. El formato es
Aggregate: xx; Inputs: xx, xx;, donde:Aggregate: Indica si la subconsulta pública recomendada incluye una operación de agregación.
Inputs: Enumera los nombres de todas las tablas de origen utilizadas por la subconsulta pública.
Number of Possibly Affected SQL Statements: El número de otros trabajos de tarea que utilizan la subconsulta pública.
Number of Affected Nodes: El número de nodos de programación que utilizan la subconsulta pública.
Recommendation Rating: Calculada con base en la frecuencia de la subconsulta, su complejidad y el número de registros de entrada.
-
-
Haga clic en un identificador de tarea en la columna Materialized View Recommendation para ver detalles sobre la subconsulta, incluyendo Source Table Information, la Public Subquery y los Job y Scheduling Tasks relacionados.
La sección Source Table Information incluye el nombre de la tabla, el propietario de la tabla y la tarea del nodo que produce los datos de la tabla. El área Impact Assessment está organizada en las pestañas Jobs y Scheduling Tasks. La pestaña Jobs muestra métricas como Job ID, MaxCompute Project, Workspace, Runtime, CU Consumption y Compute Capacity. También proporciona opciones para View Code y Execution Details.
Paso 3: Crear una vista materializada
Según sus requisitos empresariales y los detalles de la recomendación, decida si desea crear una vista materializada en la página Materialized View Recommendation. De ser así, haga clic en Create Materialized View en la columna Actions.
-
En la página Create Materialized View, configure los parámetros de la vista materializada.
-
Configuración - Create Materialized View: Cree un nodo de vista materializada y genere una vista materializada basada en la subconsulta común de las tareas de entrada.
Parámetro
Descripción
Input Table
Detectado automáticamente. No se requiere modificación.
Create Materialized View
Cuando crea una vista materializada por primera vez, este valor se establece en Create Materialized View de forma predeterminada.
NotaSi ya existe una vista materializada con las mismas tablas de entrada, puede seleccionar Select Existing Materialized View según sea necesario.
Materialized View Name
Introduzca un nombre personalizado.
lifecycle
Valores válidos: 1 Day, 7 Days y Custom Days.
refresh type
El método de actualización para la vista materializada.
-
Refresh at Fixed Interval
Si la tabla de origen es un resultado de una tarea de DataWorks, se utiliza Time Management Cron Mode de forma predeterminada. De lo contrario, se usa una actualización de intervalo fijo.
-
Time Management Cron Mode
La hora de actualización toma como valor predeterminado la hora de resultado más reciente del nodo generador de la tabla de origen ascendente.
-
Do Not Refresh
Preview Statement
Obtenga una vista previa de la sentencia SQL para la vista materializada.
-
-
(Opcional) Configuración - Create Materialized View Refresh Node: Cree un nodo que pueda actualizar dinámicamente la vista materializada. Cuando la tarea de la tabla de origen genera nuevos resultados, se activa la actualización para incorporar los datos más recientes a la vista materializada.
Configure Materialized View Refresh Node Name y Node Running Timeout Period. El panel de configuración incluye los siguientes campos: Input Table, que muestra las tablas de entrada asociadas y sus ID de nodo de salida; Materialized View Refresh Node Name (obligatorio), que admite agregar automáticamente un sufijo de marca de tiempo, por ejemplo,
dgc_mv_1716775015179; y Node Running Timeout Period (obligatorio), cuyo valor predeterminado es 60 minutos. -
(Opcional) Configuración - Add Materialized View Refresh Node as Ancestor Node: Para nodos con cálculos similares, agregue el nodo de actualización como una dependencia de programación ascendente para mejorar la tasa de aciertos de consulta en datos incrementales. En el área Add Materialized View Task Dependency:
Esta área muestra el número de nodos de tarea afectados en el espacio de trabajo actual y en otros espacios de trabajo. Puede hacer clic en View Details para ver información específica de los nodos de tarea.
El cuadro de diálogo de detalles del nodo de tarea incluye campos como Task ID, Task Name, Owner, Affected Baselines/Highest Level, Task Type, Schedule Type y Last Modified Time.
-
-
Haga clic en Create and Execute. DataWorks comienza a crear la vista materializada. Puede supervisar el estado de creación en la columna Status de la página Materialized View Recommendation o hacer clic en View Details en la columna Actions para ver el progreso detallado.
-
El Status puede ser uno de los siguientes:
To Be Created: La creación de la vista materializada no se ha iniciado a través de DataWorks.
Created: La vista materializada se creó correctamente.
Creating: El proceso de creación se inició en DataWorks pero aún no ha finalizado.
Create Failed: El proceso de creación se inició en DataWorks pero falló.
-
Haga clic en View Details para mostrar los detalles de la creación.
En la página de detalles de creación, la sección Plan Information muestra el espacio de trabajo, el creador, el estado y la hora de creación. La sección Process Details enumera cinco pasos: Start Creation, Create Materialized View, Create Materialized View Refresh Node, Add Materialized View Task Dependency y Complete Creation. Cada paso muestra Execution Successful, y el estado general es Completed.
-
Si configura las opciones Create Materialized View Refresh Node y Add Materialized View Refresh Node as Ancestor Node, se agrega un nuevo nodo de actualización de vista materializada antes de los nodos con cálculos similares en el flujo de trabajo de la tarea correspondiente. El propietario de este nuevo nodo es el usuario que creó la vista materializada.
Paso 4: Gestionar vistas
Puede gestionar las vistas materializadas creadas a partir de recomendaciones dentro de su espacio de trabajo. Esto incluye comprobar sus tasas de aciertos y analizar o eliminar cualquier vista que no funcione como se espera.
En la parte superior de la página, seleccione un Workspace y luego haga clic en la pestaña Materialized View Management.
-
Ajuste los criterios de filtro, como Project, para ver las vistas materializadas que se crearon a partir de recomendaciones.
Otros criterios de filtro incluyen Data Source Type, Materialized View Name, Creation Time y owner. La tabla también muestra métricas como Calls in Previous Day, Total Time Saved y total saved CU-hours. También se admite la operación Batch Delete.
ImportanteSi la cuota de su proyecto de MaxCompute se basa en el modelo de facturación pay-as-you-go, se aplica la siguiente fórmula:
Total saved compute capacity = Input data volume × SQL complexity. Las tarifas de los trabajos SQL de MaxCompute se calculan mediante la fórmula:compute capacity × Unit price. Para obtener más información, consulte Computing fees (pay-as-you-go).-
Haga clic en un identificador de vista materializada en la columna Materialized View para ver sus detalles.
La página de detalles de la vista materializada muestra la siguiente información: nombre de la vista materializada (por ejemplo,
dgc_mv_1716775189582), tipo de origen de datos, descripción de la tabla, propietario, número de lecturas, resultado de la tarea de línea base, tipo de tabla y número de nodos descendientes directos. La sección Basic Information incluye hora de creación, hora de última actualización, ciclo de vida, tamaño lógico, número de filas de datos, información de partición y tarea de salida. La sección Materialized View Properties incluye un enlace para ver el código, la hora de la última actualización, la frecuencia de actualización predeterminada y el nodo de actualización asociado. La sección Materialized View Tasks proporciona estadísticas como recuento de aciertos, tiempo de ejecución, tiempo de ejecución ahorrado, CUs de cómputo, CUs ahorradas y capacidad de cómputo, que se pueden consultar agrupando por dimensión y rango de tiempo. Puede hacer clic en Delete en la columna Actions para eliminar una vista materializada.
-