Bagikan melalui


Tutorial: Membuat aplikasi Apache Spark dengan IntelliJ menggunakan ruang kerja Synapse

Tutorial ini menunjukkan kepada Anda cara menggunakan Toolkit Azure untuk plug-in IntelliJ guna mengembangkan aplikasi Apache Spark, yang ditulis di Scala, dan kemudian mengirimkannya ke kumpulan Apache Spark tanpa server langsung dari IDE IntelliJ. Anda dapat menggunakan plug-in dalam beberapa cara:

  • Mengembangkan dan mengirim aplikasi Scala Spark di kumpulan Spark.
  • Mengakses sumber daya kumpulan Spark Anda.
  • Mengembangkan dan menjalankan aplikasi Scala Spark secara lokal.

Dalam tutorial ini, Anda akan mempelajari cara:

  • Menggunakan Toolkit Azure untuk plug-in IntelliJ
  • Kembangkan aplikasi Apache Spark
  • Mengirim aplikasi ke kumpulan Spark

Prasyarat

Membuat aplikasi Spark Scala untuk kumpulan Spark

  1. Buka IntelliJ IDEA, dan pilih Buat Proyek Baru untuk membuka jendela Proyek Baru.

  2. Pilih Apache Spark/Azure HDInsight dari panel sebelah kiri.

  3. Pilih Proyek Spark dengan Sampel(Scala) dari jendela utama.

  4. Dari daftar menurun Alat build, pilih salah satu jenis berikut ini:

    • Maven untuk dukungan wizard pembuatan proyek Scala.
    • SBT untuk mengelola dependensi dan pembangunan proyek Scala.

    Kotak dialog Proyek Baru IDEA IntelliJ

  5. Pilih Selanjutnya.

  6. Di jendela Proyek Baru, berikan informasi berikut ini:

    Properti Deskripsi
    Nama proyek Masukkan nama. Tutorial ini menggunakan myApp.
    Lokasi proyek Masukkan lokasi yang diinginkan untuk menyimpan proyek Anda.
    SDK Proyek Mungkin kosong pada penggunaan IDEA pertama Anda. Pilih Baru... dan navigasi ke JDK Anda.
    Versi Spark Wizard pembuatan mengintegrasikan versi yang tepat untuk SDK Spark dan SDK Scala. Di sini Anda dapat memilih versi Spark yang Anda butuhkan.

    Memilih SDK Apache Spark

  7. Pilih Selesai. Hal ini memerlukan waktu beberapa menit sebelum proyek tersedia.

  8. Proyek Spark secara otomatis membuat artefak untuk Anda. Untuk melihat artefak, lakukan operasi berikut:

    a. Dari bilah menu, navigasikan ke File>Struktur Proyek....

    b. Dari jendela Struktur Proyek, pilih Artefak.

    c. Pilih Batal setelah melihat artefak.

    Info artefak dalam kotak dialog

  9. Temukan LogQuery dari myApp>src>sampel>scala>utama>LogQuery. Tutorial ini menggunakan LogQuery untuk menjalankannya.

    Perintah untuk membuat kelas Scala dari Proyek

Menyambungkan ke kumpulan Spark Anda

Masuk ke langganan Azure untuk tersambung ke kumpulan Spark Anda.

Masuk ke langganan Azure Anda

  1. Dari bilah menu, navigasi ke Tampilkan > Alat WindowsAzure > Explorer.

    IDEA IntelliJ menunjukkan Explorer Azure

  2. Dari Explorer Azure, klik kanan simpul Azure, lalu pilih Masuk.

    Explorer IDEA IntelliJ IDEA klik kanan Azure

  3. Dalam kotak dialog Masuk Azure, pilih Masuk Perangkat, lalu pilih Masuk.

    Masuk Azure IDEA IntelliJ

  4. Dalam kotak dialog Masuk Perangkat Azure, pilih Copy&Open.

    Masuk perangkat Azure IDEA IntelliJ

  5. Di antarmuka browser, tempel kode, lalu pilih Berikutnya.

    Microsoft memasukkan dialog kode untuk IPM

  6. Masukkan kredensial Azure Anda, lalu tutup browser.

    Microsoft memasukkan dialog surel untuk HDI

  7. Setelah Anda masuk, kotak dialog Langganan Anda mencantumkan semua langganan Azure yang terkait dengan info masuk. Pilih langganan Anda lalu klik Pilih.

    Kotak dialog Pilih Langganan

  8. Dari Explorer Azure, luaskan Apache Spark di Synapse untuk melihat Ruang Kerja yang ada di langganan Anda.

    Tampilan utama Explorer Azure IDEA IntelliJ

  9. Untuk melihat kumpulan Spark, Anda dapat meluaskan ruang kerja lebih lanjut.

    Akun penyimpanan Explorer Azure

