DataWorks中udf没有读权限,空间的函数,资源权限都申请了?87706
UDF FormatStringUdf没权限
在DataWorks中,即使您已经申请了空间的函数和资源权限,UDF可能仍然没有读权限。这可能是因为您的子账号在拥有DataWorks开发者角色的前提下,并没有自建UDF的读权限。为了解决这个问题,您需要结合Project Policy来实现该UDF只能被指定的用户访问。
具体步骤如下:
编写policy:在Project Policy中,编写相应的策略来限制UDF的访问权限。
注册函数:在DataStudio数据开发工作台>业务流程>MaxCompute>函数>右键新建函数,提交并发布。
引用函数:在需要进行数据处理的地方,引用并使用这个自定义函数。
另外,如果您的UDF是Python UDF,需要通过annotate指定函数签名,并且必须实现evaluate方法。例如,如果您的UDF名为MyPlus,那么您可以这样创建和配置它:
from odps.udf import annotate
@annotate("bigint,bigint->bigint")
class MyPlus(object):
def evaluate(self, arg0, arg1):
if None in (arg0, arg1):
return None
return arg0 + arg1
然后,根据资源来配置创建函数。
如果 DataWorks 用户没有权限访问 UDF(用户定义函数),请按以下步骤检查:
建议采取以下措施:
公共云函数应该不支持直接申请权限 您可以联系owner主动授权试一下 https://help.aliyun.com/zh/maxcompute/user-guide/authorization-operations?spm=a2c4g.11186623.0.i1,此回答整理自钉群“DataWorks交流群(答疑@机器人)”
如果你在DataWorks中遇到了UDF没有读权限的问题,即使已经申请了空间的函数和资源权限,可以通过以下方法进行排查:
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。