Big Data di Perguruan Tinggi (Bagian 2)

Masih bingung dengan big data? jujur saja saya sendiri hingga membaca beberapa referensi baik googling maupun “textbooking”. Masih juga bingung. Perlu diberi contoh yang lebih konkrit. Jadi teringat dulu sekitar tahun 2000an bersamaan dengan perusahaan-perusahaan IT besar di indonesia mulai berguguran (yang mampu bertahan saya lihat hanya detik.com saat itu) . Saya menemukan konsep baru format data berbasis web. XML butuh beberapa tahun bagi saya untuk mengerti apa itu XML, ya salah satunya harus mempraktekan penggunaannya jadi langsung mengerti. Sama halnya dengan big data, saya harus sedikit mencoba lebih mendalami bagaimana cara mempraktekannya.Pernahkah kita membayangkan bagaimana si mesin pencari sebutlah google, berusaha menampilkan hasil pencarian yang paling sesuai dengan kebutuhan kita. Dengan kalimat atau kata-kata kunci yang dapat kita masukan dengan berbagai bahasa, google langsung menampilkan link situs sesuai dengan yang kita butuhkan termasuk iklan-iklan yang disisipkan sesuai dengan apa yang kita cari. Apakah google mendapatkan hasil pencarian tersebut berasal dari proses pengolahan data dari  database tradisional  yang dimiliki google. Misal kita mencari kata big data, setelah kita submit aplikasi servernya langsung melakukan pencarian dengan query : select * from data where katakunci like ‘%big data%’ ? ya mungkin waktu awal google dibuat prosesnya seperti itu,tapi sekarang? apakah masih sama?.

Mesin pencari mendapatkan data dari berbagai macam sumber, dari mulai meta data yang terkandung dalam setiap halaman situs web, dari konten web itu sendiri dan juga dari kalimat dan kata-kata yang diketikan user pada input pencarian dan bahkan mendata situs apa saja yang kita kunjungi. Berapa besar data yang sudah terkumpul oleh mesin pencari seperti google? entahlah perkiraan saya  bukan bicara terra lagi tapi zetta. Jika diolah dengan sistem manajemen database tradisional seperti mysql atau mssql server misalkan dimana sistem pencarian digunakan oleh berjuta-juta pengguna di seluruh dunia, seberapa cepat si mesin pencari bisa menampilkan hasilnya ke layar setiap pengguna?.

Data tersttuktur (structured data)

Memang jika bicara soal data secara teknis dalam sebuah sistem informasi kita pasti selalu mengacu kepada konsep database yamg memiliki table dimana table memiliki field dan setiap table dapat direlasikan berdasarkan field-field kunci. Tidak ada yang salah dengan konsep database. Hingga sekarang saya masih pakai dan tidak diragukan manfaat dan kehandalan konsep database seperti ini. Untuk data-data yang jelas dan dapat dipetakan kemudian dimasukan ke dalam database, hal tersebut masih tetap menjadi kebutuhan utama. Semuanya telah dirancang secara terstruktur. Sehingga selama data yang ada dapat disusun secara terstruktur, DBMS pastinya masih menjadi andalan.  Untuk selanjutnya DBMS yang saat ini disebut-sebut pengolahan data tradisional dalam konsep big data disebut juga sebagai pengolah data terstruktur.

Data tak terstruktur (unstructured data)

Jika ada data terstruktur berarti ada data tak terstruktur (unstructured data) . Lalu data yang tidak terstruktur seperti apa?. Boleh saya menebak bahwa anda saat ini sedang membaca artikel saya? Ya artikel saya telah dibuat dan tersusun dalam bahasa indonesia. Mungkinkah artikel saya ini disebut sebagai data?. Jawabannya pasti bisa menimbulkan polemik, jika sudah dalam bentuk kalimat seperti tulisan ini, beberapa pasti ada yang menjawab ini bukan data, tapi ini informasi.  Karena apa yang dibaca sudah memiliki makna. Itu jika yang bacanya manusia. Bagaimana jika yang bacanya mesin? saya perjelas : bagaimana jika yang membacanya mesin pencari?.Artikel saya ini sebenarnya bisa jadi sebagai salah satu  sumber data. Agar artikel saya bisa dimengerti dan dibaca oleh mesin pencari dan mampu mengerti makna, dibutuhkan sistem pengolah data yang tidak hanya sekedar aplikasi DBMS. Disitulah kenapa DBMS mulai dianggap sebagai pengolah data tradisional. Saya coba membuat contoh kalimat : “Budi bermain dengan Wati”, kalimat tersebut bagaimana diolah dalam database DBMS (tradisional) paling dimasukan langsung dalam tabel kalimat dimana memiliki field isi dan isi recordnya “Budi bermain dengan wati”, Kita bisa melakukan pengolahan kalimat itu dengan cara “Select isi from kalimat where isi like ‘%budi%'” hasilnya akan menghasilkan daftar data dalam tabel kalimat yang memiliki kata “budi”. Saat ini untuk analisa data tidak cukup seperti itu. Tapi kita harus mampu mengetikan “Siapa yang bermain dengan wati” mesin pencari harus bisa menjawab “budi”. Dari situlah muncul istilah “data tidak terstruktur”.

