私は最近、Azure Event Hub パッケージを使用して Fabric で Python ノートブックを再実行して KQL データベースにデータをアップロードしようとして行き詰まりました。数か月間スムーズに実行されていたスクリプトが、環境の変更または更新後に突然動作しなくなりました。
ノートブックにパッケージをインストールするときに私が直面した最初の問題は次のとおりでした。
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed
このエラーは、パッケージの依存関係が競合していることを示します。これは、Python 環境のバージョンの非互換性または依存関係の整合性がずれていることが原因でよく発生します。
パッケージをインポートしようとすると、環境が 3.10 に設定されていることがわかりました (下記を参照)。
そして、独自の環境を作成しようとしたとき、azure-eventhub pypi パッケージも見つかりませんでした (ここを参照)。
最終的に、Python 環境をアップグレードする方法を考え出し、友人の助けでアップグレードすることができました。
解決策は、PySpark 環境をアップグレードすることでした。
この問題は、Python ランタイムを azure-eventhub パッケージと互換性のあるバージョンに更新することで解決されました。 Spark ランタイム 1.3 に切り替えると、Python がバージョン 3.11.x に更新され、依存関係の競合が解決されました。
ワークスペース設定に移動します。
ドロップダウン リストから適切なランタイムを選択します。
ノートブックを保存して再起動します。
変更が適用されました。選択した環境で Spark ランタイム 1.3 が使用されていることを確認して、新しいノートブックを作成します。
# Check if the environment upgrade was successful import azure.eventhub print("Environment setup successful!")
Spark ランタイムを変更して Fabric の Python 環境をアップグレードすると、azure-eventhub パッケージで直面した依存関係の競合が解決されました。同様の問題が発生した場合は、ランタイムのバージョンを調整するとすぐに解決できる可能性があります。変更を検証し、スクリプトをテストして、すべてがスムーズに動作することを確認してください。
注: 後で、いくつかのトレーニング資料で私の問題に関するメモを見つけました。これが、--force パラメーターを使用しない最初の解決策でした。 Spark ランタイムを変更せずに維持する必要がある場合は、これがより良い解決策になる可能性があります https://github.com/microsoft/FabricRTA-in-a-Day/blob/main/Lab3.md#steps
参考文献:
以上がMicrosoft Fabric環境のPythonバージョンのアップグレードの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。