distributed processing dan virtualisasi
Big Data

Mengenal Komputasi Terdistribusi dan Virtualisasi

Seperti yang telah dibahas pada artikel sebelumnya bahwa teknik pengolahan Big Data adalah dengan komputasi terdistribusi

Apa itu komputasi terdistribusi atau akrab dikenal dengan istilah distributed computing?

Pada kesempatan ini kita akan belajar tentang hubungan komputasi terdistribusi sebagai arsitektur untuk mengolah Big Data dan manfaat virtualisasi dalam support arsitektur ini

Horizontal Scaling

Horizontal Scaling adalah salah satu arsitektur yang digunakan untuk scaling system dengan menambah jumlah mesin / komputer

Traffic tinggi dapat membuat server menjadi down sehingga dibutuhkan scaling sistem. Jumlah data besar juga akan lebih mudah diproses jika dapat dibagi ke beberapa mesin lainnya

Jika resource sistem kurang cukup ditambahkan mesih baru.. itulah konsep Horizontal Scalling

Dalam pemrosesan Big Data, Horizontal Scaling merupakan keharusan yang harus digunakan

Ada istilah lain yang berlawanan dengan Horizontal Scaling yaitu Vertical Scaling

Vertical Scaling adalah arsitektur sistem untuk mengupgrade kapabilitas satu server dengan menambah RAM, CPU atau disk

Salah satu kelebihan Horizontal Scaling untuk Big Data adalah kemampuan untuk melakukan scaling adalah tidak terbatas. Jadi kita bisa memasang jumlah mesin / komputer sebanyak apapun ke dalam sistem

https://www.redswitches.com/blog/difference-between-horizontal-vertical-scaling

Komputasi Terdistribusi

Sebelum berlanjut ke komputasi terdistribusi kita akan membahas tentang sistem terdistribusi

Sistem terdistribusi adalah penganut model arsitektur Horizontal Scaling

Sistem terdistribusi adalah sistem yang komponennya terdistribusi di beberapa mesin / tempat yang berbeda

Sistem terdistribusi memungkinkan untuk memproses data secara terdistribusi (distributed computing) sehinga task dapat dibagi ke beberapa mesin untuk diolah dengan cepat karena ada pembagian tugas

Komputasi terdistribusi adalah komputasi yang dilakukan secara terdistribusi yaitu yang melibatkan lebih dari satu komputer

Yang harus diperhatikan dalam komputasi terdistribusi antara lain seperti network, latency, banwidth, security, cost

Berikut contoh komputasi terdistribusi

https://www.oreilly.com/library/view/distributed-computing-in/9781787126992/5fef6ce5-20d7-4d7c-93eb-7e669d48c2b4.xhtml

Misalnya kita mempunyai data yang berupa teks yang pada gambar diatas diilustrasikan dengan stage input

Data ini ingin kita proses agar kita bisa mengetahui ada kata apa saja yang muncul dan berapa banyak jumlahnya

Task untuk agregasi jumlah kata ini dapat diproses dengan membagi datanya ke beberapa mesin yang dalam contoh kasus ini dibagi menjadi 3 line

Setiap mesin selanjutnya memproses masing-masing job dan mengembalikan kembali setelah selesai mengerjakan tugasnya dan digabungkan lagi untuk hasil semua mesin

Dengan teknik ini, ouput agregasi dapat dihasilkan dengan cepat dan efisien

Virtualisasi

Virtualisasi memungkinkan menjalankan beberapa sistem operasi pada satu server fisik. Virtualisasi membuat virtual perangkat sumber daya seperti server, disk, jaringan, memory dan OS

Virtualisasi dalam komputasi terdistribusi dapat memudahkan untuk fleksibilitas, skalabilitas, dan cost yang lebih rendah

Virtualisasi dibutuhkan dalam Big Data karena mempunyai manfaat yang besar. Ada 3 karakter virtulisasi yang dapat menyupport proses di lingkungan Big data yaitu Partition, Isolation dan Encapsulation

PartitionBanyak aplikasi dan sistem operasi berjalan dalam 1 server fisik
IsolationSetiap virtual machine terisolasi dengan server fisik dan virtual machine lainnya
EncapsulationVirtual machine dapat direprentasikan dalam 1 file berdasarkan layanannya

Bentuk Virtualisasi

Virtulisasi saat ini tidak hanya berkutat di seputar virtualisasi server. Ada beberapa bentuk virtualisasi antara lain adalah virtualisasi server, virtualisasi storage, virtualisasi OS dan virtualisasi aplikasi

Virtualisasi Server

Jenis virtualisasi ini adalah yang paling umum kita tahu yaitu membuat Satu server fisik dibagi menjadi beberapa virtual server

Dengan virtualisasi server kita dapat membagi sumber daya hardware setiap virtual server

Contoh virtualisasi ini adalah saat kita menggunakan Virtual Box / VMware untuk membuat virtual machine di atas OS kita

Dalam manajemen virtualisasi server dibutuhkan Hypervisor. Hypervisor merupakan perangkat lunak / keras digunakan untuk membuat dan menjalankan virtual machine

Contoh Hypervisor yang cukup terkenal antara lain adalah VMware, Virtual Box, Linux KVM, Microsoft Hyper V

Virtualisasi Storage

Virtualisasi storage biasanya digunakan untuk membuat kumpulan physical storage dianggap yang dianggap satu storage

Jadi seakan-akan kita menggunakan 1 storage tetapi sebenarnya banyak physical storage yang berada dibelakagnnya

Virtualisasi OS

Virtualisasi OS adalah Paradigma di mana kernel memungkinkan membolehkan keberadaan beberapa ruang pengguna yang terisolasi

Contohnya yang cukup terkenal saat ini adalah teknologi kontainer yang menjalankan aplikasi terisolasi di atas 1 kernel yang sama

Beberapa teknologi kontainer yang terkenal antara lain Docker, AWS Fargate, Google Kubernetes, Amazon ECS

Virtualisasi Aplikasi

Virtualisasi aplikasi adalah konsep dimana aplikasi dapat berjalan di bukan environment aslinya

Misalnya saya ingin menjalanakan Microsoft Word, Excel di lingkungan Linux

Sebenarnya aplikasi Microsoft Office hanya dapat berjalan di OS Windows dan MacOS tetapi kita dapat membuat virtualisasi aplikasi sehingga dapat berjalan di Linux

Dan pastinya tidak terbatas hanya di aplikasi Microsoft Office

Misalnya kita gunakan Linux Playon atau wine di Linux untuk aplikasi Windows

Oke cukup sekian tentang konsep komputasi terdistribusi dan virtualisasi serta perannya dalam pemrosesan Big Data

Semoga bermanfaat 😀

Leave a Reply

Your email address will not be published. Required fields are marked *