Todos los productos
Search
Centro de documentos

:Uso de Open Data

Última actualización: Sep 04, 2026

Después de instalar el paquete Open Data de DataWorks, puede utilizar Open Data para obtener metadatos. Esto le permite preparar los datos para la gobernanza y las operaciones y mantenimiento posteriores. Este tema describe los principales casos de uso de Open Data y proporciona los comandos necesarios.

Importante

DataWorks ha lanzado una nueva versión de Open Data que permite explorar y gestionar metadatos mediante una interfaz de usuario visual. Se recomienda utilizar la versión oficial de esta función. Para más información, consulte Use Open Data.

Requisitos previos

El paquete Open Data está instalado. Para más información, consulte Install or uninstall Open Data package (The invitation-only version is about to be deprecated).

Uso

Este tema utiliza un nodo ODPS SQL en DataWorks como ejemplo para describir los comandos necesarios para obtener distintos tipos de metadatos mediante Open Data. Antes de ejecutar los comandos, vaya al editor de código de un nodo ODPS SQL. Siga estos pasos:

  1. Vaya a la página DataStudio.

    1. Inicie sesión en la consola de DataWorks.

    2. En el panel de navegación izquierdo, haga clic en Workspaces.

    3. En la página Workspaces, busque el espacio de trabajo deseado y haga clic en Data Analytics en la columna Actions.

  2. Vaya al editor de código de un nodo ODPS SQL.

    Busque Data Studio bajo el motor de cómputo MaxCompute. Haga clic con el botón derecho en Data Studio y seleccione Create > ODPS SQL para crear un nodo ODPS SQL.

Puede usar Open Data para obtener diversos tipos de metadatos:

Consulta de bases de datos creadas (proyectos de MaxCompute)

La vista raw_v_meta_database de Open Data en DataWorks se utiliza para consultar las bases de datos creadas. El comando es el siguiente.

SELECT * FROM u_meta_hangzhou.raw_v_meta_database_<version>('<business_date>');

A continuación se describen los parámetros.

  • Información de versión: La versión de Open Data que se utiliza. El formato es similar a v1_1. Puede ejecutar el comando DESCRIBE PACKAGE para consultar la versión real. Para más información, consulte View tables or views provided by Open Data.

  • Fecha de negocio: La fecha de negocio para la cual se desean ver los metadatos, en formato yyyymmdd. Si no especifica una fecha de negocio, se muestran los metadatos de todas las fechas.

El siguiente código muestra un ejemplo:

-- Query the list of databases created on January 9, 2021.
SELECT * FROM u_meta_hangzhou.raw_v_meta_database_v1_1('20210109');

Tras ejecutar esta consulta, los metadatos de la base de datos devueltos contienen los siguientes campos:

  • tenant_id

  • project_id

  • env_type

  • catalog_name

  • database_name

  • database_comment

  • owner_name

  • created_time_ts

  • last_modified_time

  • location

  • extras

  • biz_date

Para más información sobre los campos del resultado de la consulta, consulte Database (MaxCompute project) metadata: raw_v_meta_database.

Consulta de tablas en un proyecto

La vista raw_v_meta_table de Open Data en DataWorks se utiliza para consultar información sobre las tablas de un proyecto. El comando es el siguiente.

SELECT *
  FROM u_meta_hangzhou.raw_v_meta_table_<version>('<business_date>')
  WHERE catalog_name = 'your_catalog_name'
   AND database_name = 'your_database_name'
   AND table_name = 'your_table_name'
;

A continuación se describen los parámetros.

  • Información de versión: La versión de Open Data que se utiliza. El formato es similar a v1_1. Puede ejecutar el comando DESCRIBE PACKAGE para consultar la versión real. Para más información, consulte View tables or views provided by Open Data.

  • Fecha de negocio: La fecha de negocio para la cual se desean ver los metadatos, en formato yyyymmdd. Si no especifica una fecha de negocio, se muestran los metadatos de todas las fechas.

  • your_catalog_name: El catálogo correspondiente a los metadatos del motor de cómputo especificado. Establezca este parámetro en odps.

  • your_database_name: El nombre del proyecto que se va a consultar. Reemplace este valor por el nombre real del proyecto.

  • your_table_name: El nombre de la tabla que se va a consultar. Reemplace este valor por el nombre real de la tabla.

