El análisis automático lee las sentencias SQL en el código de un nodo para inferir las dependencias de programación. Esta función agrega salidas o nodos antecesores automáticamente sin necesidad de configuración manual. Este tema describe cómo funciona el análisis automático para cada tipo de nodo y enumera los escenarios en los que no es compatible.
Funcionamiento del análisis automático
DataWorks examina las sentencias SQL en el código de un nodo. Según las palabras clave SQL que encuentra, DataWorks determina qué datos lee y escribe el nodo:
Sentencias de escritura (CREATE, INSERT y similares): DataWorks agrega una salida al nodo. El nombre de la salida identifica la tabla en la que escribe el nodo.
Sentencias de lectura (SELECT): DataWorks agrega un nodo antecesor al nodo. El nombre del nodo antecesor identifica la tabla ascendente que se lee.
Por ejemplo, si el Nodo A escribe en orders_clean y el Nodo B lee desde orders_clean, DataWorks establece automáticamente el Nodo A como antecesor del Nodo B, sin necesidad de configurar dependencias manualmente.
Configuración por tipo de nodo
A continuación se muestra una tabla con las sentencias SQL que activan el análisis automático y el formato del nombre de salida o nodo antecesor que genera DataWorks.
|
Tipo de nodo |
Sentencia SQL |
Elemento agregado por DataWorks |
Formato del nombre de salida |
|
Nodo ODPS |
CREATE, INSERT |
Salida |
|
|
Nodo ODPS |
SELECT |
Nodo antecesor |
|
|
Nodo SQL (no ODPS) |
CREATE, INSERT, ALTER, UPDATE |
Salida |
Consulte la siguiente tabla |
|
Nodo SQL (no ODPS) |
SELECT |
Nodo antecesor |
|
|
Nodo de sincronización por lotes |
Todas |
No compatible |
Configure manualmente las dependencias de programación |
Formatos de nombre de salida para nodos SQL no ODPS:
|
Motor |
Formato |
|
E-MapReduce (EMR) |
|
|
AnalyticDB for PostgreSQL |
|
|
AnalyticDB for MySQL |
|
|
Hologres |
|
Componentes del formato de nombre:
|
Marcador de posición |
Descripción |
|
|
El espacio de trabajo de DataWorks al que pertenece el nodo ODPS |
|
|
El espacio de trabajo propietario del nodo que genera la tabla |
|
|
El espacio de trabajo de DataWorks al que pertenece el nodo |
|
|
La base de datos en la que se escriben los datos |
|
|
El esquema del nodo |
|
|
El nombre de la tabla generada |
Limitaciones
El análisis automático no se aplica en los siguientes escenarios. En estos casos, agregue manualmente la tabla a la salida del nodo.
Tipos de nodo no compatibles
Algunos tipos de nodo no admiten el análisis automático. Por ejemplo, los nodos de sincronización por lotes y los nodos de AnalyticDB for PostgreSQL no pueden usar el análisis automático para configurar dependencias de programación. Las tablas generadas por estos nodos deben agregarse manualmente a las salidas del nodo.
Para comprobar si un tipo de nodo específico admite el análisis automático, abra el nodo en la consola de DataWorks y revise su configuración.
Tablas temporales
Las tablas temporales creadas mediante sentencias SQL no se analizan automáticamente. Por ejemplo, si su espacio de trabajo trata las tablas con el prefijo t_ como tablas temporales, dichas tablas no se pueden agregar automáticamente a Output ni a Parent Nodes. Agréguelas manualmente donde sea necesario.
Tablas generadas por nodos de sincronización
Después de que un nodo de sincronización genere una tabla, agregue manualmente la tabla como salida del nodo con el formato projectname.tablename. Una vez agregada la salida, los nodos descendientes que lean dicha tabla podrán usar el análisis automático para configurar sus propias dependencias de programación.