15+ Pertanyaan & Jawaban Wawancara Apache Spark 2022

Diterbitkan: 2021-01-08

Siapa pun yang akrab dengan Apache Spark tahu mengapa ini menjadi salah satu alat Big Data yang paling disukai saat ini – memungkinkan komputasi super cepat.

Fakta bahwa Spark mendukung pemrosesan Big Data yang cepat membuatnya menjadi hit dengan perusahaan di seluruh dunia. Dari nama besar seperti Amazon, Alibaba, eBay, dan Yahoo, hingga perusahaan kecil di industri ini, Spark telah mendapatkan banyak penggemar. Berkat ini, perusahaan terus mencari profesional Big Data yang terampil dengan keahlian domain di Spark.

Untuk semua orang yang ingin mengantongi pekerjaan yang terkait dengan profil Big Data (Spark), Anda harus terlebih dahulu berhasil memecahkan wawancara Spark. Berikut adalah sesuatu yang dapat membuat Anda selangkah lebih dekat ke tujuan Anda – 15 pertanyaan wawancara Apache Spark yang paling sering diajukan!

  1. Apa itu Spark?

Spark adalah kerangka kerja Big Data komputasi klaster open-source yang memungkinkan pemrosesan waktu nyata. Ini adalah mesin pemrosesan data tujuan umum yang mampu menangani beban kerja yang berbeda seperti batch, interaktif, iteratif, dan streaming. Spark mengeksekusi komputasi dalam memori yang membantu meningkatkan kecepatan pemrosesan data. Itu dapat berjalan mandiri, atau di Hadoop, atau di cloud.

  1. Apa itu RDD?

RDD atau Resilient Distributed Dataset adalah struktur data utama Spark. Ini adalah abstraksi penting di Spark yang mewakili input data dalam format objek. RDD adalah kumpulan objek yang hanya dapat dibaca dan tidak dapat diubah di mana setiap node dipartisi menjadi bagian-bagian yang lebih kecil yang dapat dihitung pada node yang berbeda dari sebuah cluster untuk memungkinkan pemrosesan data independen.

  1. Bedakan antara Apache Spark dan Hadoop MapReduce.

Pembeda utama antara Apache Spark dan Hadoop MapReduce adalah:

  • Spark lebih mudah diprogram dan tidak memerlukan abstraksi apa pun. MapReduce ditulis dalam Java dan sulit untuk diprogram. Itu membutuhkan abstraksi.
  • Spark memiliki mode interaktif, sedangkan MapReduce tidak memilikinya. Namun, alat seperti Pig dan Hive mempermudah bekerja dengan MapReduce.
  • Spark memungkinkan pemrosesan batch, streaming, dan pembelajaran mesin dalam cluster yang sama. MapReduce paling cocok untuk pemrosesan batch.
  • Spark dapat memodifikasi data secara real-time melalui Spark Streaming. Tidak ada ketentuan waktu nyata seperti itu di MapReduce – Anda hanya dapat memproses sekumpulan data yang disimpan.
  • Spark memfasilitasi komputasi latensi rendah dengan menyimpan sebagian hasil dalam memori. Ini membutuhkan lebih banyak ruang memori. Sebaliknya, MapReduce berorientasi pada disk yang memungkinkan penyimpanan permanen.
  • Karena Spark dapat menjalankan tugas pemrosesan dalam memori, Spark dapat memproses data lebih cepat daripada MapReduce.
  1. Apa itu Vektor Jarang?

Sebuah vektor jarang terdiri dari dua array paralel, satu untuk indeks dan yang lainnya untuk nilai. Mereka digunakan untuk menyimpan entri bukan nol untuk menghemat ruang memori.

  1. Apa itu Partisi di Spark?

Partisi digunakan untuk membuat unit data yang lebih kecil dan logis untuk membantu mempercepat pemrosesan data. Di Spark, semuanya adalah RDD yang dipartisi. Partisi memparalelkan pemrosesan data terdistribusi dengan lalu lintas jaringan minimal untuk mengirim data ke berbagai pelaksana dalam sistem.

  1. Tentukan Transformasi dan Aksi.

Baik Transformasi dan Tindakan adalah operasi yang dijalankan dalam RDD.

Ketika fungsi Transformasi diterapkan ke RDD, itu membuat RDD lain. Dua contoh transformasi adalah map() dan filer() – sementara map() menerapkan fungsi yang ditransfer padanya pada setiap elemen RDD dan membuat RDD lain, filter() membuat RDD baru dengan memilih komponen dari RDD saat ini yang mentransfer argumen fungsi. Ini dipicu hanya ketika suatu Tindakan terjadi.

Tindakan mengambil data dari RDD ke mesin lokal. Ini memicu eksekusi dengan menggunakan grafik garis keturunan untuk memuat data ke RDD asli, melakukan semua transformasi menengah, dan mengembalikan hasil akhir ke program Driver atau menuliskannya ke sistem file.

  1. Apa itu Grafik Garis Keturunan?

Di Spark, RDD saling bergantung satu sama lain. Representasi grafis dari dependensi ini di antara RDD disebut grafik garis keturunan. Dengan informasi dari grafik garis keturunan, setiap RDD dapat dihitung sesuai permintaan – jika sepotong RDD persisten hilang, data yang hilang dapat dipulihkan menggunakan informasi grafik garis keturunan.

  1. Apa tujuan dari SparkCore?