El siguiente código muestra un ejemplo:

-- Query the ods_user_info_d table in the MaxCompute project named isv2 on January 9, 2021.
SELECT *
  FROM u_meta_hangzhou.raw_v_meta_table_v1_1('20210109')
  WHERE catalog_name = 'odps'
   AND database_name = 'isv2'
   AND table_name = 'ods_user_info_d'
;

Tras ejecutar esta consulta, el resultado devuelto contiene campos como catalog_name, database_name, table_name, table_uuid, table_type, partition_keys, table_comment, table_biz_comment, visibility_scope, owner_name, entre otros, que muestran los atributos de metadatos de la tabla objetivo. Para más información sobre los campos del resultado de la consulta, consulte Table metadata: raw_v_meta_table.

Consulta de estadísticas de tablas

Las vistas rpt_v_meta_ind_table_core y rpt_v_meta_ind_table_extra de Open Data permiten consultar estadísticas de tablas, como el ID de inquilino y el ciclo de vida de la tabla. El comando es el siguiente.

SELECT c.tenant_id, c.table_uuid, c.dim_life_cycle, c.is_partition_table, c.entity_type, c.categories, c.last_access_time, c.partition_count, c.favorite_count, e.output_task_count
FROM u_meta_hangzhou.rpt_v_meta_ind_table_core_<version>('<business_date>') c 
LEFT OUTER JOIN u_meta_hangzhou.rpt_v_meta_ind_table_extra_<version>('<business_date>') e 
ON c.table_uuid = e.table_uuid AND c.tenant_id = e.tenant_id 
WHERE c.catalog_name = 'your_catalog_name'
  AND c.database_name = 'your_database_name'
  AND c.table_name = 'your_table_name'
;

A continuación se describen los parámetros.

  • Información de versión: La versión de Open Data que se utiliza. El formato es similar a v1_1. Puede ejecutar el comando DESCRIBE PACKAGE para consultar la versión real. Para más información, consulte View tables or views provided by Open Data.

  • Fecha de negocio: La fecha de negocio para la cual se desean ver los metadatos, en formato yyyymmdd. Si no especifica una fecha de negocio, se muestran los metadatos de todas las fechas.

  • your_catalog_name: El catálogo correspondiente a los metadatos del motor de cómputo especificado. Establezca este parámetro en odps.

  • your_database_name: El nombre del proyecto que se va a consultar. Reemplace este valor por el nombre real del proyecto.

  • your_table_name: El nombre de la tabla que se va a consultar. Reemplace este valor por el nombre real de la tabla.

El siguiente código muestra un ejemplo:

-- Query the statistical information of the ods_user_info_d table in the MaxCompute project named isv2 on January 9, 2021.
SELECT c.tenant_id, c.table_uuid, c.dim_life_cycle, c.is_partition_table, c.entity_type, c.categories, c.last_access_time, c.partition_count, c.favorite_count, e.output_task_count
FROM u_meta_hangzhou.rpt_v_meta_ind_table_core_v1_1('20210109') c 
LEFT OUTER JOIN u_meta_hangzhou.rpt_v_meta_ind_table_extra_v1_1('20210109') e 
ON c.table_uuid = e.table_uuid AND c.tenant_id = e.tenant_id 
WHERE c.catalog_name = 'odps'
  AND c.database_name = 'isv2'
  AND c.table_name = 'ods_user_info_d'
;

La consulta devuelve una fila de datos. En el resultado de ejemplo, dim_life_cycle es 36000, is_partition_table es true, entity_type es 0, last_access_time es 1572193547, partition_count es 190, favorite_count es 0, y output_task_count es 0.

Para más información sobre los campos del resultado de la consulta, consulte Core table metrics: rpt_v_meta_ind_table_core y Additional table metrics: rpt_v_meta_ind_table_extra.

Consulta de detalles de nodos para una tabla de salida

Puede usar las vistas raw_v_meta_table_output y raw_v_schedule_node en Open Data de DataWorks para consultar los detalles de los nodos de una tabla. El comando es el siguiente.

