簡體   English   中英

AWS Lambda 層無法導入模塊“lambda_function”:沒有名為“pyarrow.lib”的模塊

[英]AWS Lambda Layer Unable to import module 'lambda_function': No module named 'pyarrow.lib'

我按照以下步驟創建了一個層以在我的 AWS Lambda function 中使用。

  1. 使用以下命令將 pyarrow 庫下載到 python 文件夾

    pip 安裝 pyarrow==5.0.0 -t python

  2. 然后遞歸壓縮python文件夾

    zip -r pyarrow.zip 蟒蛇/

  3. 使用 AWS Lambda UI 上傳壓縮文件並成功創建圖層。

  4. 將圖層添加到我的 lambda function。

但是,當我嘗試導入 pyarrow 時,出現以下錯誤。

[ERROR] Runtime.ImportModuleError: Unable to import module 'lambda_function': No module named 'pyarrow.lib'

我下載了 zip 文件。 我可以在其中看到 pyarrow 文件夾。 但出於某種原因 Lambda 找不到 pyarrow。 我可能犯錯的任何建議或建議?

假設您的代碼位於某個路徑的“function_code”文件夾中

  1. pip install pyarrow==5.0.0 -t function_code/
  2. cd function_code
  3. zip -r funcition_code.zip *(你不應該壓縮文件夾,只壓縮它的內容)
  4. 上傳壓縮包

當我想在 aws lambda 上創建鑲木地板文件時,使用 pyarrow 作為可選依賴項時,我遇到了類似的問題。我創建了一個 pyarrow 層,當我從 aws 控制台下載該層時,結構如下所示: 在此處輸入圖像描述

我有其他層使用相同的結構,它們工作正常。 但是對於 pyarrow 我得到以下錯誤:

“errorMessage”:“無法找到可用的引擎;嘗試使用:‘pyarrow’、‘fastparquet’。\nparquet 支持需要合適的 pyarrow 或 fastparquet 版本。\n嘗試導入上述內容導致了這些錯誤:\n - 缺少可選依賴項“pyarrow”。鑲木地板支持需要 pyarrow。使用 pip 或 conda 安裝 pyarrow。\n - 缺少可選依賴項“fastparquet”。鑲木地板支持需要 fastparquet。使用 pip 或 conda 安裝 fastparquet。",

我有同樣的問題,我能夠通過閱讀這個問題的接受答案中的中篇文章來解決它: numpy error when importing pandas with AWS Lambda

所以,我使用*manylinux1_x86_64.whl package 作為 pyarrow 而不是 numpy 和 pandas

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM