博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在 MaxCompute UDF 中运行 Scipy
阅读量:6801 次
发布时间:2019-06-26

本文共 849 字,大约阅读时间需要 2 分钟。

hot3.png

新版 MaxCompute Isolation Session 支持 Python UDF。也就是说,Python UDF 中已经可以跑二进制包。刚才以 Scipy 为例踩了一下坑,把相关的过程分享出来。

下载 Scipy 包并上传资源

首先,从 PyPI 或其他镜像下载 Scipy 包。你需要下载后缀为“cp27-cp27m-manylinux1_x86_64.whl”的包,其他的包会无法加载,包括名为“cp27-cp27mu”的包。以下的截图来自  ,仅有打勾的包可以直接使用:

image

下载 whl 后,将文件名更改为 scipy.zip。此后,在 MaxCompute Console 中执行

add archive scipy.zip;

此后,scipy.zip 即被创建为 MaxCompute Archive 资源。不建议使用其他类型的资源,因为在执行时,MaxCompute 会自动解压 Archive 类型的资源,从而省去手动解压的步骤。

从非 Whl 包生成 Whl 包

如果列出的包中包含 Whl,则可以直接上传并跳过此步骤。如果列出的包不包含 whl(如手中仅有图中的 scipy-0.19.0.zip),需要在 Linux 环境中手动编译并打包为 whl。打包前,需要确保下列命令返回“cp27m”而不是“cp27mu”:

python -c "import pip; print pip.pep425tags.get_abi_tag()"

如果返回值为“cp27mu”,你需要使用 “--enable-unicode=no" 选项编译一个可用的 Python 2.7,再使用编译得到的 Python。如果返回值正确,通常可以在该环境下使用

python setup.py bdist_wheel

完成,具体请参考各个包的编译/安装说明。

打包完成后,将生成的 whl 包上传。

转载于:https://my.oschina.net/u/3611008/blog/1930786

你可能感兴趣的文章
《配置管理最佳实践》——1.6 工具的选择
查看>>
前端工程师如何快速的开发一个微信JSSDK应用
查看>>
Apache Spark源码走读(九)如何进行代码跟读&使用Intellij idea调试Spark源码
查看>>
【好书试读】数据有度:场景时代的内容玩法
查看>>
mysql 主从设计
查看>>
mybatis使用数组批量删除
查看>>
npm scripts 使用指南
查看>>
架构师速成8.1-谈做技术人员的态度
查看>>
千金药方——MongoDB疑难杂症的分析和优化
查看>>
【Hadoop Summit Tokyo 2016】为什么我的Hadoop集群运行这么慢?
查看>>
Android应用安全开发之浅谈网页打开APP
查看>>
阿里云MongoDB Sharding备份和恢复服务深度解密
查看>>
tr命令学习(shell)
查看>>
在SQL 2005中用T-SQL插入中文数据时出现的问号或乱码的解决方案[转]
查看>>
验证码对抗之路及现有验证机制介绍
查看>>
数据库记录安全解决方案
查看>>
[LeetCode] Repeated DNA Sequences
查看>>
Angularjs 源码分析3
查看>>
撕下 Coding iPad 悬赏单的小小感触
查看>>
从文件路径中获取文件名的方法
查看>>