Review Mata Kuliah Pengelolaan Data Besar Semester Gasal 2016/2017

Halo!

Pengelolaan Data Besar merupakan matkul yang baru saja dibuat pada kurikulum 2016 dan tersedia semenjak semester ini. Ini matkul, keren banget sih. Percaya atau ngga, ketika gw kuliah Business Intelligence pada semester gasal 2015/2016, gw tertarik banget kan sama big data. Gara-gara itu, gw jadi penasaran gimana cara menggunakan Hadoop. Coba cari-cari di internet tentang Hadoop, lalu gw menyerah. Dan seakan seperti keajaiban, tiba-tiba matkul ini muncul satu semester kemudian.

Jadi, matkul ini tentang apa sih?

Gw peringatkan, buat yang tidak memiliki minat yang kuat, sebaiknya jangan ambil matkul ini. Jujur gw pun sempet kepikiran mau ngedrop aja setelah dijelaskan persyaratan apa aja yang harus dimiliki pada pertemuan pertama. Beberapa persyaratan yang bikin gw ragu:

  • Mengerti perintah yang sering digunakan di UNIX

Buat gw yang merasa tidak mengingat apa-apa di mata kuliah OS (bahkan perintah sudo, rm, cp, dll pun gw lupa), melihat persyaratan ini pun gw ragu. Tapi karena niat yang cukup kuat untuk belajar, akhirnya gw tetap yakin untuk mengambil pdb.

  • RAM laptop minimal 8GB (untuk Linux) dan >8GB untuk Windows untuk bisa menginstal Hadoop.

Ini. Ini yang bikin gw langsung takut. Pada saat itu, gw lagi magang di 2 minggu pertama perkuliahan, ga sempet masuk kuliah dan ga sempet sama sekali buat ngurusin beginian. Sempet khawatir akan ada tugas yang menggunakan Hadoop, dan gw gabisa dateng ke lab buat ngerjain. Dan bener kejadian. Untungnya, ketika tutorial 1, laptop gw sudah ditambah RAMnya jadi 8GB, udah instal linux juga, tinggal instal Hadoop. Seharian nyobain install Hadoop dan belajar perintah2 lagi di terminal, namun berakhir menyedihkan. Akhirnya, nyerah dan instal Cloudera (pake virtual machine juga ujung2nya -_-).

Secara garis besar, hal yang dipelajari dibagi menjadi 2 bagian.

Di bagian awal (sebelum UTS) kita lebih belajar tentang menggunakan Hadoop di laptop maupun di server Fasilkom. Kita belajar mulai dari installing Hadoop, ngoding dan menjalankan data yang sangat besar, belajar Map Reduce, dan belajar beberapa teori tentang pengelolaan data besar. Tugas pertama pdb itu menggunakan map reduce, melakukan matrix multiplication pada 10,000×10,000 matriks. Data yang ada pun sebesar ratusan MB. Wow. Ngoding matrix multiplicationnya menggunakan map reduce sebenernya ga susah (menggunakan Java), yang susah itu pada tahap menjalankan programnya. Yang gw inget, ketika running program pada matriks 10,000 x 10,000 itu lama banget parah. 1% map itu mungkin sejam lebih. Teman-teman yang lain juga merasakan hal yang sama. Jadi, ini emang tergantung laptop juga sih, kalo RAMnya tambah gede, ya bakal lebih cepet. Alhamdulillah, akhirnya diperbolehkan untuk menggunakan matriks 1000 x 1000 saja :’). Kemudian untuk UTS PDB, yang keluar tuh materi dari seluruh slide yang dijelaskan di kelas. 3 soal hafalan dan 1 soal koding. (Matkul begini kok masih ada hapalan :’))

Setelah UTS, kita lebih memperdalam pengetahuan tentang machine learning, ngodingnya pake pyspark (python + spark). Gw saranin buat kalian yang tertarik dengan data besar, coba2in aja ngoding pake python. Jujur, gw pertama kali ngoding pake python tuh ya pas pelajaran ini, dan gw cukup struggle karena gw belajarnya ga mulai dari python, tapi langsung nyoba2in pake pyspark. Alhasil, ada beberapa perintah yang sebenernya gampang dilakukan dengan hanya menggunakan python, tapi susah dengan menggunakan pyspark :D. Oiya, spark yang kita gunain di matkul ini masih yang versi 1.6, dan sekarang udah ada yang versi 2.0 dan lebih canggih. Tapi percayalah, python itu bahasa yang sangat simple, ga seribet Java, dan merupakan bahasa pemrograman yang paling gw sukai hingga saat ini. (sorry, Perl.)

Project Akhir! Ini seru sih. Project akhirnya berkelompok, 3 orang. Kelompok gw mengolah data Zomato dan membuat semacem search engine dan recommender system gitu (sok-sokan mau combine tugas sama matkul sebelah). Selain itu, gw juga nyobain untuk mengolah data menggunakan pyspark dan library ml yang ada di sana, seperti classification, regression, dll. Seru banget! Yey. Temen-temen kelompok lain ada beberapa yang buat sentiment analysis dan topik-topik sejenis yang ada di ML.

Berikut sedikit gambaran ada materi apa aja di matkul ini

  1. Introduction Big Data
  2. HDFS
  3. Big Data in Organization
  4. NoSQL
  5. Map Reduce
  6. Classfication & Clustering (Non-Spark/Teori Dasar)
  7. Introduction to Apache Spark
  8. Spark Programming Guide – RDD
  9. Mining Frequent Itemsets
  10. Collaborative Filtering & Recommendations
  11. Introduction to Data Warehouse & ETL Process

Selain perkuliahan di kelas yang membahas materi di slide, kita juga melakukan tutorial di lab. Ada 8 tutorial yaitu:

  1.  Introduction to Apache Hadoop
  2. Introduction to HBase
  3. Map Reduce with Java
  4. Machine Learning
  5. Spark’s RDD
  6. Apache Spark Classification
  7. Recommendation System
  8. Data Warehouse dan ETL

Kedengerannya serem ya? Tenang aja, emang serem tidak semenyeramkan itu kok. Di setiap materi, ada tutorialnya, dan bener-bener step by step gitu, sangat jelas, jadi ga susah untuk dikerjakan dan dimengerti. Dosen dan asdosnya pun baik sekali, sangat membantu, dan mendengarkan keluh kesah kami dalam mengerjakan tugas, memberikan banyak masukan, dan seakan ngerti banget gitu kemampuan ngoding anak SI :’). Terima kasih banyak Pak Alfan, Pak Bayu, dan Kak Remmy :). Intinya, jangan takut ambil matkul ini kalo kalian emang bener-bener penasaran sama data besar, worth it banget kok, dapet banget ilmunya, pengalamannya, dan akan semakin dekat dengan teman-teman sekelas karena berjuang bersama. Satu lagi, jangan manja, kalo ada error cari dulu di Google, semua masalah yang ada sebagian besar pernah dialami oleh orang lain.

Beberapa sumber yang mungkin bisa digunakan untuk mengetahui lebih dalam mengenai Big Data:

So far, ini matkul terfavorit gw hingga saat ini, dilihat dari ilmu dan pengalaman yang didapat, dosennya, dan tugas-tugasnya. Yuk, ambil pdb. 😀

PS: ML tuh machine learning ya.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s