Apa Itu YARN? Berikut Pengertian Dan Keunggulannya
Apa Itu YARN?
Markas Info – YARN adalah teknologi Apache Hadoop dan merupakan singkatan dari Yet Another Resource Negotiator. YARN adalah berskala besar, sistem operasi yang didistribusikan untuk aplikasi big data. Teknologi ini dirancang untuk manajemen cluster dan merupakan salah satu fitur utama dalam generasi kedua Hadoop, open source Apache Software Foundation kerangka kerja pemrosesan terdistribusi.
YARN adalah perangkat lunak yang dapat memisahkan manajemen sumber daya MapReduce dan kemampuan penjadwalan dari komponen pemrosesan data. Setiap paket yang diunduh dari YARN akan disimpan dalam cache sehingga tidak diperlukan lagi. Ini juga memungkinkan operasi untuk dijalankan secara paralel untuk meningkatkan efisiensi sumber daya dan menyederhanakan proses instalasi.
Yarn adalah manajer paket yang relatif baru, dikembangkan oleh kolaborasi dari divisi open source seperti Facebook, Google, Tilde, dan Expo, untuk membantu menyelesaikan kebutuhan konsistensi, keamanan dan kinerja. Yarn telah berkembang menjadi saingan NPM (Node Package Manager) dan saat ini didukung oleh banyak perusahaan besar. Yarn pertama kali dirilis pada Oktober 2016 dan memiliki keunggulan dalam kecepatan pengembangan berkat caching lokal, konsistensi dengan file kunci, dan keamanan dengan menggunakan cek integritas paket sebelum dijalankan.
Fitur utama dari Yarn adalah mode caching offline-nya. Setelah sebuah paket diinstal dari registry NPM, ia dapat diinstal lagi tanpa koneksi internet. Hal ini menjamin determinisme, paket-paket akan selalu diinstal dengan cara yang sama di beberapa mesin selama Anda menggunakan versi Yarn yang sama. Performa jaringan juga dioptimalkan, permintaan jaringan dari Yarn diantre untuk memaksimalkan pemanfaatan jaringan. Ketahanan jaringan juga ditingkatkan, jika satu permintaan gagal, hal tersebut tidak menghentikan keseluruhan proses pemasangan.
Sebelumnya dengan NPM, jika Anda tidak dapat mendapatkan salah satu paket yang akan Anda pasang, maka keseluruhan proses pemasangan akan gagal. Namun sekarang dengan Yarn, hal tersebut tidak akan terjadi. Yarn menjaga ketidakcocokan versi paket dari membuat duplikat dalam node modules dan mengangkat paket ke bagian atas node modul, sehingga mengurangi ukuran dependensi total yang Anda miliki.
Beberapa Keunggulan dari Yarn
1. Performa yang cepat
Yarn memiliki implementasi cache yang membuatnya bekerja lebih cepat. Saat menginstal paket, yarn akan menyimpannya dalam cache dan menggunakannya saat pengguna meminta untuk menginstal paket tersebut di proyek lain, sehingga tidak perlu menunggu untuk pengunduhan ulang. Yarn juga mengeksekusi unduhan dalam beberapa thread secara bersamaan, sehingga memanfaatkan kapasitas sistem dengan lebih baik.
2. Keamanan
Setiap kali suatu package diinstal dan akan dijalankan, yarn akan memverifikasi apakah paket tersebut berasal dari sumber yang terpercaya dengan mengecek checksum yang terdapat dalam paket. Pengecekan checksum juga dilakukan saat paket disimpan dalam cache untuk memastikan bahwa proses instalasi berjalan dengan sukses. Jika checksum yang dicek tidak sesuai, paket akan diunduh ulang dari sumber yang asli.
3. Dapat diandalkan
Yarn menggunakan file lock yang sederhana dan mekanisme penginstalan yang telah ditentukan. File yarn.lock akan diperbarui setiap ada package yang diubah, diperbarui atau dihapus. Hal ini membuat Yarn dapat memastikan bahwa penginstalan pada suatu sistem dapat berjalan dengan baik pada sistem lainnya.
4. Dapat berjalan secara offline
Karena setiap penginstalan paket disimpan dalam cache, paket tersebut dapat diinstal meskipun tidak ada koneksi internet. Hal ini sangat berguna untuk sistem yang menggunakan Continuous Integration (CI), karena tidak perlu tergantung pada koneksi internet dan registry dari npm, sehingga masih bisa diuji meskipun npm sedang tidak dapat diakses.
5. Workspace
Yarn adalah package manager yang sangat cocok digunakan dalam monorepo atau sebuah repository yang menampung beberapa proyek, karena memiliki fitur workspace yang mempermudah pengelolaan dependensi pada proyek-proyek yang ada dalam monorepo tersebut.
6. Mendukung Plug n Play dan Zero Installation
Yarn memiliki file .pnp.cjs yang secara otomatis men-mapping modul yang digunakan dalam proyek. File ini dapat menyederhanakan struktur dependency dan juga mempercepat waktu instalasi serta launching proyek. Fitur lainnya adalah Zero Installation yang juga menggunakan file .pnp.cjs untuk mapping paket yang disimpan dalam cache, yang mempercepat pengambilan dan penginstalan paket yang sudah pernah disimpan sebelumnya.
Demikian uraian mengenai Apa Itu YARN? Berikut Pengertian Dan Keunggulannya, semoga bisa menjadi penambah wawasan buat kalian serta bermanfaat yaa. Terima kasih