22/04/2022

DSBD-05: Pengenalan Berbagai Teknologi di Big Data dan Data Science

“Technology is a useful servant but a dangerous master.” - Christian Lous Lange

Outline

  1. Pendahuluan teknologi Big Data dan Data Science
  2. Big Database
  3. Teknologi komputasi
  4. Bahasa Pemrograman
  5. Cloud Computing
  6. Teknologi Pendukung Lain.

Video DSBD-05



Link ke Youtube.

Pendahuluan Teknologi di Big Data dan Data Science

Tidak nampak sebelumnya dalam sejarah perkembangan ilmu data dimana teknologi, metode, dan aplikasi berkembang begitu pesat dan tersinkronisasi seperti pada saat revolusi industri 4.0 yang sedang berlangsung saat ini. Teknologi komputasi menggunakan GPU (Graphical Processing Unit) memungkinkan model dengan data tidak terstruktur seperti image dengan ribuan atau bahkan puluhan ribu kategori berbeda dapat dilakukan dan diaplikasikan pada sebuah mobil nirawak. Dengan teknologi yang sama, aplikasi deteksi masker wajah dan social distancing dapat dilakukan secara real-time dan membantu pemerintah dalam membuat berbagai kebijakan di suatu daerah tertentu. Berbagai aplikasi image classification ini juga dapat diaplikasikan ke emotion detection dan digunakan dalam bidang Human Resources Analytics dalam menentukan kebijakan optimal untuk meningkatkan produktivitas pekerja.

Gambar 1. Berbagai contoh aplikasi yang memungkinkan terjadi karena perkembangan metode dan teknologi di bidang data.

Tidak hanya terkait gambar, teknologi terkait bahasa juga nampak dalam keseharian kita lewat interaksi komputer dan manusia yang semakin baik. Sebut saja Apple Siri, Microsoft Cortana, Amazon Alexa, Samsung Bixby, atau Google voice assisstant. Walau tidak kasat mata berbagai metode dan teknologi juga disematkan di cukup banyak solusi yang ditawarkan para perusahaan startup eknologi, baik di bidang marketplace, online travel, online transportation, dan lain sebagainya. Seperti yang ditunjukkan di Gambar 2, Spektrum ilmu data sebenarnya tidak hanya metode dan aplikasi, tapi juga Aplikasi dan aspek sosial. Namun, pada kesempatan kali ini kita akan membahas aspek teknologi terkait ilmu data.

Gambar 2. Spektrum (Big) Data Science.

Ada beberapa cara diajukan untuk mengkategorikan pembahasan terkait teknologi big data dan data science. Sebagai contoh Gambar 3 menjelaskan pembahasan teknologi data menggunakan alur pengolahan data mulai dari penyimpanan hingga visualisasi. Namun kategorisasi ini luput untuk membahas beberapa poin penting pada perkembangan teknologi, terutama terkait teknologi hardware dan cloud. Tentu saja karena begitu luas dan kompleksnya teknologi terkait data saat ini, maka hampir tidak memungkinkan untuk membahas semuanya pada satu pokok bahasan seperti module/lesson ini. Kita mulai diskusi kita dengan membahas Perkembangan teknologi basis data.

Gambar 3. Salah satu pengelompokkan pembahasan teknologi terkait data.
image source: https://niasra.uow.edu.au/content/groups/public/@web/@inf/@math/documents/doc/uow262736.pdf

(Big) Databases

Akhir-akhir ini istilah NoSQL (e.g. MongoDB) semakin jamak ditelinga, terutama pada pembahasan mengenai data yang besar (Big Data).

Pertanyaan/diskusi yang paling sering muncul saat pertama kali mempelajari topik ini adalah:

  • Apakah NoSQL adalah pengganti (lebih baik dari) database relational (e.g. MySQL) ?
  • Apakah database relasional benar-benar tidak bisa digunakan saat ukuran datanya besar ?
  • lalu apa kelebihan & kekurangan masing-masing?