SELECT s.*, o.schedule_instance_id, execute_time
  FROM u_meta_hangzhou.raw_v_meta_table_output_<version>('<business_date>') o 
  LEFT OUTER JOIN u_meta_hangzhou.raw_v_schedule_node_<version>('<business_date>') s 
  ON o.schedule_task_id = s.node_id
WHERE o.type = 'your_table_type'
  AND o.database = 'your_database_name'
  AND o.table = 'your_table_name'
  AND s.project_env = 'your_project_environment'
;

A continuación se describen los parámetros.

  • Información de versión: La versión de Open Data que se utiliza. El formato es similar a v1_1. Puede ejecutar el comando DESCRIBE PACKAGE para consultar la versión real. Para más información, consulte View tables or views provided by Open Data.

  • Fecha de negocio: La fecha de negocio para la cual se desean ver los metadatos, en formato yyyymmdd. Si no especifica una fecha de negocio, se muestran los metadatos de todas las fechas.

  • your_table_type: El tipo de tabla de salida para la cual se recuperan los metadatos. Actualmente, este parámetro solo es compatible con MaxCompute. Establezca este parámetro en odps.

  • your_database_name: El nombre del proyecto que se va a consultar. Reemplace este valor por el nombre real del proyecto.

  • your_table_name: El nombre de la tabla que se va a consultar. Reemplace este valor por el nombre real de la tabla.

  • your_project_environment: Especifica el entorno del proyecto cuyos metadatos desea consultar. Establezca este valor en DEV para el entorno de desarrollo o en PROD para el entorno de producción.

El siguiente código muestra un ejemplo:

-- Query the details of the production node for the odps table named ods_user_info_d in the xc_simple_e1 project on January 9, 2021.
SELECT s.*, o.schedule_instance_id, execute_time
  FROM u_meta_hangzhou.raw_v_meta_table_output_v1_1('20210109') o 
  LEFT OUTER JOIN u_meta_hangzhou.raw_v_schedule_node_v1_1('20210109') s 
  ON o.schedule_task_id = s.node_id
WHERE o.type = 'odps'
  AND o.database = 'xc_simple_e1'
  AND o.table = 'ods_user_info_d'
  AND s.project_env = 'PROD'
;

Tras ejecutar esta consulta, el resultado devuelto muestra que la tabla ods_user_info_d es generada por el nodo de programación, con project_env igual a PROD. El resultado contiene campos que incluyen tenant_id, project_id, node_id, node_name, node_type, create_time, para_value, entre otros. Para más información sobre los campos del resultado de la consulta, consulte Table output node metadata: raw_v_meta_table_output y Scheduling node details: raw_v_schedule_node.

Consulta de nodos antecesores y descendientes

Puede usar las vistas raw_v_schedule_node y raw_v_schedule_node_relation en Open Data para consultar los nodos ascendentes y descendientes de un nodo específico. El comando es el siguiente.

-- Query the ancestor nodes.
SELECT * 
  FROM u_meta_hangzhou.raw_v_schedule_node_<version>('<business_date>') t
 WHERE t.project_env = 'your_project_environment'
   AND t.node_id IN (
     SELECT parent_node_id 
       FROM u_meta_hangzhou.raw_v_schedule_node_relation_<version>('<business_date>') r
      WHERE r.child_node_id = your_child_node_id
        AND r.project_env = 'your_project_environment'
 )
;
-- Query the descendant nodes.
SELECT * 
  FROM u_meta_hangzhou.raw_v_schedule_node_<version>('<business_date>') t
 WHERE t.project_env = 'your_project_environment'
   AND t.node_id IN (
     SELECT child_node_id 
       FROM u_meta_hangzhou.raw_v_schedule_node_relation_<version>('<business_date>') r
      WHERE r.child_node_id = your_child_node_id
        AND r.project_env = 'your_project_environment'
 )
;

A continuación se describen los parámetros.

  • Información de versión: La versión de Open Data que se utiliza. El formato es similar a v1_1. Puede ejecutar el comando DESCRIBE PACKAGE para consultar la versión real. Para más información, consulte View tables or views provided by Open Data.

  • Fecha de negocio: La fecha de negocio para la cual se desean ver los metadatos, en formato yyyymmdd. Si no especifica una fecha de negocio, se muestran los metadatos de todas las fechas.

  • your_project_environment: Especifica el entorno del proyecto cuyos metadatos desea consultar. Establezca este valor en DEV para el entorno de desarrollo o en PROD para el entorno de producción.

  • your_child_node_id: El ID del nodo que se va a consultar.

