共用方式為


管理 DLT 管線的 Python 相依性

DLT 支援管線中的外部相依性。 Databricks 建議使用兩種模式之一來安裝 Python 套件:

  1. 使用 %pip install 命令,為管線中的所有來源檔案安裝套件。
  2. 從儲存在工作區檔案中的原始程式碼匯入模組或連結庫。 請參閱 從 Git 資料夾或工作區檔案匯入 Python 模組。

DLT 也支援使用全域和叢集範圍的 init 腳本。 不過,這些外部相依性,特別是 init 腳本,會增加運行時間升級問題的風險。 若要降低這些風險,請將在管道中使用 init 腳本的次數降至最低。 如果您的處理需要 init 腳本,請自動化管線的測試,以儘早偵測問題。 如果您使用 init 腳本,Databricks 建議增加測試頻率。

重要

因為 DLT 管線中不支援 JVM 連結庫,因此請勿使用 init 腳本來安裝 JVM 連結庫。 不過,您可以使用 init 腳本來安裝其他連結庫類型,例如 Python 連結庫。

Python 程式庫

若要指定外部 Python 連結庫,請使用 %pip install magic 命令。 當更新啟動時,DLT 會先執行包含 %pip install 命令的所有儲存格,再執行任何資料表定義。 管線中包含的每個 Python 筆記本都會共享連結庫環境,並可存取所有已安裝的連結庫。

重要

  • %pip install 命令必須位於您的 DLT 管道筆記本最上方的單獨儲存格中。 請勿在包含 %pip install 命令的儲存格中包含任何其他程式碼。
  • 因為管線中的每個筆記本都會共享連結庫環境,所以您無法在單一管線中定義不同的連結庫版本。 如果您的處理需要不同的函式庫版本,您必須在不同的流程中定義它們。

下列範例會安裝 numpy 連結庫,並將其全域提供給管線中的任何 Python 筆記本使用:

%pip install simplejson

若要安裝 Python 轉輪套件,請將 Python 滾輪路徑新增至 %pip install 命令。 管線中的所有數據表都可以使用已安裝的 Python 轉輪套件。 下列範例會從 Unity 目錄磁碟區安裝名為 dltfns-1.0-py3-none-any.whl 的 Python 轉輪檔案:

%pip install /Volumes/my_catalog/my_schema/my_dlt_volume/dltfns-1.0-py3-none-any.whl

請參閱 使用 %pip安裝 Python 轉輪套件。

我可以在 DLT 管線中使用 Scala 或 Java 函式庫嗎?

否,DLT 僅支援 SQL 和 Python。 您不能在管線中使用 JVM 程式庫。 安裝 JVM 庫會導致無法預測的行為,並且可能在未來的 DLT 發行版本中出現問題。 如果您的管線使用初始化腳本,您也必須確保該腳本未安裝 JVM 程式庫。