资源管理

最近更新时间:2026-06-17 17:16:55

我的收藏

功能概述

资源管理功能支持将文件存储到腾讯云对象存储(COS)中进行统一管理,并在脚本开发、计算任务开发、函数开发等场景中引用这些资源。支持的资源类型包括 .jar、.zip、.csv、.sh、.py、.kjb、.ktr 等常用文件格式。
WeData 提供两种资源接入方式:
本地上传:将本地文件上传至 COS 存储桶,由 WeData 进行托管。
从 COS 注册:直接将已存储在 COS 上的文件注册为 WeData 资源,无需重复上传。

前提条件

已开通 WeData 服务并创建项目空间。
已开通腾讯云对象存储(COS)服务,并已创建至少一个 COS 存储桶。
当前用户对所选 COS 存储桶或存储路径拥有读写权限。

配置项目的资源管理存储桶

在新建资源(本地上传)之前,建议先在项目管理中配置“资源管理存储”,以确定本项目下本地上传的资源应存放在哪些存储桶。
1. 在 WeData 控制台顶部进入项目列表 > 选择目标项目 > 项目管理
2. 在左侧导航栏选择基本信息配置,点击右侧的数据开发配置页签。
3. 资源管理存储配置项中选择存储模式:
配置项
说明
所有存储桶
默认选项。新建资源时,可在下拉框中选择当前主账号下的任意存储桶。但仅当用户对该存储桶有权限时才能上传成功。
指定存储桶
选中后需在右侧下拉框中选择一个具体的存储桶。配置后,本项目下所有“本地上传”类型的资源都将统一存储到该存储桶,新建资源页面不再允许修改存储桶。
说明:
选择“指定存储桶”时,请确保所有项目成员都对该存储桶有权限,否则成员上传资源时会失败。

新建资源

WeData 提供两种新建资源的入口:从资源管理面板新建、从 Python 任务中导出。

方法一:在资源管理中新建资源

步骤 1:进入资源管理

2. 在 WeData 控制台顶部进入项目列表 > 找到目标项目 > 进入离线开发
3. 在左侧导航栏选择资源管理
4. 在资源管理目录树中,单击右上角的新建图标,选择新建资源

步骤 2:填写资源信息

在弹出的新建资源对话框中按需填写以下信息:
参数
说明
是否必填
资源名称
自定义资源名称,用于在 WeData 中标识该资源。
目标文件夹
资源在资源管理目录树中的存放位置,默认为“共享区”。
资源来源
选择资源的接入方式:本地上传从 COS 注册。默认为本地上传。
不同资源来源对应的字段有所不同,详情请参见下面的步骤 3。

步骤 3:根据资源来源完成上传或注册

