Baru-baru ini saya buntu cuba menjalankan semula buku nota python dalam Fabric menggunakan pakej Azure Event Hub untuk memuat naik data ke pangkalan data KQL. Skrip, yang telah berjalan lancar selama berbulan-bulan, tiba-tiba berhenti berfungsi selepas perubahan atau kemas kini persekitaran.
Isu pertama yang saya hadapi ialah yang berikut semasa memasang pakej dalam buku nota saya.
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed
Ralat ini menunjukkan bahawa kebergantungan pakej bercanggah, yang sering berlaku disebabkan ketidakserasian versi persekitaran Python atau kebergantungan tidak sejajar.
Apabila cuba mengimport pakej, saya dapat melihat persekitaran ditetapkan kepada 3.10 (lihat di bawah).
Dan apabila cuba mencipta persekitaran saya sendiri, saya tidak dapat mencari pakej pypi azure-eventhub sama ada (lihat di sini).
Akhirnya, saya cuba memikirkan cara untuk menaik taraf persekitaran ular sawa, dan dengan bantuan rakan, saya dapat melakukannya.
Penyelesaian ialah menaik taraf persekitaran PySpark.
Ia menyelesaikan masalah dengan mengemas kini masa jalan Python kepada versi yang serasi dengan pakej azure-eventhub. Beralih kepada Spark Runtime 1.3 Python yang dikemas kini kepada versi 3.11.x, menyelesaikan konflik pergantungan.
Pergi ke tetapan Ruang Kerja.
Pilih masa jalan yang sesuai daripada senarai lungsur turun.
Simpan dan mulakan semula buku nota anda.
Sekarang perubahan telah digunakan, buat buku nota baharu memastikan persekitaran yang dipilih menggunakan Spark Runtime 1.3.
# Check if the environment upgrade was successful import azure.eventhub print("Environment setup successful!")
Menaik taraf persekitaran Python dalam Fabric dengan menukar masa jalan Spark menyelesaikan konflik pergantungan yang saya hadapi dengan pakej azure-eventhub. Jika anda menghadapi isu yang serupa, melaraskan versi masa jalan boleh menjadi penyelesaian pantas. Ingat untuk mengesahkan perubahan anda dan menguji skrip anda untuk memastikan semuanya berfungsi dengan lancar.
Nota: Saya kemudiannya menemui nota tentang isu saya dalam beberapa bahan latihan latihan, yang merupakan penyelesaian pertama saya tanpa parameter --force. Itu mungkin penyelesaian yang lebih baik untuk anda jika anda perlu memastikan Spark Runtime tidak berubah https://github.com/microsoft/FabricRTA-in-a-Day/blob/main/Lab3.md#steps
Rujukan:
Atas ialah kandungan terperinci Menaik taraf versi Python untuk persekitaran Fabric Microsoft anda. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!