U-SQL Python extension: 如何导入pyd文件?
U-SQL Python extension: How can I import a pyd file?
我看过:https://blogs.msdn.microsoft.com/azuredatalake/2017/03/10/using-custom-python-libraries-with-u-sql/
博客 post 提到 U-SQL 的 Python 扩展支持自定义模块的 zipimport。但是,Python 的 zipimport 不支持 pyd 文件(例如编译的 C 扩展)。
我尝试通过添加我的模块来修改 "UsqlPythonDeployPackage.zip.5.1\Lib\site-packages"(下载 zip 文件,添加我的模块,然后再次上传),但这似乎不起作用。它找不到我的 pyd 模块。
将已编译的 Python C 扩展 (pyd) 添加到:
usqlext\assembly\python\UsqlPythonDeployPackage.zip.5.1\Lib\site-packages
似乎工作得很好。但是,我忘了再次 drop/creating 组装。这是我为此使用的代码:
CREATE DATABASE IF NOT EXISTS master;
USE DATABASE master;
DROP ASSEMBLY IF EXISTS [ExtPython];
CREATE ASSEMBLY IF NOT EXISTS [ExtPython]
FROM @"/usqlext/assembly/python/ExtPy.dll"
WITH ADDITIONAL_FILES =
(
@"/usqlext/assembly/python/ExtPy.pdb",
@"/usqlext/assembly/python/UsqlPythonInvokePackage.zip",
@"/usqlext/assembly/python/UsqlPythonDeployPackage.zip",
@"/usqlext/assembly/python/version.python"
);
我看过:https://blogs.msdn.microsoft.com/azuredatalake/2017/03/10/using-custom-python-libraries-with-u-sql/
博客 post 提到 U-SQL 的 Python 扩展支持自定义模块的 zipimport。但是,Python 的 zipimport 不支持 pyd 文件(例如编译的 C 扩展)。
我尝试通过添加我的模块来修改 "UsqlPythonDeployPackage.zip.5.1\Lib\site-packages"(下载 zip 文件,添加我的模块,然后再次上传),但这似乎不起作用。它找不到我的 pyd 模块。
将已编译的 Python C 扩展 (pyd) 添加到:
usqlext\assembly\python\UsqlPythonDeployPackage.zip.5.1\Lib\site-packages
似乎工作得很好。但是,我忘了再次 drop/creating 组装。这是我为此使用的代码:
CREATE DATABASE IF NOT EXISTS master;
USE DATABASE master;
DROP ASSEMBLY IF EXISTS [ExtPython];
CREATE ASSEMBLY IF NOT EXISTS [ExtPython]
FROM @"/usqlext/assembly/python/ExtPy.dll"
WITH ADDITIONAL_FILES =
(
@"/usqlext/assembly/python/ExtPy.pdb",
@"/usqlext/assembly/python/UsqlPythonInvokePackage.zip",
@"/usqlext/assembly/python/UsqlPythonDeployPackage.zip",
@"/usqlext/assembly/python/version.python"
);