パイプラインの Python 依存関係を管理する
Lakeflow Spark宣言型パイプラインは、パイプラインの外部依存関係をサポートします。 Databricks では、Python パッケージをインストールするために次の 2 つのパターンのいずれかを使用することを推奨しています。
- 環境 設定を使用して、パイプライン内のすべてのソース ファイルのパッケージをパイプライン環境に追加します。
- ワークスペース ファイルに格納されているソース コードからモジュールまたはライブラリをインポートします。 Git フォルダーまたはワークスペース ファイルからの Python モジュールのインポートを参照してください。
パイプラインは、グローバルおよびクラスタースコープのinit スクリプトの使用もサポートします。 ただし、これらの外部依存関係、特に init スクリプトにより、ランタイム アップグレードに関する問題が発生するリスクが増加します。 これらのリスクを軽減するには、パイプラインでの init スクリプトの使用を最小限に抑えます。 処理に init スクリプトが必要な場合は、パイプラインのテストを自動化し、問題を早期に検出します。 init スクリプトを使用する場合、 Databricksテストの頻度を増やすことをお勧めします。
JVMライブラリはパイプラインではサポートされていないため、init スクリプトを使用してJVMライブラリをインストールしないでください。 ただし、init スクリプトを使用して、 Pythonライブラリなどの他の種類のライブラリをインストールできます。
Pythonライブラリ
外部 Python ライブラリを指定するには、パイプラインの環境を編集します。
- パイプライン エディターから、 [設定] をクリックします。
- パイプライン環境 で、
編集環境 。
- クリック
依存関係を追加します 。
- 依存関係の名前を入力します。Databricks では、ライブラリのバージョンを固定することをお勧めします。たとえば、
simplejsonバージョン 3.19 への依存関係を追加するには、「simplejson==3.19.*と入力します。
/Volumes/my_catalog/my_schema/my_ldp_volume/ldpfns-1.0-py3-none-any.whlなどのパスを指定して、 Unity CatalogボリュームからPython wheelパッケージをインストールすることもできます。
パイプラインで Scala または Java ライブラリを使用できますか?
いいえ、パイプラインは SQL と Python のみをサポートします。パイプラインでは JVM ライブラリを使用できません。JVMライブラリをインストールすると予期しない動作が発生し、将来のLakeflow Spark宣言型パイプライン リリースでは機能しなくなる可能性があります。 パイプラインが init スクリプトを使用している場合は、 JVMライブラリがスクリプトによってインストールされていないことも確認する必要があります。