资源来源 = 本地上传
参数
说明
上传资源
单击点击上传,从本地选择需要上传的文件。
存储桶
选择文件最终存放的 COS 存储桶。
若项目配置为“指定存储桶”,此处自动填充并锁定,不允许修改。如需修改请前往 项目管理-基本信息配置-数据开发配置”。
若项目配置为“所有存储桶”,可下拉选择当前主账号下的任意存储桶;若所选存储桶当前账号无权限,下方会提示“暂无该存储桶权限,请联系管理员进行授权”。
警告:
本地上传方式暂不支持 COS 元数据加速桶,如选择了该类存储桶将无法上传成功。
资源来源 = 从 COS 注册
参数
说明
存储路径
单击去选择,在 COS 路径选择器中选择目标文件所在的 COS 路径(格式形如 cosn://{bucket}/{path}/{file})。可选范围为当前账号在 COS 上有权限的任意路径。
“从 COS 注册”方式不会复制文件,WeData 仅维护文件的元数据引用。

步骤 4:完成创建

填写完成后,单击确认,即可完成资源新建。完成后可在资源管理目录中找到该资源,并在资源详情页查看其详细信息。

方法二:从 Python 任务中导出

1. 进入数据开发 > 编排空间,打开任意 Python 任务。
2. 在 Python 任务的代码编辑器中编辑所需的资源内容。
3. 单击编辑器上方操作栏的导出为资源
4. 在弹窗中选择导出方式:
新建资源:将当前 Python 任务中的代码导出为一个新的资源。
覆盖已有资源:选择已有资源,将当前 Python 代码内容覆盖到目标资源。
5. 填写配置信息后单击确认,即可创建资源或替换已有资源的内容。
注意:
导出的资源内容是“点击导出为资源”时 Python 任务代码编辑器中的当前内容,而非保存内容或提交版本内容。

资源管理操作

在资源管理目录树和资源列表中,可对资源进行如下管理操作:
操作入口
操作说明
目录右上角新建图标
新建文件夹、新建资源项。
目录右上角批量删除图标
进入批量删除模式,勾选多个资源后统一删除。
资源行右侧更多图标
对单个资源执行打开、重命名、删除、下载、引用资源等操作。
双击资源
进入资源详情页,查看资源属性,并可重新上传资源。

查看资源详情

双击资源后进入详情页,可查看以下属性:
属性
说明
资源名称
资源在 WeData 中的名称。
资源 ID
系统生成的资源唯一标识。
资源来源
标识资源的接入方式:本地上传从 COS 注册
资源类型
资源文件对应的类型,例如 pyjarcsv 等。
存储桶地域
资源所在 COS 存储桶的地域,例如 ap-shanghai
资源路径
资源在 WeData 资源管理目录中的相对路径,用于在任务中引用。
存储路径
资源在 COS 上的实际存储路径,格式形如 cosn://{bucket}/{path}/{file}
文件大小
资源文件的大小。
创建用户
资源的创建者。
最后更新用户
最近一次更新该资源的用户。
创建时间
资源的创建时间。
最后更新时间
资源最近一次更新的时间。
资源详情页左上角同时提供重新上传按钮,可使用新文件覆盖当前资源内容(仅适用于“本地上传”类型的资源)。

引用资源

在资源详情页或资源右键菜单中选择引用资源,会自动将当前资源的引用代码插入到当前打开的任务代码中,无需手动拼写路径。
不同任务类型对应的引用代码格式如下:
任务类型
代码格式
编排空间 / 开发空间:Shell、Python
##@resource_reference("资源管理路径/资源名称")

删除资源

本地上传 类型的资源:删除资源时,会同时删除 WeData 元数据和 COS 上对应的文件。
从 COS 注册 类型的资源:删除资源时,仅删除 WeData 元数据,不会删除 COS 路径上的源文件,避免误删用户在 COS 上的原始数据。
注意:
被任务引用的资源无法被删除,请先解除引用关系后再执行删除。

标准模式下的资源同步

在项目“标准模式”(开发/生产环境隔离)下,资源在两环境间的同步行为如下:
本地上传:在开发环境上传的资源,需通过发布流程发布到生产环境。
从 COS 注册:在开发环境注册一个资源后,生产环境会自动生成同名资源,COS 上的文件本身无需复制。

引用资源示例

在 Python 中使用资源文件中的 Python 文件

1. 准备一个本地的 Python 脚本,文件名为 demo.py
## demo.py
def print_method():
print("hello, world")

if __name__ == "__main__":
print("This is demo.py")
print_method()
2. demo.py 上传到 WeData 资源管理的某个文件夹中(例如 lib)。
3. 在编排空间中新建 Python 任务(例如 python_demo),打开目标资源,在更多操作中选择引用资源,资源路径会自动写入到任务代码中。例如:
##@resource_reference("lib/demo.py")
4. demo.py 作为模块导入并调用其中的方法:
##@resource_reference("lib/demo.py")
import sys
import os
sys.path.append(os.path.dirname(os.path.abspath('lib/demo.py')))
import demo
demo.print_method()
5. 测试运行任务,查看执行日志确认引用生效。

在 Shell 中调用 Python 脚本

1. 在编排空间中新建 Shell 任务。
2. 打开 Python 资源文件,在更多操作中选择引用资源,将资源路径插入 Shell 任务代码中。
3. 在 Shell 任务中通过 python 命令调用脚本:
##@resource_reference("lib/demo.py")
#!/bin/bash
python lib/demo.py
4. 测试运行任务,查看执行日志确认输出符合预期。

常见问题

本地上传时存储桶下拉框中没有任何选项怎么办?

请确认项目管理中资源管理存储的配置:
若配置为“指定存储桶”,请联系项目管理员检查指定的存储桶是否仍然存在。
若配置为“所有存储桶”,请确认当前主账号下已创建 COS 存储桶,并且当前子账号对相应存储桶有读写权限。

上传资源时提示“暂无该存储桶权限”?

当前用户对所选存储桶没有写入权限,请联系主账号或管理员通过 CAM 授权后重试。

从 COS 注册的资源被删除后,COS 文件会被删除吗?

不会。从 COS 注册的资源在 WeData 中删除时,仅删除元数据,不会删除 COS 路径上的源文件。