- Python 中的代码——</li>
from pyspark.shell import spark
from pyspark.sql import SparkSession
from pyspark.sql.functions import *
import datetime
import logging
import awswrangler as wr
from awswrangler import _databases as _db_utils
from pandas import DataFrame
import pandas as pd
connection = wr.sqlserver.connect(connection='', secret_id='')
with connection.cursor() as cursor:
assignment = cursor.execute(
'SELECT * from AssignmentData').fetchall()
assignment_dataframe = DataFrame(assignment)
return assignment_df
- 我在我的 AWS Glue 作业中使用
pyodbc
命名的 python 轮pyodbc-4.0.32-cp37-cp37m-linux_x86_64.whl
- 钥匙:
--additional-python-modules
- 值:S3 路径。
我
pyodbc
使用 AmazonLinux Docker Image 创建了上面的轮子。参考在 AWS Glue 2.0 作业 (amazon.com) 中使用外部 Python 库,附上 Pyodbc 轮文件。在 CloudWatch 中,我可以看到包括 pyodbc 和 aws wrangler 在内的所有软件包在 Glue 作业运行期间都已成功安装。
- 现在我收到了这个奇怪的错误- ImportError: libodbc.so.2: cannot open shared object file: No such file or directory 2021-11-09 11:18:29,088 ERROR [main] glue.ProcessLauncher (Logging.scala: logError(70)):来自 Python 的错误:Traceback(最近一次调用最后一次):文件“/tmp/load-assignment.py”,第 3 行,来自 pyodbc。初始化导入* ImportError:libodbc.so.2:无法打开共享对象文件:没有这样的文件或目录
- 由于导入错误,无法导入 pyodbc 包 - libodbc.so.2 不存在。如果您能在这个问题上帮助我,我将不胜感激。谢谢。