


Bagaimana untuk menyelesaikan masalah yang Flink tidak dapat mencari skrip tugas python ketika mengemukakan pekerjaan pyfliink ke permohonan benang?
Apr 19, 2025 pm 05:21 PMPenyelesaian kepada skrip python tidak dijumpai apabila Flink mengemukakan pekerjaan pyfliin ke benang
Apabila mengemukakan pekerjaan PyFliink ke benang menggunakan Flink, jika anda menghadapi ralat di mana skrip Python tidak dapat dijumpai, biasanya disebabkan oleh ralat konfigurasi laluan skrip Python atau masalah penetapan persekitaran Python. Artikel ini menganalisis dan menyelesaikan masalah ini.
Anda mengemukakan pekerjaan PyFliink menggunakan arahan berikut:
./flink Run-Application -t Benang-Application \ -dyarn.application.name = Flinkcdctestpython \ -dyarn.provided.lib.dirs = "hdfs: // nameservice1/pyflink/flink-dist-181" \ -Pyarch hdfs: //nameservice1/pyfliink/pyfliink181.zip \ -pyclientexec pyfliink181.zip/pyfliink181/bin/python \ -pyexec pyfliink181.zip/pyfliink181/bin/python \ -py hdfs: //nameservice1/pyflink/wc2.py
Mesej ralat adalah seperti berikut:
<code>2024-05-24 16:38:02,030 info org.apache.flink.client.python.pythondriver [] - pyflink181.zip/pyflink181/bin/python: can't open file 'hdfs://nameservice1/pyflink/wc2.py': [errno 2] no such file or directory</code>
Kesalahan ini menunjukkan bahawa Flink tidak dapat mencari skrip Python yang ditentukan wc2.py
Walau bagaimanapun, konfigurasi HDFS adalah normal apabila mengemukakan pekerjaan Java, yang bermaksud tidak ada masalah dengan konfigurasi HDFS itu sendiri.
Masalahnya mungkin terletak pada aspek berikut:
-
Laluan Skrip Python: Semak semula sama ada
hdfs://nameservice1/pyflink/wc2.py
adalah betul dan sama ada failwc2.py
wujud di bawah laluan ini. Sahkan menggunakan arahan HDFS:hdfs dfs -ls hdfs: //nameservice1/pyflink/wc2.py
-
Konfigurasi Alam Sekitar Python: Parameter
-pyclientexec
dan-pyexec
Parameter menentukan persekitaran pelaksanaan Python. Pastikan persekitaran Python dipyflink181.zip
dikonfigurasi dengan betul dan mempunyai akses kepada HDFS. Adalah disyorkan untuk menunjukkan parameter terus ke laluan persekitaran Python pada HDFS:-pyclientexec hdfs: //nameservice1/pyflink/pyflink181.zip/pyfliink181/bin/python -pyexec hdfs: //nameservice1/pyflink/pyfliink181.zip/pyfliink181/bin/python
-
Isu Kebenaran: Pastikan kerja Flink mempunyai kebenaran untuk mengakses fail skrip Python pada HDFS. Semak Kebenaran Fail:
hdfs dfs -ls -h hdfs: //nameservice1/pyflink/wc2.py
Keserasian Versi Flink dan PyFliin: Sahkan versi Flink bersesuaian dengan versi PyFliink. Mismatch versi boleh menyebabkan masalah.
Melalui langkah -langkah di atas, anda harus dapat mencari dan menyelesaikan masalah yang Flink tidak dapat mencari skrip Python ketika mengemukakan pekerjaan PyFliink. Jika masalah berterusan, periksa fail log FLINK dan PYFLINK untuk lebih banyak petunjuk.
Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah yang Flink tidak dapat mencari skrip tugas python ketika mengemukakan pekerjaan pyfliink ke permohonan benang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Kunci untuk menangani pengesahan API adalah untuk memahami dan menggunakan kaedah pengesahan dengan betul. 1. Apikey adalah kaedah pengesahan yang paling mudah, biasanya diletakkan dalam tajuk permintaan atau parameter URL; 2. BasicAuth menggunakan nama pengguna dan kata laluan untuk penghantaran pengekodan Base64, yang sesuai untuk sistem dalaman; 3. OAuth2 perlu mendapatkan token terlebih dahulu melalui client_id dan client_secret, dan kemudian bawa bearertoken dalam header permintaan; 4. Untuk menangani tamat tempoh token, kelas pengurusan token boleh dikemas dan secara automatik menyegarkan token; Singkatnya, memilih kaedah yang sesuai mengikut dokumen dan menyimpan maklumat utama adalah kunci.

Bagaimana cara mengendalikan fail JSON yang besar di Python? 1. Gunakan Perpustakaan IJSON untuk mengalir dan mengelakkan limpahan memori melalui parsing item demi item; 2. Jika dalam format Jsonlines, anda boleh membacanya dengan garis dan memprosesnya dengan json.loads (); 3. Atau memecah fail besar ke dalam kepingan kecil dan kemudian memprosesnya secara berasingan. Kaedah ini dengan berkesan menyelesaikan masalah batasan memori dan sesuai untuk senario yang berbeza.