Jalankan Jarak jauh aplikasi Scala Spark di kumpulan Spark

Setelah membuat aplikasi Scala, Anda dapat menjalankan aplikasi dari jarak jauh.

  1. Buka jendela Konfigurasi Eksekusi/Debug dengan memilih ikon.

    Perintah Kirim Aplikasi Spark Ke Azure HDInsight 1

  2. Di jendela dialog Konfigurasi Eksekusi/Debug, pilih +, lalu pilih Apache Spark di Synapse.

    Perintah Kirim Aplikasi Spark Ke Azure HDInsight 2

  3. Di jendela Konfigurasi Eksekusi/Debug, berikan nilai berikut, lalu pilih OK:

    Properti Nilai
    Kumpulan Spark Pilih kumpulan Spark tempat Anda ingin menjalankan aplikasi.
    Pilih Artefak untuk dikirim Biarkan pengaturan default.
    Nama kelas utama Nilai default adalah kelas utama dari file yang dipilih. Anda dapat mengubah kelas dengan memilih elipsis(...) dan memilih kelas lain.
    Konfigurasi pekerjaan Anda dapat mengubah kunci dan nilai default. Untuk mengetahui informasi selengkapnya, lihat REST API Apache Livy.
    Argumen baris perintah Anda dapat memasukkan argumen yang dipisahkan oleh spasi untuk kelas utama jika diperlukan.
    Jars yang Direferensikan dan File yang Direferensikan Anda dapat memasukkan jalur untuk Jar dan file yang direferensikan jika ada. Anda juga dapat menelusuri file di sistem file virtual Azure, yang saat ini hanya mendukung kluster ADLS Gen2. Untuk informasi selengkapnya: Konfigurasi Apache Spark dan Cara mengunggah sumber daya ke kluster.
    Penyimpanan Pengunggahan Pekerjaan Luaskan untuk menampilkan opsi tambahan.
    Jenis Penyimpanan Pilih Gunakan Blob Azure untuk mengunggah atau Gunakan akun penyimpanan default kluster untuk mengunggah dari daftar menurun.
    Akun Penyimpanan Masukkan akun penyimpanan Anda.
    Kunci Penyimpanan Masukkan kunci penyimpanan Anda.
    Kontainer Penyimpanan Pilih kontainer penyimpanan Anda dari daftar menurun setelah Akun Penyimpanan dan Kunci Penyimpanan dimasukkan.

    Kotak dialog Pengiriman Spark 1

  4. Pilih ikon SparkJobRun untuk mengirim proyek Anda ke kumpulan Spark yang dipilih. Tab Pekerjaan Spark Jarak Jauh di Kluster menampilkan kemajuan eksekusi pekerjaan di bagian bawah. Anda dapat menghentikan aplikasi dengan memilih tombol merah.

    Jendela Pengiriman Apache Spark

    Kotak dialog Pengiriman Spark 2

Aplikasi Eksekusi Lokal/Debug Apache Spark

Anda dapat mengikuti instruksi di bawah ini guna menyiapkan eksekusi lokal dan debug lokal untuk pekerjaan Apache Spark Anda.

Skenario 1: Lakukan eksekusi lokal

  1. Buka dialog Konfigurasi Eksekusi/Debug, pilih tanda plus (+). Kemudian pilih opsi Apache Spark pada Synapse. Masukkan informasi untuk Nama, Nama kelas utama untuk disimpan.

    Eksekusi lokal konfigurasi debug Eksekusi Intellij 1

    • Variabel lingkungan dan Lokasi WinUtils.exe hanya untuk pengguna windows.
    • Variabel lingkungan: Variabel lingkungan sistem dapat dideteksi secara otomatis jika Anda telah mengatur variabel lingkungan sebelumnya dan tidak perlu menambahkan secara manual.
    • Lokasi WinUtils.exe: Anda dapat menetapkan lokasi WinUtils dengan memilih ikon folder di sebelah kanan.
  2. Kemudian pilih tombol putar lokal.

    Eksekusi lokal konfigurasi debug Eksekusi Intellij 2

  3. Saat eksekusi lokal selesai, jika skrip mencakup output, Anda dapat memerikas file output dari data>default.

    Hasil eksekusi lokal Proyek Intellij 1

Skenario 2: Lakukan penelusuran kesalahan lokal

  1. Buka skrip LogQuery, atur titik henti.

  2. Pilih ikon Debug lokal untuk melakukan penelusuran kesalahan lokal.

    Hasil eksekusi lokal Proyek Intellij 2