SparkCore adalah mesin dasar Spark. Ini melakukan sejumlah fungsi penting seperti toleransi kesalahan, manajemen memori, pemantauan pekerjaan, penjadwalan pekerjaan, dan interaksi dengan sistem penyimpanan.

  1. Sebutkan perpustakaan utama dari Spark Ecosystem.

Pustaka utama di Spark Ecosystem adalah:

  • Spark Streaming – Digunakan untuk mengaktifkan streaming data waktu nyata.
  • Spark MLib- Ini adalah perpustakaan Pembelajaran Mesin Spark yang umum digunakan algoritma pembelajaran seperti klasifikasi, regresi, pengelompokan, dll.
  • Spark SQL – Ini membantu mengeksekusi kueri seperti SQL pada data Spark dengan menerapkan visualisasi standar atau alat intelijen bisnis.
  • Spark GraphX ​​– Ini adalah API Spark untuk pemrosesan grafik untuk mengembangkan dan mengubah grafik interaktif.
  1. Apa itu BENANG? Apakah diperlukan untuk menginstal Spark di semua node dari cluster BENANG?

Benang adalah platform manajemen sumber daya pusat di Spark. Ini memungkinkan pengiriman operasi yang dapat diskalakan di seluruh cluster Spark. Sementara Spark adalah alat pemrosesan data, YARN adalah pengelola kontainer terdistribusi. Sama seperti Hadoop MapReduce dapat berjalan di YARN, Spark juga dapat berjalan di YARN.

Tidak perlu menginstal Spark di semua node klaster YARN karena Spark dapat mengeksekusi di atas YARN – ia berjalan secara independen dari instalasinya. Ini juga mencakup konfigurasi yang berbeda untuk dijalankan pada YARN seperti master, antrian, mode penyebaran, memori driver, memori pelaksana, dan inti pelaksana.

  1. Apa itu Kerangka Katalis?

Kerangka kerja katalis adalah kerangka kerja pengoptimalan unik di Spark SQL. Tujuan utama dari kerangka katalis adalah untuk memungkinkan Spark secara otomatis mengubah kueri SQL dengan menambahkan pengoptimalan baru untuk mengembangkan sistem pemrosesan yang lebih cepat.

  1. Apa saja jenis manajer cluster yang berbeda di Spark?

Kerangka kerja Spark terdiri dari tiga jenis manajer cluster:

  1. Standalone – Manajer utama yang digunakan untuk mengonfigurasi sebuah cluster.
  2. Apache Mesos – Manajer cluster umum bawaan dari Spark yang dapat menjalankan Hadoop MapReduce dan aplikasi lain juga.
  3. Benang – Manajer cluster untuk menangani manajemen sumber daya di Hadoop.
  1. Apa itu Node Pekerja?

Worker Node adalah “slave node” dari Master Node. Ini mengacu pada setiap node yang dapat menjalankan kode aplikasi dalam sebuah cluster. Jadi, node master memberikan pekerjaan ke node pekerja yang melakukan tugas yang diberikan. Node pekerja memproses data yang disimpan di dalam dan kemudian melaporkan ke node master.

  1. Apa itu Pelaksana Spark?

Spark Executor adalah proses yang menjalankan komputasi dan menyimpan data di node pekerja. Setiap kali SparkContext terhubung dengan manajer cluster, ia memperoleh Executor pada node dalam sebuah cluster. Pelaksana ini menjalankan tugas akhir yang diberikan kepada mereka oleh SparkContext.

  1. Apa itu file Parket?

File parket adalah file format kolom yang memungkinkan Spark SQL untuk membaca dan menulis operasi. Menggunakan file parket (format kolom) memiliki banyak keuntungan:

  1. Format penyimpanan kolom menghabiskan lebih sedikit ruang.
  2. Format penyimpanan kolom menjaga operasi IO tetap terkendali.
  3. Ini memungkinkan Anda untuk mengakses kolom tertentu dengan mudah.
  4. Ini mengikuti pengkodean khusus jenis dan memberikan data yang diringkas dengan lebih baik.

Di sana – kami telah memudahkan Anda ke Spark. 15 konsep dasar di Spark ini akan membantu Anda memulai dengan Spark.

Jika Anda tertarik untuk mengetahui lebih banyak tentang Big Data, lihat Diploma PG kami dalam Spesialisasi Pengembangan Perangkat Lunak dalam program Big Data yang dirancang untuk para profesional yang bekerja dan menyediakan 7+ studi kasus & proyek, mencakup 14 bahasa & alat pemrograman, praktik langsung lokakarya, lebih dari 400 jam pembelajaran yang ketat & bantuan penempatan kerja dengan perusahaan-perusahaan top.

Lihat Kursus Rekayasa Perangkat Lunak kami yang lain di upGrad.

Tingkatkan Kemampuan Diri Anda & Bersiaplah untuk Masa Depan

400+ Jam Belajar. 14 Bahasa & Alat. Status Alumni IIIT-B.
Program Sertifikat Tingkat Lanjut dalam Data Besar dari IIIT Bangalore