Mari kita mulai dengan definisi umum/penjelasan sederhana (non-formal) apa yang dimaksud dengan database relasional & NoSQL.

  • Database relasional adalah koleksi data terstruktur yang disajikan lewat tabel², dimana tabel² tersebut dapat saling berhubungan (relasi). Tipe ini adalah bentuk basis data yang konvensional. Saat seseorang menyebut kata database, kemungkinan besar orang umum akan membayangkan database relasional (sekumpulan tabel²). contohnya MySQLPostGreSQLSqlLiteMicrosoft Sql Server, dll.
    RDBMS (Relasional Database Management System) fokus pada konsep ACID:
    1. Atomicity: Suatu proses selesai secara menyeluruh/tidak.
    2. Consistency: Semua proses (transaction) yang terjadi di database harus memiliki state yang jelas. Setiap data yang disimpan harus memenuhi semua constraintCascades, dan triggers.
    3. Isolation: Sebuah proses tidak boleh mempengaruhi proses lain.
    4. Durability: Proses yang  telah selesai harus bersifat permanen, walau aplikasinya di restart.
  • Sedangkan NoSQL adalah tipe penyimpanan data selain yang berwujud tabular (tabel²), NoSQL tidak mengikuti prinsip (ACID) RDBMS sepenuhnya. Lalu kalau bukan ACID, apakah prinsip utama NoSQL ?
    NoSQL, menurut Eric Brewer menganut prinsip BASE:
    1. Basic Availability: Setiap request sekedar mendapat garansi “response”: Sukses/Gagal.
    2. Soft State: State NoSQL bisa berubah secara dinamis tanpa input manual untuk meyakinkan eventual consistency.
    3. Eventual Consistency: Untuk “sementara” waktu NoSQL mungkin tidak konsisten (Akan diabahas kemudian maksud & contohnya).
    NoSQL bukan berarti “No SQL” atau “bukan SQL”/tidak mendukung bahasa Query, tapi “Not-Only SQL”. Masudnya database NoSQL tetap memiliki (support) ‘semacam’ bahasa Query, namun dalam bentuk (terminology yang berbeda). Beberapa literature bahkan tidak menggolongkan NoSQL sebagai suatu bentuk database.  NoSQL bisa berupa Document (e.g. MongoDB), Key-Value (e.g. CouchDB), Graph (e.g. Neo4J), dsb.

Berikut beberapa perbedaan terminologi dan padanannya:

Gambar 4. Berbagai terminologi padanan di SQL dan NoSQL.

Sejarah ?

Banyak yang tidak menyukai pelajaran sejarah, namun sebagian orang mungkin tertarik sejarah awal lahirnya teknologi NoSQL. Ada beberapa istilah yang muncul pada tahun 2003-2006 ketika Google terkendala dengan data yang semakin membesar. Istilah² yang dijelaskan dalam artikel ilmiah ini terkait dengan perkembangan NoSQL saat ini.

  1. Google File System, 2003,
  2. Chubby, 2006,
  3. MapReduce, 2004, dan
  4. Big Data, 2006.

Artikel/paper² tersebut kemudian memicu perkembangan beberapa project Open Source untuk data besar:

  • Lucene: Java-based indexing dan search engine,
  • Hadoop: Untuk Reliable (terpercaya), scalable (Untuk data besar), distributed computing (data yang tidak terpusat),
  • Cassandra: Scalable, multi-master database with no single point of failure,
  • ZooKeeper: High performance coordination service for distributed applications,
  • Pig: High level dataflow language and execution framework for parallel computation.

Bilamana kita membutuhkan NoSQL (e.g. MongoDB) ketimbang database relasional (e.g. MySQL) dan sebaliknya ?

