在PyODPS节点中调用第三方包仅支持使用独享调度资源组。
https://help.aliyun.com/zh/dataworks/use-cases/use-a-pyodps-node-to-reference-a-third-party-package?spm=a2c4g.11186623.0.i150
使用限制
在PyODPS节点中调用第三方包仅支持使用独享调度资源组。创建及使用独享调度资源组,详情请参见独享调度资源组。
DataWorks建议您在PyODPS节点内获取到本地处理的数据不超过50 MB,该操作受限于DataWorks执行资源的不同规格(包括公共调度资源组和独享调度资源组),处理的本地数据过多并超出操作系统阈值时可能发生OOM(Got killed)错误。请避免在PyODPS节点中写入过多的数据处理代码。详情请参见高效使用PyODPS最佳实践。
如果您发现有Got killed报错,即表明内存使用超限,进程被中止。因此,请尽量避免本地的数据操作。通过PyODPS发起的SQL和DataFrame任务(除to_pandas外)不受此限制。
非自定义函数代码可以使用平台预装的Numpy和Pandas。不支持其他带有二进制代码的三方包。
由于兼容性原因,在DataWorks中,options.tunnel.use_instance_tunnel默认设置为False。如果需要全局开启instance tunnel,需要手动将该值设置为True。
在DataWorks私有云中,您可以使用pip命令来下载第三方包。然而,这需要您先申请独立资源组。具体来说,您需要在独享资源组的运维资源中进行包安装,操作命令为/home/tops/bin/pip install package-name
。
需要注意的是,虽然pip是Python官方推荐的包管理器,可以方便地下载和管理第三方库,但在DataWorks环境中,由于网络和权限等限制,直接使用pip命令可能会遇到问题。因此,推荐您按照DataWorks的官方指导进行操作,以确保过程的顺利进行。
在 DataWorks 私有云环境中,默认情况下是无法直接通过 pip 命令下载安装第三方包的。DataWorks私有云环境一般会限制外部网络访问和软件安装,以确保环境的稳定和安全。
如果您需要在 DataWorks 私有云环境中使用特定的第三方包,您可以考虑以下几种解决方案:
离线安装:如果您已经在其他环境中成功安装了所需的第三方包,您可以将已安装的包及其依赖项打包为一个压缩文件,并将该文件上传到 DataWorks 私有云环境中进行离线安装。
本地依赖包:如果所需的第三方包较小且没有太多依赖项,您可以将它们作为本地依赖包一同上传到 DataWorks 私有云环境中,并在程序中引用这些本地依赖包。
定制镜像:联系 DataWorks 私有云环境的管理员或负责维护的团队,询问是否可以定制镜像来预安装所需的第三方包。这样,在创建 DataWorks 任务时,基于该定制镜像的环境就会自动包含所需的第三方包。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。