Di Python, kaedah melintasi tupel dengan gelung termasuk secara langsung melelehkan unsur -unsur, mendapatkan indeks dan elemen pada masa yang sama, dan memproses tuple bersarang. 1. Gunakan gelung untuk terus mengakses setiap elemen dalam urutan tanpa menguruskan indeks; 2. Gunakan penghitungan () untuk mendapatkan indeks dan nilai pada masa yang sama. Indeks lalai adalah 0, dan parameter permulaan juga boleh ditentukan; 3. Di samping itu, tuple tidak berubah dan kandungan tidak dapat diubah suai dalam gelung. Nilai yang tidak diingini boleh diabaikan oleh \ _. Adalah disyorkan untuk memeriksa sama ada tuple kosong sebelum melintasi untuk mengelakkan kesilapan.

Python melaksanakan panggilan API tak segerak dengan async/menunggu dengan AIOHTTP. Gunakan async untuk menentukan fungsi coroutine dan laksanakannya melalui pemacu asyncio.run, contohnya: asyncdeffeted_data (): Awaitasyncio.sleep (1); Memulakan permintaan HTTP asynchronous melalui AIOHTTP, dan gunakan asyncwith untuk membuat klien dan menunggu hasil tindak balas; Gunakan asyncio.gather untuk membungkus senarai tugas; Langkah berjaga -jaga termasuk: mengelakkan operasi menyekat, bukan mencampurkan kod penyegerakan, dan Jupyter perlu mengendalikan gelung acara khusus. Master Eventl

Untuk mempunyai Apache yang menyediakan fail HTML yang mudah, mula -mula sediakan fail HTML dan masukkannya ke dalam direktori yang betul. 1. Buat fail HTML mudah seperti index.html atau contoh.html; 2. Salin fail ke Apache Direktori Root Default/VAR/WWW/HTML/atau Laluan Custom; 3. Pastikan perkhidmatan Apache dimulakan dan diakses melalui penyemak imbas untuk menguji; 4. Jika anda perlu menukar direktori laman web, ubah suai dokumen dan laluan direktori dalam fail konfigurasi Apache, dan mulakan semula perkhidmatan untuk membuat konfigurasi berkuatkuasa. Seluruh proses memerlukan perhatian kepada sambungan fail, kebenaran laluan dan status perkhidmatan, dan memastikan semua tetapan adalah tepat dan halaman dapat dipaparkan dengan jayanya.

Fungsi tulen dalam Python merujuk kepada fungsi yang sentiasa mengembalikan output yang sama tanpa kesan sampingan yang diberikan input yang sama. Certinya termasuk: 1. Determinisme, iaitu, input yang sama selalu menghasilkan output yang sama; 2. Tiada kesan sampingan, iaitu, tiada pembolehubah luaran, tiada data input, dan tiada interaksi dengan dunia luar. Sebagai contoh, Defadd (a, b): Returna B adalah fungsi tulen kerana tidak kira berapa kali menambah (2,3) dipanggil, ia sentiasa mengembalikan 5 tanpa mengubah kandungan lain dalam program ini. Sebaliknya, fungsi yang mengubahsuai pembolehubah global atau menukar parameter input adalah fungsi bukan tujuan. Kelebihan fungsi tulen adalah: lebih mudah untuk diuji, lebih sesuai untuk pelaksanaan serentak, hasil cache untuk meningkatkan prestasi, dan boleh dipadankan dengan baik dengan alat pengaturcaraan berfungsi seperti MAP () dan penapis ().

Ifelse adalah infrastruktur yang digunakan dalam Python untuk penghakiman bersyarat, dan blok kod yang berlainan dilaksanakan melalui kesahihan keadaan. Ia menyokong penggunaan ELIF untuk menambah cawangan apabila penghakiman pelbagai syarat, dan lekukan adalah kunci sintaks; Jika num = 15, program itu mengeluarkan "nombor ini lebih besar daripada 10"; Sekiranya logik tugasan diperlukan, pengendali ternary seperti status = "dewasa" ifage> = 18else "kecil" boleh digunakan. 1. Ifelse memilih laluan pelaksanaan mengikut keadaan yang benar atau palsu; 2. ELIF boleh menambah pelbagai cawangan keadaan; 3. Indentasi menentukan pemilikan kod, kesilapan akan membawa kepada pengecualian; 4. Operator Ternary sesuai untuk senario tugasan mudah.

Direktori akar web lalai Apache adalah/var/www/html dalam kebanyakan pengagihan Linux. Ini kerana pelayan Apache menyediakan fail dari direktori akar dokumen tertentu. Jika konfigurasi tidak disesuaikan, sistem seperti Ubuntu, CentOS, dan Fedora menggunakan/var/www/html, manakala macOS (menggunakan homebrew) biasanya/usr/local/var/www, dan windows (xampp) adalah c: \ xampp \ htdocs; Untuk mengesahkan laluan semasa, anda boleh menyemak fail konfigurasi Apache seperti httpd.conf atau apache2.conf, atau buat p dengan phpinfo ()