Pada saat apakah penggunaan NoSQL lebih cocok ketimbang database relasional  ?

  1. Saat kita membutuhkan penyimpanan data yang “relatif” besar, namun terdapat keterbatasan resources (komputer/server). Mengapa saya tambahkan syarat “keterbatasan resources”? Karena sebenarnya relational database scalable untuk data besar bahkan untuk skala >PetaByte (e.g. Facebook menggunakan MySQL). Namun demikian butuh resources yang sangat besar untuk membuat database relasional memiliki performa yang baik bila datanya besar.
  2. Data tidak terstruktur (Misal Dokumen) atau biasa disebut sebagai Schemaless Data Representation. Bayangkan data yang masuk ke database terkadang hanya memiliki 4 kolom, tapi dilain waktu memiliki jumlah kolom yang berbeda lagi. Di Database relasional kejadian seperti ini akan memaksa kita mengubah struktur DB (schema) yang biasanya sangat fatal, terutama apabila datanya besar. Perubahan schema adalah bencana besar bagi sistem IT. Karena aplikasi harus direvisi mengikuti perubahan tersebut. Pada terminologi Big Data, ini terkait dengan “Variety”, yaitu semakin beragamnya tipe/struktur/format data yang masuk ke database.
  3. NoSQL (MongoDB) sangat cocok dengan aplikasi yang berorientasi objek. Dengan tidak adanya Join di NoSQL dan query yang rumit, NoSQL terkenal mempercepat para developer dalam membangun sebuah aplikasi.
  4. NoSQL sangat cocok bila aplikasi/system membutuhkan proses Write/Insertdalam jumlah yang sangat besar dan dalam waktu yang singkat. Dikaitkan dengan terminology di Big Data, NoSQL sangat cocok jika sistem kita memiliki Velocity data yang besar.
  5. Data anda mengandung informasi lokasi (e.g. Latitude/Longitude).
  6. Data complexity – data disimpan (& manage) tersebar di berbagai lokasi (data centres) yang berbeda (distributed).
  7. Berikut beberapa contoh aplikasi/Web besar/terkenal yang menggunakan MongoDB sebagai gambaran untuk aplikasi seperti apakah ia cocok untuk digunakan: FourSquareSourceForgeCraigListBitLy, Forbes, Bosch, dll.

Bilamana NoSQL secara umum kurang cocok untuk digunakan:

  1. Saat data yang diinput memiliki nilai yang sangat berharga (misal transaksi pemabayaran/transfer uang). NoSQL cepat dalam melakukan input namun tradeoff-nya ia tidak se-reliable tipe database lain.
  2. Analytic: walau memiliki implementasi map reduce-nya sendiri, NoSQL bukan pengganti Hadoop atau analytic engine lainnya. Ia sifatnya komplementari (membantu) analytic engine.
  3. Multi-Object Transactions: NoSQL (MongoDB) tidak mendukung input beberapa hal ke satu atau lebih “table”. Misal, MongoDB hanya support untuk penyimpanan ke sebuah dokumen.
  4. Complex Query: Jika aplikasi yang dibangun membutuhkan query yang rumit (complex), biasanya NoSQL kurang cocok. Walau NoSQL memiliki querynya sendiri, namun lebih terbatas ketimbang database konvensional.
  5. ‘Nature’ dari datanya memang relasional (A==>nB, B==>nA).

Beberapa catatan penting lain :

  1. NoSQL (e.g. MongoDB) bukanlah pengganti analytic engine seperti hadoop. (Penting untuk ditekankan 2x :) )
  2. NoSQL “umumnya” memerlukan memory lebih besar (beware).
  3. Record yang dihapus di collection (noSQL) tidak langsung mengurangi ukuran file (Penjelasan lebih Lanjut).
  4. Diagram berikut ini menjelaskan lebih detail tentang berbagai tipe database yang ada saat ini:
Gambar 5. Peta berbagai teknologi di bidang basis data untuk berbagai jenis data dan aplikasi yang berbeda.
image Source: https://dataconomy.com/2014/07/sql-vs-nosql-need-know/