Mengakses dan mengelola Ruang Kerja Synapse

Anda dapat melakukan berbagai operasi di Explorer Azure dalam Toolkit Azure untuk IntelliJ. Dari bilah menu, navigasi ke Tampilkan > Alat WindowsAzure > Explorer.

Luncurkan ruang kerja

  1. Dari Explorer Azure, navigasikan ke Apache Spark di Synapse, lalu perluas Apache Spark.

    Tampilan utama Explorer Azure IDEA IntelliJ

  2. Klik kanan ruang kerja, lalu pilih Luncurkan ruang kerja, situs web akan dibuka.

    Detail Aplikasi Lihat Pekerjaan Spark 1

    Detail Aplikasi Lihat Pekerjaan Spark 2

Konsol Spark

Anda dapat menjalankan Spark Local Console(Scala) atau menjalankan Spark Livy Interactive Session Console(Scala).

Konsol lokal Spark (Scala)

Pastikan Anda telah memenuhi prasyarat WINUTILS.EXE.

  1. Dari bilah menu, navigasikan ke Jalankan>Edit Konfigurasi....

  2. Dari jendela Konfigurasi Eksekusi/Debug, di panel sebelah kiri, navigasikan ke Apache Spark di Synapse>[Spark di Synapse] myApp.

  3. Dari jendela utama, pilih tab Jalankan Secara Lokal.

  4. Berikan nilai berikut, lalu pilih OK:

    Properti Nilai
    Variabel lingkungan Pastikan nilai untuk HADOOP_HOME sudah benar.
    Lokasi WINUTILS.exe Pastikan jalurnya benar.

    Konfigurasi Set Konsol Lokal

  5. Dari Proyek, navigasikan ke myApp>src>myApp>scala>utama.

  6. Dari bilah menu, navigasikan ke Alat>Konsol Spark>Jalankan Konsol Lokal Spark(Scala).

  7. Kemudian dua dialog dapat ditampilkan untuk menanyakan apakah Anda ingin memperbaiki dependensi secara otomatis. Jika demikian, pilih Perbaiki Otomatis.

    Dialog Perbaikan Otomatis Spark IDEA IntelliJ 1

    Dialog Perbaikan Otomatis Spark IDEA IntelliJ 2

  8. Konsol harus terlihat mirip dengan gambar di bawah ini. Di jenis jendela konsol sc.appName, lalu tekan ctrl+Enter. Hasilnya akan ditampilkan. Anda dapat menghentikan konsol lokal dengan memilih tombol merah.

    Hasil konsol lokal IDEA IntelliJ

Konsol sesi interaktif Livy Spark (Scala)

Konsol hanya didukung pada IntelliJ 2018.2 dan 2018.3.

  1. Dari bilah menu, navigasikan ke Jalankan>Edit Konfigurasi....

  2. Dari jendela Konfigurasi Eksekusi/Debug, di panel sebelah kiri, navigasikan ke Apache Spark di synapse>[Spark di synapse] myApp.

  3. Dari jendela utama, pilih tab Jalankan secara Jarak Jauh di Kluster.

  4. Berikan nilai berikut, lalu pilih OK:

    Properti Nilai
    Nama kelas utama Pilih nama kelas Utama.
    Kumpulan Spark Pilih kumpulan Spark tempat Anda ingin menjalankan aplikasi.

    Konfigurasi Set Konsol Interaktif

  5. Dari Proyek, navigasikan ke myApp>src>myApp>scala>utama.

  6. Dari bilah menu, navigasikan ke Alat>Konsol Spark>Jalankan Konsol Sesi Interaktif Livy Spark(Scala).

  7. Konsol harus terlihat mirip dengan gambar di bawah ini. Di jenis jendela konsol sc.appName, lalu tekan ctrl+Enter. Hasilnya akan ditampilkan. Anda dapat menghentikan konsol lokal dengan memilih tombol merah.

    Hasil Konsol Interaktif IDEA IntelliJ

Kirim pilihan ke konsol Spark

Anda mungkin ingin melihat hasil skrip dengan mengirim beberapa kode ke konsol lokal atau Konsol Sesi Interaktif Livy(Scala). Untuk melakukannya hal tersebut, Anda dapat menyorot beberapa kode dalam file Scala, lalu klik kanan Kirim Pilihan Ke konsol Spark. Kode yang dipilih akan dikirim ke konsol dan dilakukan. Hasilnya akan ditampilkan setelah kode di konsol. Konsol akan memeriksa kesalahan yang ada.

Kirim Pilihan ke konsol Spark

Langkah berikutnya