El siguiente código muestra un ejemplo:

  1. Consulte los nodos antecesores de un nodo específico en el entorno de producción.

    -- Query the list of ancestor nodes for node 1000550985 in the production environment on January 9, 2021.
    SELECT * 
      FROM u_meta_hangzhou.raw_v_schedule_node_v1_1('20210109') t
     WHERE t.project_env = 'PROD'
       AND t.node_id IN (
         SELECT parent_node_id 
           FROM u_meta_hangzhou.raw_v_schedule_node_relation_v1_1('20210109') r
          WHERE r.child_node_id = 1000550985
            AND r.project_env = 'PROD'
     )
    ;

    La consulta devuelve 1 resultado. La información del nodo antecesor es: node_id es 1000550983, node_name es workshop_start, node_type es 0, prg_type es 99, y project_env es PROD.

  2. Consulte los nodos descendientes de un nodo específico en el entorno de producción.

    -- Query the list of descendant nodes for node 1000550985 in the production environment on January 9, 2021.
    SELECT * 
      FROM u_meta_hangzhou.raw_v_schedule_node_v1_1('20210109') t
     WHERE t.project_env = 'PROD'
       AND t.node_id IN (
         SELECT child_node_id
           FROM u_meta_hangzhou.raw_v_schedule_node_relation_v1_1('20210109') r
          WHERE r.parent_node_id = 1000550985
            AND r.project_env = 'PROD'
     )
    ;

    Resultado de la consulta de ejemplo:

    Results[1]
    tenant_id | project_id | node_id    | node_name          | node_type | prg_type | flow_id | project_env | create_time   | create_user | modify_time   | modify_user | prg_name
    283xxx    | xxx        | 1000551016 | dw_user_info_all_d | 0         | 10       | 1       | PROD        | 1587465492000 | xxx         | 1596536670000 | xxx         | \N
    283xxx    | 56         | 1000551015 | ods_log_info_d     | 0         | 10       | 1       | PROD        | 1587465489000 | xxx         | 1590117450000 | xxx         | \N

Para más información sobre los campos del resultado de la consulta, consulte Scheduling node details: raw_v_schedule_node y Scheduling node relationship details: raw_v_schedule_node_relation.

Consulta de propietarios de tablas y nodos

Puede usar las vistas raw_v_meta_table y raw_v_tenant_user en Open Data de DataWorks para consultar los detalles del propietario de una tabla o nodo. Los comandos son los siguientes.

  • Consulte los detalles del propietario de una tabla.

    SELECT
        c.catalog_name,
        c.database_name,
        c.table_name,
        c.owner_name,
        u.account_name,
        u.nick
    FROM u_meta_hangzhou.raw_v_meta_table_<version>('<business_date>') c 
     LEFT OUTER JOIN u_meta_hangzhou.raw_v_tenant_user_<version>('<business_date>') u 
       ON c.owner_name = TOLOWER(u.yun_account)
     WHERE c.catalog_name = 'your_catalog_name'
       AND c.database_name = 'your_database_name'
       AND c.table_name = 'your_table_name'
    ;

    A continuación se describen los parámetros.

    • Información de versión: La versión de Open Data que se utiliza. El formato es similar a v1_1. Puede ejecutar el comando DESCRIBE PACKAGE para consultar la versión real. Para más información, consulte View tables or views provided by Open Data.

    • Fecha de negocio: La fecha de negocio para la cual se desean ver los metadatos, en formato yyyymmdd. Si no especifica una fecha de negocio, se muestran los metadatos de todas las fechas.

    • your_catalog_name: El catálogo correspondiente a los metadatos del motor de cómputo especificado. Establezca este parámetro en odps.

    • your_database_name: El nombre del proyecto que se va a consultar. Reemplace este valor por el nombre real del proyecto.

    • your_table_name: El nombre de la tabla que se va a consultar. Reemplace este valor por el nombre real de la tabla.

  • Consulte los detalles del propietario de un nodo.

    SELECT t.project_id, t.node_id, t.node_name, 
        t.create_user, u.account_name AS create_user_name, u.nick as create_user_nick,
        t.modify_user, m.account_name AS modify_user_name, m.nick as modify_user_nick
      FROM u_meta_hangzhou.raw_v_schedule_node_<version>('<business_date>') t 
    LEFT OUTER JOIN u_meta_hangzhou.raw_v_tenant_user_<version>('<business_date>') u ON t.create_user = u.yun_account
    LEFT OUTER JOIN u_meta_hangzhou.raw_v_tenant_user_<version>('<business_date>') m ON t.modify_user = m.yun_account
     WHERE t.node_id = your_node_id
       AND t.project_env = 'your_project_environment'
    ;

    A continuación se describen los parámetros.

    • Información de versión: La versión de Open Data que se utiliza. El formato es similar a v1_1. Puede ejecutar el comando DESCRIBE PACKAGE para consultar la versión real. Para más información, consulte View tables or views provided by Open Data.

    • Fecha de negocio: La fecha de negocio para la cual se desean ver los metadatos, en formato yyyymmdd. Si no especifica una fecha de negocio, se muestran los metadatos de todas las fechas.

    • your_project_environment: Especifica el entorno del proyecto cuyos metadatos desea consultar. Establezca este valor en DEV para el entorno de desarrollo o en PROD para el entorno de producción.

    • your_node_id: El ID del nodo que se va a consultar.