Beberapa catatan penting:

  • NoSQL dan SQL database memiliki +/- masing².
  • Keduanya saling melengkapi dan bukannya menggantikan.
  • NoSQL lebih cocok untuk data yang memiliki volume & velocity besar serta variety yang beragam.
  • NoSQL secara umum bukanlah analytic engine seperti Hadoop.
  • Perpaduan penggunaan database NoSQL dan SQL yang tepat tidak hanya akan meningkatkan performa, namun juga meng-optimalkan biaya (cost) infrastruktur.

FAQ:1. Mengapa NoSQL tidak disarankan untuk transaksi berharga (Misal perbankan) ? [toggle] Bisa, tapi sebaiknya untuk data yang tidak crucial (Selain transaksi dengan nilai besar). Mengapa ? NoSQL (misal MongoDB) cepat, karena mengorbankan feature yg biasanya ada di database SQL. MongoDB hanya ACID compliance pada level document:
Setiap update pada sebuah dokumen:

  • Atomic: Selesai secara menyeluruh/tidak.
  • Consistent: Tidak ada user yang akan melihat data yang ter-update sebagian.
  • Isolated: Tidak akan ada user yang mendapatkan data yg noisy/dirty.
  • Durable: Nah ini agak tricky kalau di NoSQL, tapi masih doable. 
    Tapi MongoDB tidak mendukung transactions — yaitu multiple update yg bisa di cancel (rolled back) dan ACID compliance.

    Untuk meningkatkan performa insert, MongoDB tidak langsung write ke disk, ia simpan dulu di (virtual) memory (hence butuh more memory). Bayangkan user insert/update data, lalu ada pesan “insert/update success” , tapi kemudian ada failure (misal mati listrik/meledak smile emoticon ). maka data yang baru saja dimasukkan sebenarnya belum tersimpan di disk (hence durable issue). Tapi tentu saja ada NoSQL yg respect ACID transactions (misal CouchDB). Semua ada +/-nya masing². Jadi sebagai developer harus benar² memperhatikan kebutuhan.

    All in All, trend teknologi Database kalau “menurut saya” beralih dari general purpose ke adhoc (specific).

Nantikan tulisan terkait berikutnya tentang* (tergantung waktu luang :) ):

  • Contoh kasus development SQL VS NoSQL,
  • Pendahuluan/dasar² MongoDB, CouchDB, HBase, Hypertable, Cassandra, Redis, & Berkeley DB, serta
  • Pembahasan lanjut tentang MongoDB.

Big Data Computing

Perkembangan teknologi terkait dengan pengolahan data tidak akan luput dari peran komputer yang kemudian membantu melakukan berbagai perhitungan dari data, baik dalam membentuk model terbaik (optimal), maupun dalam melakukan prediksi atau peramalan dari model tersebut. Berdasarkan bagaimana data masuk dan diolah, CPU (central Processing Unit) komputer terbagi menjadi 4 macam (Gambar 6): sebuah proses dan sumber data (SISD), Sebuah proses dan beberapa data (SIMD), beberapa proses dan sebuah sumber data (MISD), dan beberapa proses komputasi dan data (MIMD) seperti kebanyakan komputer modern saat ini. Keterangan lebih lanjut tentang hal ini dapat dibaca di link ini.

Gambar 6. Berbagai Arsitektur CPU dari yang paling sederhana hingga arsitektur CPU modern seperti MIMD.

