我想写代码,使用python从teradata获取数据。当在集群和本地使用spark运行时,代码应该可以工作。在使用spark运行时,我不想打开executors上的连接。所以我们的计划是使用teradatasql包在驱动程序上运行代码。由于teradatasql包如此库,我想我还没有在集群上安装teradata库。
我将依赖项(即teradatasql )打包为egg文件,并将其作为--py-files传递。但是当在代码上运行时,teradatasql不能从鸡蛋文件中读取库。
操作系统错误: teradatasql.so无法打开共享目标文件。不是一个目录。
我按照以下步骤打包了鸡蛋文件。1. pip install teradatasql --target./src #注意我所有的代码都在src文件夹中。执行此步骤将在我的src文件夹中安装teradatasql包。它包含teradatasql.so库2.在setup.py packages=find_packages('src')中,package_data={'teradatasql':'teradatasql.so'} 3.Python setup.py bdist_eggg
发布于 2020-05-23 01:13:47
teradatasql驱动程序使用共享库与Teradata数据库通信。
如果仅重新打包驱动程序的Python文件部分,teradatasql驱动程序将无法工作。将会出现您得到的错误。
teradatasql驱动程序的预期用途是使用以下命令将其安装到Python环境中: pip install teradatasql
如果您拆开并重新打包teradatasql驱动程序,我们将无法有效地支持您。这不是一个受支持的用例。
https://stackoverflow.com/questions/61931878
复制相似问题