El siguiente código muestra un ejemplo:

  1. Consulte los detalles del propietario de una tabla el 9 de enero de 2021.

    SELECT
        c.catalog_name,
        c.database_name,
        c.table_name,
        c.owner_name,
        u.account_name,
        u.nick
    FROM u_meta_hangzhou.raw_v_meta_table_v1_1('20210109') c 
     LEFT OUTER JOIN u_meta_hangzhou.raw_v_tenant_user_v1_1('20210109') u 
       ON c.owner_name = TOLOWER(u.yun_account)
     WHERE c.catalog_name = 'odps'
       AND c.database_name = 'isv2'
       AND c.table_name = 'ods_user_info_d'
    ;
    -- Query result:
    -- catalog_name | database_name | table_name      | owner_name | account_name | nick
    -- odps         | isv2          | ods_user_info_d | xxx        | xxx          | Chexxx
  2. Consulte los detalles del propietario y del modificador de un nodo programado el 9 de enero de 2021.

    SELECT t.project_id, t.node_id, t.node_name, 
        t.create_user, u.account_name AS create_user_name, u.nick as create_user_nick,
        t.modify_user, m.account_name AS modify_user_name, m.nick as modify_user_nick
      FROM u_meta_hangzhou.raw_v_schedule_node_v1_1('20210109') t 
    LEFT OUTER JOIN u_meta_hangzhou.raw_v_tenant_user_v1_1('20210109') u ON t.create_user = u.yun_account
    LEFT OUTER JOIN u_meta_hangzhou.raw_v_tenant_user_v1_1('20210109') m ON t.modify_user = m.yun_account
     WHERE t.node_id = 1000454827
       AND t.project_env = 'PROD'
    ;
    -- Query result (Results[2]):
    -- project_id | node_id    | node_name       | create_user   | create_user_name | create_user_nick | modify_user | modify_user_name | modify_user_nick
    -- 8          | 1000454827 | rpt_user_info_d | datawxxx mo2  | datawxxxo2       | datawxxxno2      | dxxxngcui   | xiaxxx ui        | xiangxxx

Para más información sobre los campos del resultado de la consulta, consulte Scheduling node details: raw_v_schedule_node y Scheduling node relationship details: raw_v_schedule_node_relation.

Pasos siguientes

Las vistas proporcionadas por Open Data aceptan un parámetro de fecha en formato yyyyMMdd. Puede usar este parámetro para particionar datos por fecha y recuperar datos históricos de los últimos 30 días. Si necesita realizar un análisis de tendencias de métricas, puede obtener datos por fecha de negocio y guardarlos en su proyecto para análisis históricos.