DataStudio le permite gestionar los recursos de sus proyectos de MaxCompute. Puede cargar un archivo desde su computadora local o desde Object Storage Service (OSS) para crear un recurso y, posteriormente, registrarlo como función para utilizarlo en nodos de desarrollo de datos. Este tema describe cómo crear y gestionar distintos tipos de recursos y funciones de MaxCompute.
Requisitos previos
Cuenta con bound a MaxCompute compute resource.
-
Ha preparado los archivos de recursos obligatorios. Puede cargar estos archivos desde su computadora local u obtenerlos de OSS. Si carga archivos desde OSS para crear recursos, se deben cumplir las siguientes condiciones:
-
Ha activado OSS, ha creado un bucket y ha almacenado los archivos de recursos necesarios en dicho bucket de OSS. Para más información, consulte Create a bucket y Simple upload.
NotaPara obtener información sobre los archivos de recursos compatibles, consulte Resource description.
La cuenta de Alibaba Cloud utilizada para cargar los archivos debe tener permisos para acceder al bucket de destino. Para evitar errores de permisos, grant the necessary permissions to the account antes de cargar los archivos.
-
Acceso a la gestión de recursos
Vaya a la página de Workspaces en la consola de DataWorks. En la barra de navegación superior, seleccione la región deseada. Localice el espacio de trabajo correspondiente y elija en la columna Actions.
En el panel de navegación izquierdo, haga clic en el icono de Resource Management
para ir a la página de Resource Management.En la página de Resource Management, haga clic en el icono
para crear un recurso o una función. Alternativamente, puede crear primero un directorio para organizar sus recursos; para ello, haga clic en Create Directory. Luego, haga clic derecho en el directorio de destino, seleccione Create y elija el tipo de recurso o función que desea crear.
Creación y gestión de recursos
Descripción general de recursos
Los Resources constituyen la base para implementar funciones de UDF o MapReduce en MaxCompute. En DataStudio, puede usar la interfaz visual para cargar recursos almacenados en su computadora local o en OSS. MaxCompute puede leer y utilizar estos recursos al ejecutar funciones definidas por el usuario (UDF) y MapReduce. Se admiten los siguientes tipos de recursos de MaxCompute.
La carga de recursos en MaxCompute mediante DataWorks genera storage fees de MaxCompute.
|
Tipo |
Descripción |
|
Python |
Script de Python utilizado para registrar una UDF de Python. La extensión del archivo debe ser |
|
JAR |
Paquete Java Archive (JAR) compilado que se usa para ejecutar un programa Java. La extensión del archivo debe ser |
|
Archive |
Archivo comprimido. Los formatos compatibles incluyen |
|
File |
Al crear un recurso de tipo |
Límites
Se aplican los siguientes límites al cargar recursos:
-
Tamaño del recurso:
Edición en línea: El tamaño máximo es de 10 MB para un recurso de Python y 500 KB para un recurso de tipo File.
Carga desde un archivo local: El tamaño máximo para un solo recurso es de 500 MB.
Carga desde un archivo de OSS: El tamaño máximo para un solo recurso es de 500 MB.
-
Publicación de recursos: Si utiliza un standard mode workspace, debe publicar el recurso en el entorno de producción antes de poder usarlo.
NotaLa configuración del origen de datos puede diferir entre el entorno de desarrollo y el de producción. Antes de consultar tablas o utilizar recursos, compruebe la configuración del origen de datos correspondiente al entorno actual.
Gestión de recursos: En DataWorks, solo puede consultar y gestionar los recursos que se cargaron a través de la interfaz de usuario de DataWorks.
Crear un recurso
Puede cargar recursos de MaxCompute desde su computadora local o desde OSS. Después de crear un recurso, puede referenciarlo directamente en el desarrollo de datos o crear una función a partir de él.
En la página de Resource Management, cree un recurso; esto abrirá el cuadro de diálogo Create Resource and Function. Configure el Type del recurso, la Path de almacenamiento y el Name del recurso.
-
Cargue un archivo local o de OSS como origen. La siguiente tabla describe los parámetros clave.
Parámetro
Descripción
File Source
El origen del archivo de destino. Las opciones incluyen Local y OSS.
File Content
-
Si selecciona Local, haga clic en Click Upload en la sección Document Content para cargar un archivo local.
-
Si selecciona OSS, seleccione el archivo de OSS de destino en la lista desplegable de Document Content.
Data Source
Seleccione el origen de datos al que pertenece el recurso de MaxCompute.
-
En la barra de herramientas superior, Save y luego Publish el recurso. Solo los recursos published pueden utilizarse en el desarrollo de datos.
Uso de recursos
Después de crear un recurso, puede referenciarlo al editar un nodo de desarrollo de datos. En el panel de navegación izquierdo, haga clic en Resource Management. Localice el recurso o la función de destino, haga clic derecho sobre él y seleccione Insert Resource Path. Esto agrega una sentencia de referencia con el formato ##@resource_reference{"ResourceName"} al nodo.
Por ejemplo, un nodo PyODPS 3 muestra la referencia como ##@resource_reference{"example.py"}. El formato de la referencia varía según el tipo de nodo. La visualización real tiene prioridad.
Además de usar un recurso directamente, también puede create a function a partir del recurso y luego utilizar la función en sus nodos de desarrollo.
Gestión de recursos
En DataWorks, solo puede consultar y gestionar los recursos que se cargaron mediante la interfaz de usuario de DataWorks. En la página de Resource Management, haga clic en un recurso para realizar operaciones de gestión.
-
Consultar versiones históricas: Puede ver y comparar versiones publicadas de un recurso para rastrear cambios entre versiones.
NotaPara comparar versiones, debe seleccionar como mínimo dos versiones.
Eliminar un recurso: Esta operación elimina el recurso únicamente del entorno de desarrollo. Para eliminar el recurso del entorno de producción, debe publicar la tarea de eliminación. Una vez publicada la tarea, el recurso se elimina del entorno de producción. Para más información, consulte Publish a task.
-
Consultar otros recursos.
MaxCompute puede contener recursos cargados por métodos distintos a DataWorks. Puede consultar estos recursos de las siguientes maneras:
-
Utilice el data catalog para consultar todos los recursos de un proyecto de MaxCompute.
Después de agregar un proyecto de MaxCompute al catálogo de datos, puede navegar hasta la carpeta del proyecto en el catálogo y ver todos sus recursos en el directorio de recursos.
-
Utilice un MaxCompute SQL node para consultar otros recursos en el proyecto de MaxCompute.
-
Para ver todos los recursos del proyecto actual, ejecute el siguiente comando en un nuevo script de MaxCompute SQL. De forma predeterminada, el comando accede al recurso de cómputo de MaxCompute vinculado al entorno de desarrollo.
list resources; -
Para ver todos los recursos de un proyecto específico, ejecute los siguientes comandos:
use <maxcompute_project_name>; list resources;
Para más información sobre los comandos de recursos, consulte Resource operations.
-
-
Creación y gestión de funciones
Antes de crear una función, asegúrese de contar con created a resource.
Al preparar un archivo de recursos de MaxCompute, puede consultar UDF Development (Java) y UDF Development (Python 3).
Descripción general de funciones
En DataStudio, puede usar la Gestión de Recursos y Funciones para registrar recursos como funciones. En el desarrollo de datos o en consultas SQL, puede usar Create a function para convertir recursos cargados y publicados en funciones, crear funciones integradas mediante JAVA, PYTHON2 o PYTHON3, o bien use MaxCompute built-in functions directamente.
Crear una función
En la página de Resource Management, cree una función; esto abrirá el cuadro de diálogo Create Resource and Function. Configure el Type de la función, la Path de almacenamiento y el Name de la función.
-
Configure los ajustes de la función.
Antes de configurar una función de MaxCompute, asegúrese de que el proyecto de MaxCompute esté registrado como recurso de cómputo en DataWorks y de que se hayan cargado los recursos de MaxCompute necesarios. La siguiente tabla describe los parámetros clave para una función de MaxCompute.
Parámetro
Descripción
Function type
El tipo de la función. Los valores válidos incluyen MATH (matemática), AGGREGATE (agregada), STRING (cadena), DATE (fecha), ANALYTIC (ventana) y OTHER.
Class Name
El nombre de clase de la UDF, en formato
resource_name.class_name. El nombre del recurso puede ser un nombre de paquete de Java o un nombre de recurso de Python.DataWorks admite la creación de UDF a partir de recursos JAR y Python. El formato del nombre de clase varía según el tipo de recurso:
-
Si el recurso es un archivo JAR, el formato del Class Name es
JavaPackageName.ActualClassName. Puede obtener este valor desdeIntelliJ IDEAmediante la acciónCopy Reference.Por ejemplo, si el nombre del paquete de Java es
com.aliyun.odps.examples.udfy el nombre real de la clase esUDAFExample, establezca el parámetro Class Name encom.aliyun.odps.examples.udf.UDAFExample. -
Si el recurso es un archivo de Python, el formato del Class Name es
PythonResourceName.ActualClassName.Por ejemplo, si el nombre del recurso de Python es
LcLognormDist_shy el nombre real de la clase esLcLognormDist_sh, establezca el parámetro Class Name enLcLognormDist_sh.LcLognormDist_sh.
Nota-
No incluya la extensión de archivo
.jaro.pyen el nombre del recurso. -
Debe enviar y publicar el recurso antes de poder utilizarlo.
Type
Puede seleccionar Resource function o Embedded function:
-
Si selecciona Resource function, solo necesita configurar la Resource List.
-
Si selecciona Embedded Function, también debe especificar el Language (se admiten
JAVA,PYTHON2yPYTHON3) y proporcionar el Code, además de la Resource List.
Resource List
Seleccione los recursos necesarios para registrar la función.
-
Modo visual: Solo puede seleccionar recursos que ya estén cargados o creados en DataWorks.
-
Modo script: Puede introducir cualquier recurso que exista en el origen de datos. Si la UDF utiliza varios recursos, separe los nombres de los recursos con una coma (,).
Nota-
No es necesario introducir la ruta completa para los recursos agregados.
-
Puede usar el modo script para especificar manualmente recursos que no se pueden cargar a través de la interfaz visual, como recursos de tabla o aquellos gestionados fuera de DataWorks.
Command Format
Un ejemplo de uso para la UDF.
-
En la barra de herramientas superior, Save y luego Publish la función. Solo una función published puede utilizarse en el desarrollo de datos.
Uso de funciones
Uso de funciones definidas por el usuario
Después de crear y publicar una función, puede referenciarla directamente en el desarrollo de datos o en una consulta SQL.
-
Al editar un nodo de desarrollo de datos, haga clic en Resource Management en el panel de navegación izquierdo. Localice la función de destino, haga clic derecho sobre ella y seleccione Insert Function.
El nombre de la función, como
example_function(), se inserta automáticamente en el editor. Al editar una consulta SQL, puede usar la función creada directamente en su sentencia SQL.
SELECT example_function(column_name) FROM table;
Uso de funciones integradas
DataWorks admite dos tipos de funciones: funciones definidas por el usuario y funciones integradas de MaxCompute. Puede view built-in functions by category o in alphabetical order.
Notas: Para obtener información sobre el uso de funciones integradas, consulte Notes.
Límites: Para obtener información sobre los límites de las funciones integradas, consulte JSON function limits y Built-in function overview.
-
Puede consultar las funciones integradas de una de las siguientes tres maneras:
-
Ejecute el siguiente comando en un nodo de MaxCompute SQL:
show builtin functions [<function_name>]; --<function_name> specifies the name of a built-in function.Nota<function_name>es un marcador de posición. Reemplácelo con el nombre de una función integrada específica.Si ejecuta el comando
show builtin functions;mediante el cliente de MaxCompute (odpscmd), la versión del cliente debe ser 0.43.0 o posterior.
-
Para casos de uso típicos de funciones integradas, consulte los siguientes temas:
-
Para resolver rápidamente problemas con funciones integradas, consulte los siguientes temas:
Gestión de funciones
En la página de Resource Management, haga clic en una función para realizar operaciones de gestión.
-
Consultar versiones históricas: En el lado derecho del editor de funciones, haga clic en el icono de versiones. Puede ver y comparar versiones guardadas o enviadas de una función para rastrear cambios.
NotaPara comparar versiones, debe seleccionar como mínimo dos versiones.
-
Eliminar una función: Haga clic derecho en la función de destino y seleccione Delete.
Para eliminar la función del entorno de producción, debe publicar la eliminación. La función se elimina del entorno de producción una vez completada la publicación. Para más información, consulte Publish a task.
Consulta de funciones definidas por el usuario
// View the functions in the MaxCompute project that is bound to the DataWorks workspace.
SHOW FUNCTIONS;
Consulta de detalles de funciones definidas por el usuario
-
Utilice el comando
DESCRIBEo su abreviaturaDESC, seguido del nombre de la función, para consultar los detalles de una UDF.// Use the abbreviated form to view the details of a user-defined function. DESC FUNCTION <function_name>; Si las funciones existentes en DataWorks no satisfacen sus requisitos empresariales, puede crear una UDF de MaxCompute. Posteriormente, puede cargar y asociar recursos, como paquetes JAR o archivos de Python, para ampliar sus capacidades de procesamiento de datos.
Preguntas frecuentes
P: Cargué un recurso mediante DataWorks y lo definí como una UDF. ¿Puedo usar esta UDF en consultas SQL de DataAnalysis además de utilizarla en nodos de MaxCompute SQL durante el desarrollo de datos?
R: Sí. Las UDF registradas en DataWorks se almacenan en el proyecto subyacente de MaxCompute. Por lo tanto, puede utilizarlas tanto en MaxCompute SQL nodes como en la función SQL Query (legacy version) de DataAnalysis.