Namun demikian, terkait dengan pengolahan data, maka perkembangan teknologi komputasi lebih terjadi akibat bagaimana data dan komputasi dilakukan pada sebuah sistem. Pada era Statistika Tradisional komputasi dan data berada di satu tempat, biasa disebut sebagai CDCC-Centralized Data and Centralized Computation. Secara umum (hampir) semua model Statistika tradisional memiliki asumsi implisit ini, yaitu data berada di satu tepat. Bayangkan data dalam format Table diolah dengan software Statistika klasik seperti SPSS, Minitab, SAS, Splus, dsb. Di era 90-an berbagai permasalahan mulai meningkat kompleksitasnya, terutama di bidang Fisika, Klimatologi, BioInformatika, dsb. Pada aplikasi-aplikasi ini sebenarnya ukuran data tidak terlalu besar, namun model dan algoritma yang digunakan sangat kompleks, sehingga komputasi dijalankan secara parallel. Teknologi yang biasa digunakan pada kondisi ini adalah arsitektur CDDC-Centralized Data-Distributed Computing. Data dikirimkan ke Super Komputer/High Performance Komputer (HPC) untuk kemudian diolah secara simultan menggunakan arsitektur komputer dengan memory terdistribusi (library MPI) atau terpusat (library OpenMP).

Gambar 7. Perkembangan arsitektur Data dan komputasi di bidang pengolahan data.

Seiring dengan berkembangnya ukuran data, teknologi database-pun semakin berkembang (sebut saja data warehouse dan Data Lake). Data tidak lagi dapat disimpan dalam sebuah node komputer, melainkan harus disimpan dalam sebuah cluster database dimana data disebar ke beberapa mesin komputer yang saling terhubung. Salah satu analisa data sederhana dari database ini adalah berbagai statistik dasar (misal rata-rata dan keseragaman data) maupun visualisasi trend perubahan data seiring berjalannya waktu. Dengan kata lain, berbanding terbalik dengan arsitektur sebelumnya (CDDC), DDCC (Distributed Data-Centralized Computing) ini mengolah data yang besar, namun model yang digunakan cenderung lebih sederhana.

Gambar 8. Arsitektur paling umum untuk Big Data.

Di era Industri 4.0 kita berada pada fase dimana tidak hanya datanya yang besar, namun juga kemudian berbagai aplikasi modern terkait data membutuhkan model yang cukup kompleks. Pada keadaan dimana ukuran data besar dan model yang digunakan cukup kompleks, maka arsitektur DDDC (Distributed Data-Distributed Computing) menjadi solusi paling optimal saat ini untuk menangani permalsahan di Big Data. Dengan menggunakan arsitektur DDDC ini, maka data tidak perlu ditransfer ke komputasi seperti CDDC, namun langsung diolah dimasing-masing Node. Sehingga keseluruhan proses menjadi jauh lebih efisien. Salah satu teknologi yang dapat digunakan pada arsitektur ini yang sangat populer adalah Hadoop atau Spark.

Perlu diingat bahwa penggunaan arsitektur komputer (teknologi) tertentu akan merubah bagaimana model terbaik (optimal) di-hitung/dapatkan (rumus dan algoritmanya berubah). Sehinga Big Data bukanlah sekedar masalah kebutuhan akan teknologi/komputasi yang lebih canggih karena data yang besar, namun juga teori yang juga harus mengikuti teknologi yang digunakan.

Bahasa Pemrograman

Setelah Database dan Komputer (komputasi), perkembangan teknologi terkait data tidak bisa lepas dari perkembangan tenologi perangkat lunaknya (software). Ketika komputer pertama kali digunakan, instruksi ke komputer dilakukan dengan bahasa yang mendekatai bahasa mesin (sebut saja Assembler). Paradigma pemrograman ini kemudian berkembang ke penggunaan fungsi dan kumpulan fungsi (procedure), yang biasa dibut sebagai teknik pemrograman terstruktur/Procedural. Paradigma pemrograman yang paling populer saat ini adalah Pemrograman Berorientasi Objek dimana suatu objek (class) kemudian memiliki fungsi dan atribut/properties yang melekat dengannya (baca lebih lanjut disini). Dikarenakan penggunaan arsitektur DDDC di Big Data yang telah dijelaskan sebelumnya, maka paradigma pemrograman ini kemudian berkembang ke teknik Functional Programming (Map-Reduce) yang sangat cocok untuk diterapkan di arsitektur komputer DDDC.