Analisis konten web menjadi bisnis baru, besarnya data yang ada menjadikan pekerjaan analisis dari data tak terstruktur ini begitu banyak. Awalnya saya punya pemikirian bahwa proses analisis data bukanlah urusan database, melainkan aplikasi. Pernahkah kita mendengar istilah Artificial Intelligence (AI) ? nah untuk analisis kalimat agar dapat dimengerti itu urusannya di aplikasi dan AI ini yang bekerja. Namun cara berfikir yang memisahkan data dan aplikasi seperti ini adalah pola pemikiran tradisional. Itu akan membuat sebuah sistem berfikir lambat. Ah saya sempat menjadi pusing dengan hal tersebut.

JSON

Sebagai programmer saya coba mencari relevansinya apakah ada penyatuan data dan program menjadi satu bagian agar proses menjadi lebih efesien dan efektif. Pernahkah kita membuat pemrograman yang memanfaatkan JSON (java script object notation)? Anggap saja sudah pernah (jika belum pernah silahkan pelajari dan praktikan). Jika boleh bertanya sebenarnya JSON itu data atau objek pemrograman? ya sebenarnya itu adalah notasi pemrograman javascript yang isinya adalah deklarasi objek atau variable beserta data, sehingga browser langsung mengenal sebagai objek. Penemuan sederhana yang hebat!. Sebelumnya kita menyediakan format data dalam bentuk XML atau langsung akses kedalam database. Dalam dunia layanan data berbasis web (webservices) , JSON telah meringkas beberapa kebutuhan data sederhana untuk diweb agar lebih ringan dan cepat diakses oleh web, sebelumnya AJAX memanfaatkan XML sebagai format data, saat ini XML banyak tergantikan oleh JSON.

Untuk menghasilkan JSON sementara harus saya akui pasti tetap saja kita mengambil data dari DBMS menggunakan query kemudian hasilnya dikonversi kedalam format JSON. Bagaimana jika DBMSnya kita hilangkan agar databasenya ya sudah format nya seperti JSON. Segalanya sudah berbasis objek. Dengan notasi javascript objek kita tidak terlalu dibuat lama oleh proses query kemudian haris dikonversi dan baru diproses oleh webbrowser.

NO SQL

Masih belum puas dengan JSONnya? selanjutnya saya mulai mengenal istilah NOSQL. NOSQL sebenarnya ada yang mengartikan Non SQL, atau pengolahan data tanpa memanfaatkan konsep tradisional : relasional, tabel dan field. Ada juga yang menyebutkan NOSQL itu singkatan dengan kepanjangan Not Only SQL. Ya untuk dapat mengerti No SQL sekali lagi saya harus praktekan dan mencara apakah ada aplikasi NoSQL yang bisa digunakan di laptop saya?. Ya ternyata ada namanya MongoDB. Silahkan dicoba dan cari-cari cara install hingga penggunaannya. Sederhanyanya No SQL itu ya penyimpanan data dalam bentuk objek seperti bagaimana kita menempatkan data dalam format JSON. Hanya saja sekarang disimpan dalam bentuk database. Untuk membuat aplikasi-aplikasi konten tinggi  dengan proses akses yang jauh lebih cepat karena ada beberapa layer yang dihilangkan karena ada penggabungan dan penyederhanaan. Seperti aplikasi sosial media atau aplikasi web chat. NoSQL tidak hanya mongoDB ada yang lain, silahkan cari. Nah mulai mengerti nih dan kegambar. Kita coba lihat beberapa perusahaan konten dunia seperti google, facebook dll, ternyata mereka mulai memadukan DBMS tradisional dan NoSQL.

bersambung…