Tidak semua model/algoritma di Statistika/Machine Learning/Data Science Optimal di jalankan di suatu arsitektur komputer tertentu. Walaupun DDDC sekalipun.

Gambar 9. Ilustrasi menghibur perkembangan paradigma pemrograman dari waktu ke waktu.
Image Source:
https://medium.com/@shastri.shankar9/functional-programming-in-scala-through-q-as-part-1-45802a72d62a

Paradigma pemrograman Functional Programming (FP) tidak dapat dijalankan di sembarang bahasa pemrograman (hanya dapat dilakukan pada bahasa pemrograman tertentu). Di Big Data biasanya Java dan Python digunakan untuk melakukan hal ini. Python akhir-akhir ini semakin meningkat popularitasnya karena kemudahan dalam penggunaannya. Gambar 10 mengilustrasikan bagaimana Map-Reduce (fungsi di FP) dapat dilakukan dengan sangat mudah di Python. Task yang sama dikerjakan di bahasa pemrograman lain (misal Java) akan membutuhkan kompleksitas program yang jauh lebih tinggi.

Gambar 10. Ilustrasi bagaimana Map-Reduce (Functional Programming) dilakukan di Python.

Terkait dengan hubungan paradigma pemrograman dan bahasa pemrograman yang mendukung pendekatan pemrogaraman tersebut secara lengkap diberikan di Gambar 11. Sebagai contoh Bahasa pemrograman C++ biasanya digunakan di paradigma pemrograman OOP lewat struktur data Class-nya. Ada satu hal yang menarik dimana Python mendukung berbagai paradigma pemrograman sekaligus (procedural, OOP, dan FP).

Paradigma pemrograman (hence bahasa pemrograman juga) dipilih bergantung aplikasi yang akan dibuat. Tidak ada sebuah bahasa pemrograman yang kemudian paling optimal untuk semua (macam) aplikasi.

Gambar 11, berbagai Bahasa Pemrograman dan paradigma pemrograman yang didukungnya.
Cited from Van Roy, “Programming Paradigms for Dummies,” page 13, figure 2, see
 https://www.info.ucl.ac.be/~pvr/VanRoyChapter.pdf.

Python saat ini menjadi bahasa pemrograman yang paling populer untuk data science, machine learning, dan kecerdasan buatan (Gambar 12). Selain karena hal-hal yang telah dijelaskan sebelumnya, Python juga memuat banyak fungsi yang memudahkan dalam pengolahan data, memiliki fungsi untuk menghubungan ke berbagai teknologi Big Data (misal NoSQL dan support IoT devices), juga dapat memiliki performa yang sangat tinggi ketika programnya di kompilasi. Sebuah kelebihan yang tidak dimiliki bahsa pemrograman lainnya (interpreter, Just-In-Time compiler, dan compiler sekaligus).

Gambar 12. Popularitas bahasa pemrograman hingga tahun 2020.
Source: Google Trends, cited from https://www.youtube.com/watch?v=T4JkCkfvKwg

Dalam sebuah Big Data Framework (ekosistem komponen teknologi terkait Big Data). Penggunaan spesifik teknologi perangkat lunak di Big Data selanjutnya yang paling populer adalah Hadoop untuk batch processing data (tidak bisa realtime) dan Apache Spark untuk process realtime. Pembeda utama dari ke-2 teknologi ini adalah, di Hadoop data di simpan dalam storage permanen (harddisk), sedangkan di Spark data disimpan dalam (volatile) memory seperti RAM (Gambar 13). Teknologi ini biasanya hanya perlu dikuasai oleh apra Data Scientist senior yang menangani data dalam jumlah yang sanat besar. Dan ditemukan biasanya hanya pada perusahaan-perusahaan berskala besar.

Cloud Computing

Sebagaimana yang telah dijelaskan sebelumnya, misal seorang Data Scientist (DS) ingin mengolah data yang besar di sebuah arsitektur DDDC secara real-time. Maka ia dapat menggunakan Apache Spark yang memiliki performa tinggi karena data disimpan di memori komputer yang kecepatannya jauh lebih tinggi ketimbang hard disk. Namun sang data scientist memerlukan beberapa komputer untuk melakukannya, ia juga harus menghubunga komputer-komputer tersebut dalam sebuah jaringan komputer. Tidak itu saja sang DS juga harus menyiapkan "precaution" seandainya terjadi power failure (mati listrik), sehingga ia harus menyiapkan UPS/Genset cadangan. Lebih jauh lagi ia juga perlu menyiapkan backup data di harddisk berperforma tinggi untuk antisipasi suatu Force Majeur seperti bencana alam atau kebakaran. Sampai disini sudah terbayangkan betapa rumitnya mempersiapkan sebuah arsitektur Big Data yang paling sederhana sekalipun. Hal tersbut bukanlah perkara mudah dan juga bukan perkara yang murah.

Gambar 14. Berbagai macam arsitektur data dilihat dari perspektif penempatan (lokasi) dan konektivitas (keterhubungan).

Solusi dari permasalahan diatas adalah dengan menggunakan pelayanan komputer awan (cloud computing). Penjelasan paling sederhana dari cloud computing adalah "penyewaan berbagai resources komputasi lewat koneksi internet. Atau dengan kata lain CC meruapakan pemanfaatan teknologi komputer ('komputasi') dan pengembangan berbasis Internet ('awan'). Cloud ini bisa diakses public, private hanya kalangan internal perusahaan/instansi, atau on-premise yang berarti hardware berada dimana institusinya berada (Gambar 14).

Gambar 15. Pelayanan utama yang ditawarkan teknologi Cloud.
image source: https://www.ibm.com/cloud/infrastructure

Biasanya ada tiga buah pelayanan utama dari cloud computing, yaitu penggunaan software (SAAS), penggunaan platform dimana seorang DS dapat mengembangkan suatu solusi (aplikasi) berdasarkan data. Atau IaaS dimana suatu kesatuan utuh infrastruktur dapat digunakan secara leluasa. Penjelasan lebih detail tentang hal ini diberikan di video yang disertakan di module pelajaranan DSBD-05 ini. Gambar 16 memberikan informasi berbagai contoh penyedia jasa CC yang ternama beserta contoh biaya yang harus dikeluarkan DS per service yang digunakan.

Gambar 16. Berbagai contoh perusahaan penyedia jasa Cloud Computing dan ilustrasi biaya pelayanannya.

Teknologi Pendukung Lain

Gambar 17 melukiskan dengan lebih lengkap berbagai teknologi terkait Big Data yang ada saat ini. Apa yang sudah dipaparkan sebelumnya hanyalah sebagian kecil dari "Rimba" teknologi yang ada terkait Big Data atau Data Science saat ini. Seorang DS tidak perlu menguasai seluruh teknologi yang ada. Namun demikian ia harus dapat memberikan masukan ke perusahaan terkait teknologi yang sebaiknya digunakan perusahaan untuk mengatasi permasalahan yang sedang dihadapi perusahaan saat ini. Perkembangan teknologi ini akan terus berjalan 9dengan cepat), itulah mengapa di DSBD-02 kita telah membahas bahwa salah satu kompetensi yang sangat penting dimiliki oleh seorang data scientist adalah "Long Life Learner".

Gambar 17. "Rimba" teknologi terkait (big) Data Science. image source: https://mattturck.com/data2020/

Gambar 18 berisi beberapa contoh teknologi penting lain terkait data yang belum dibahas di penjelasan diatas. Penjelasan singkat tentang teknologi-teknologi tersebut diberikan di video DSBD-05 ini.

Gambar 18. Contoh berbagai teknologi lain terkait Big Data yang belum dibahas di artikel ini.


Tidak ada komentar:

Posting Komentar

Relevant & Respectful Comments Only.