Teknologi Penyimpanan Data
- Get link
- X
- Other Apps
Teknologi Penyimpanan Data
Bagaimana perjalanannya selama belajar di kelas ini? Semoga Anda selalu diberikan kesehatan dan kebahagiaan ketika menyerap ilmu dari setiap modulnya. Selaras dengan judulnya, pada modul ini, Anda akan menjelajahi dan mengeksplorasi teknologi dan perangkat (tools) pendukung data science, seperti penyimpanan basis data (database), database on premise vs. cloud, perangkat pengolah data dan visualisasi data, bahasa pemrograman yang digunakan untuk data science, serta teknologi machine learning dan GitHub. Sangat menarik, bukan? Tidak perlu lama-lama lagi, mari kita langsung ke materi berikutnya.
Berkenalan dengan Basis Data
Dalam pembelajaran data science, tentu Anda memerlukan pemahaman yang luas. Selain teori, teknologi terkait data dan perangkat pendukungnya harus Anda kuasai agar memahami dari berbagai aspek.
Namun, sebelum melanjutkan pembahasan, pernahkah Anda mendengar istilah basis data atau database? Atau bahkan sudah paham betul mengenai basis data? Jika masih belum, tenang saja. Mari kita nikmati perjalanan di modul ini secara perlahan, ya.
Menurut Amazon Web Service (AWS), basis data adalah koleksi data sistematis yang disimpan secara elektronik. Ini dapat berisi semua jenis data, seperti kata, angka, gambar, video, dan file. Ada pula menurut sumber lain, yaitu Oracle, menyatakan bahwa basis data adalah kumpulan terorganisasi dari informasi terstruktur atau data, biasanya disimpan secara elektronik dalam sistem komputer.
Basis data biasanya dikendalikan oleh Database Management System (DBMS) atau sistem manajemen basis data. Nah, data dan DBMS beserta aplikasi yang terkait dengannya disebut sebagai sistem basis data atau juga bisa disebut basis data saja.
Tipe-Tipe Basis Data
Tentu ada banyak jenis basis data yang dapat diaplikasikan, tetapi basis data yang terbaik untuk organisasi bergantung pada bagaimana organisasi tersebut bermaksud menggunakan data. Berikut merupakan beberapa tipe-tipe basis data.
- Basis Data Relasional (Database Relational)
Dalam sistem manajemen basis data relasional (RDBMS), hubungan setiap data memiliki sifat yang relasional serta tersimpan dalam bentuk kolom dan baris. SQL (Structured Query Language) adalah bahasa pemrograman yang digunakan untuk permintaan RDBMS. Beberapa produk yang biasa digunakan adalah DB Browser SQLite, MySQL, Oracle, dll. Penjelasan basis data relasional akan dibahas lebih lanjut pada kelas berikutnya.
- Basis Data Berorientasi Objek (OOD - Object-oriented Databases)
Object oriented database adalah sebuah model basis data yang menyimpan informasi dalam bentuk objek. Beberapa produk yang biasa digunakan adalah IBM Db2, InterSystems IRIS, Google Cloud Storage for Firebase, dll.
- Basis Data Terdistribusi (Distributed Databases)
Basis data terdistribusi adalah kumpulan data yang digunakan bersama-sama dan memiliki hubungan logis fisik tersebar di jaringan komputer. Konsep ini mendasarkan pada prinsip bahwa data dibuat, disediakan, dan dikelola secara terpusat.
- Gudang Data (Data Warehouse)
Sebuah sistem atau platform yang dirancang untuk mengumpulkan, menyimpan, menganalisis, dan mengelola data dari berbagai sumber yang berbeda untuk tujuan analisis bisnis dan pengambilan keputusan. Beberapa tools data warehouse di antaranya Amazon Redshift, Snowflake, Google BigQuery, dll.
- Basis Data NoSQL
NoSQL atau basis data non-relasional memungkinkan data tidak terstruktur dan semi terstruktur untuk disimpan dan dimanipulasi (berbeda dengan basis data relasional, yang menentukan semua data yang dimasukkan ke dalam basis data harus disusun). Beberapa contoh basis data NoSQL antara lain MongoDB, Cassandra, dan Couchbase.
- Basis Data Grafik (Graph Databases)
Basis data grafik dibuat khusus untuk menyimpan dan menavigasi hubungan. Basis data grafik menggunakan node untuk menyimpan entitas data dan edge untuk menyimpan hubungan antar entitas. Gambar di atas merupakan analogi dari penerapan basis data grafik pada jejaring sosial. Mengingat orang (node) dan hubungan mereka (edge), Anda dapat mengetahui siapa "teman dari teman" dari orang tertentu—misalnya, teman dari teman Naura.
Pada kelas selanjutnya, Anda akan mempelajari lebih dalam terkait basis data yang tentunya akan sangat menarik. Semangat untuk menyelesaikan kelas ini agar dapat lanjut ke kelas berikutnya, ya. Good Luck!
Basis Data Everywhere
“Berbisnis dengan hati nurani sangat bermanfaat” - Ingvar Kamprad (CEO IKEA)
Berlatar belakang dari quotes di atas, tentu setiap hal apa pun di muka bumi terdapat manfaat yang dapat digunakan oleh setiap insan. Berikut merupakan manfaat dari adanya basis data yang digunakan oleh industri untuk berbagai kasus penggunaan.
- Deteksi penipuan
Basis data grafik membantu manajemen identitas dan mendeteksi penipuan. Ketika digabungkan dengan algoritma machine learning, ia dapat menemukan pola dan mendeteksi aktivitas penipuan secara otomatis.
- Manajemen dokumen
Data berbentuk dokumen dapat disimpan dan dikelola melalui basis data NoSQL. Basis data NoSQL juga memungkinkan organisasi untuk melakukan kueri dan mengindeks dokumen dengan mudah.
- Gaming dan hiburan
Banyak perusahaan gaming dan hiburan menggunakan basis data secara luas untuk memberikan pengalaman bermain yang lebih baik, misalnya akses masuk simultan untuk jutaan pengguna.
Data, Basis Data, dan Dataset
Mungkin terlintas di benak Anda “Duh… bingung… Apa perbedaan antara data, basis data, dan dataset?” Nah, di bawah ini merupakan perbandingan antara data, basis data, dan dataset yang perlu Anda ketahui.
First thing first, di modul sebelumnya, telah dijelaskan bahwa menurut Kamus Besar Bahasa Indonesia, data adalah informasi, fakta, dari keterangan yang benar dan nyata mengenai suatu objek atau kejadian yang bisa dicatat atau disimpan. Lalu, apa perbedaan antara basis data dan dataset?
| Basis Data | Dataset |
|---|---|
Basis data adalah kumpulan data yang diatur dan disimpan dengan cara yang memungkinkan akses dan pengambilan yang mudah. Selain itu, basis data juga dapat menyimpan berbagai macam tipe data, termasuk teks, nomor, gambar, dan tipe data lainnya. | Dataset adalah kumpulan data diatur dalam format tertentu, seperti spreadsheet, CSV, atau basis data. Umumnya, digunakan untuk keperluan spesifik. |
Memiliki banyak kumpulan data dan dapat digunakan untuk aplikasi yang berbeda. | Dapat menjadi bagian dari data yang diambil dari basis data yang lebih besar. Bisa juga, dataset diambil dari sumber lain yang mendukung formatnya. |
Contoh tools: BigQuery, MySQL Clients, DB Browser SQL, dll. | Contoh tools: Google Spreadsheet, Excel, Situs Public Datasets, dll. |
Salah satu penggunaan basis data dan dataset adalah pada perusahaan kereta api. Perhatikan video di bawah ini.
URL Link: Video.
Agar Anda lebih memahami cara kerja antara basis data dan dataset, perhatikan gambar di bawah ini.
Sederhananya, gambar tabung di atas merupakan representasi dari sebuah basis data. Tabel yang terdapat di dalamnya adalah struktur dalam basis data yang diatur dengan bentuk kolom dan baris, serta basis data juga terdiri dari data-data yang saling terhubung seperti berikut.
Namun, apabila tabel-tabel tersebut dibungkus dengan menggunakan format tertentu, ia disebut sebuah dataset. Sederhananya adalah basis data terdiri dari dataset yang saling berhubungan satu sama lainnya.
Bagaimana menurut Anda terkait analogi tersebut? Anda pasti sudah paham terkait perbedaan antara basis data dan dataset, bukan? Tenang! Pembahasan terkait data, basis data, dan dataset akan Anda temui di kelas berikutnya. Namun, apabila masih belum paham, Anda bisa bertanya di forum diskusi, ya. See you there!
Rupa-Rupa Sistem Basis Data
Pada materi sebelumnya, Anda telah mengetahui definisi, tipe-tipe dari basis data, serta membandingkan antara data, basis data, dan dataset. Nah, pada bagian ini, Anda akan memahami secara mendalam terkait rupa-rupa sistem basis data yang populer digunakan.
Perlu Anda ketahui bahwa SQL (Structured Query Language) dikembangkan oleh IBM pada tahun 1970 dengan tujuan untuk memanipulasi dan menarik data yang tersimpan pada IBM database management system (DBMS) yang disebut System R.
Seiring dengan perkembangan teknologi, di awal abad 21, muncul teknologi baru yang dikenal dengan NoSQL (No SQL atau Not Only SQL). Teknologi ini dipicu oleh kebutuhan-kebutuhan perusahaan Web 2.0 yang mengacu pada website dengan titik berat pada user, penggunaan yang mudah, dan sesuai dengan sistem yang digunakan oleh end user. Penasaran lebih untuk mengetahui kelanjutannya? Yuk simak penjelasannya di bawah ini.
SQL (Structured Query Language)
Disclaimer! Materi SQL ini akan dibahas lebih lanjut pada kelas Belajar Dasar Structured Query Language (SQL) yang pastinya akan lebih menarik dan mengajak Anda untuk mengeksplorasi lebih banyak hal. Jadi, jangan lupa tuntaskan kelas ini hingga selesai agar Anda dapat menjelajahi dunia data science lebih luas, ya.
SQL adalah bahasa pemrograman untuk menyimpan dan memproses informasi dalam basis data relasional. Basis data relasional menyimpan informasi dalam bentuk tabel dengan baris dan kolom yang mewakili atribut data berbeda dan berbagai hubungan antara nilai data.
Anda dapat menggunakan pernyataan SQL (SQL statement) untuk menyimpan, memperbarui, menghapus, mencari, dan mengambil informasi dari basis data. Anda juga dapat menggunakan SQL untuk mempertahankan dan mengoptimalkan kinerja basis data.
Dalam penggunaan SQL, ada beberapa jenis perintah yang digunakan di antaranya DDL (Data Definition Language) dan DML (Data Manipulation Language). Mari kita bahas satu per satu.
Data Definition Language (DDL)
DDL merupakan subperintah pada SQL yang dimanfaatkan guna membangun kerangka basis data. Tabel di bawah ini merupakan statements utama dari DDL.
CREATE SCHEMA | ALTER DOMAIN | DROP SCHEMA |
CREATE DOMAIN | DROP DOMAIN | |
CREATE TABLE | ALTER TABLE | DROP TABLE |
CREATE VIEW | DROP VIEW |
Data Manipulation Language (DML)
DML merupakan subperintah pada SQL yang dimanfaatkan dalam manipulasi basis data yang sudah dibuat. Pada dasarnya, dalam DML terdapat empat perintah berikut beserta fungsinya.
| Perintah | Fungsi |
|---|---|
INSERT | Digunakan untuk memasukkan data baru dalam tabel. Perintah ini dapat dijalankan saat basis data dan tabel telah selesai dibuat. |
SELECT | Digunakan untuk mengambil dan menampilkan data dari tabel atau sejumlah tabel dengan memanfaatkan relasi. |
UPDATE | Digunakan untuk memperbarui data dalam tabel. |
DELETE | Digunakan untuk menghapus data dari tabel. |
NoSQL (Not Only SQL)
NoSQL atau disebut juga sebagai “not only SQL” atau “non-SQL” adalah pendekatan untuk desain basis data yang memungkinkan penyimpanan dan kueri data di luar struktur tradisional yang ditemukan dalam basis data relasional.
Pada dasarnya, basis data NoSQL menyimpan data dalam satu struktur data seperti dokumen JSON. Karena desain basis data non-relasional ini tidak memerlukan skema, ia menawarkan skalabilitas cepat untuk mengelola kumpulan data besar dan tidak terstruktur.
Basis data NoSQL umumnya diklasifikasikan ke dalam empat kategori utama, di antaranya
- Document databases
Basis data ini menyimpan data sebagai dokumen semi-terstruktur, seperti JSON atau XML; dan dapat dikueri menggunakan bahasa kueri berorientasi dokumen.
- Key-value stores
Basis data ini menyimpan data sebagai key-value pairs dan dioptimalkan untuk operasi baca atau tulis yang sederhana dan cepat.
- Column-family stores
Basis data ini menyimpan data sebagai keluarga kolom, yaitu kumpulan kolom yang diperlakukan sebagai satu kesatuan. Mereka dioptimalkan untuk kueri data dalam jumlah besar yang cepat dan efisien.
- Graph databases
Sempat dibahas pada materi sebelumnya bahwa basis data ini menyimpan data sebagai node dan edge, serta dirancang untuk menangani hubungan kompleks antar data.
Basis data NoSQL sering digunakan dalam aplikasi yang membutuhkan banyak data untuk diproses dan dianalisis secara real-time, seperti analitik media sosial (social media analytics), e-commerce, dan game. Mereka juga dapat digunakan untuk aplikasi lain, seperti sistem manajemen konten, manajemen dokumen, dan manajemen hubungan pelanggan.
Namun, bisa saja NoSQL tidak cocok untuk semua aplikasi karena tidak memberikan tingkat konsistensi data dan jaminan transaksional yang sama dengan basis data relasional. Jadi, harus lebih berhati-hati dalam mengevaluasi kebutuhan saat memilih sistem manajemen basis data, ya.
Keputusan untuk menggunakan basis data relasional dan non-relasional sebagian besar bersifat kontekstual dan bervariasi tergantung pada kasus penggunaan.
Database On-Premise vs. Cloud
Sejak awal, telah dibahas berbagai macam tentang basis data, mulai dari definisi, tipe-tipe, dan sebagainya. Namun, apakah Anda sudah tahu di mana basis data tersebut berjalan? Ternyata, umumnya terdapat dua tempat yang digunakan untuk menyimpan basis data, yaitu on premise dan cloud.
On premise atau pusat data lokal adalah sekelompok server yang Anda miliki dan kendalikan secara pribadi, sedangkan cloud melibatkan penyewaan sumber daya pusat data dari penyedia layanan pihak ketiga. Wah, maksudnya bagaimana, ya? Mari kita bahas di bawah ini.
Basis Data On-Premise
On-premise adalah jenis server berupa software yang dijalankan secara internal oleh tim IT perusahaan. Tim IT tersebut bertugas dalam menjalankan aplikasi server, memasang sistem operasi, dan meletakkan server di sebuah gedung.
Gambar di atas merupakan contoh server penyimpanan basis data on-premise. Implementasi on-premise umumnya melalui pembelian server sendiri untuk kemudian dipasang perangkat lunak database yang diinginkan. Perusahaan memiliki lisensi dan kontrol penuh terhadap kepemilihan dan pemeliharaan server dan database di dalamnya.
Basis Data Cloud
Berbeda dengan on-premise, cloud server alias cloud computing merupakan layanan infrastruktur berupa penyimpanan basis data, server, jaringan, dan software berbasis internet. Layanan ini tidak disediakan oleh tim IT perusahaan, tetapi melalui pihak ketiga yang merupakan penyedia layanan cloud.
Pada layanan cloud server, basis data disimpan seluruhnya dalam server berbasis internet. Artinya, cloud server tidak memerlukan penyimpanan lokal. Salah satu contoh layanan basis data cloud server adalah Google Cloud SQL. Perusahaan bisa memilih kapasitas cloud sesuai anggaran dan kebutuhan dalam penyimpanan data.
Berikut merupakan perbedaan yang jelas antara basis data on premise dan on cloud.
| Fungsi | On-Premise | Cloud |
|---|---|---|
Biaya | Server, penggunaan hardware, ruang penyimpanan, dan maintenance ditanggung sepenuhnya oleh perusahaan. Alasannya, perusahaan memiliki kendali penuh terhadap pengelolaan server on-premise tersebut. | Cloud computing cenderung lebih terjangkau daripada on-premise, hanya perlu membayar ongkos server dan biaya maintenance. |
Kontrol dan hak kepemilikan | Perusahaan pengguna server on-premise dapat mengontrol basis data di dalamnya secara penuh. Hak kepemilikan perusahaan juga tinggi sehingga mereka tidak perlu khawatir dengan keamanan data pribadi di dalamnya. | Anda tidak memiliki kontrol atau kendali penuh apabila terdapat masalah atau kejadian tak terduga. Akses data berupa password dan kode enkripsi berada di bawah kendali penyedia layanan atau vendor cloud. |
Tingkat keamanan | Tingkat keamanan pada layanan on-premise cukup tinggi karena dikelola oleh pemilik server-nya. Lembaga pemerintahan dan keuangan biasanya mengatur privasi dan aksesibilitas basis data di dalamnya sehingga hanya orang tertentu yang bisa mengakses data di dalamnya. | Cloud computing juga menawarkan tingkat keamanan yang cukup tinggi, walaupun belum menyamai on-premise server. Infrastruktur cloud yang dipilih bisa dikombinasikan supaya tingkat keamanannya makin memadai. |
Deployment system | Sumber daya dan basis data pada layanan on-premise dikelola seluruhnya oleh tim IT perusahaan. Artinya, perusahaan harus bertanggung jawab dalam maintenance atau pemeliharaan apabila terjadi isu atau kerusakan pada server. | Cloud computing sendiri memiliki deployment system yang berbeda. Seluruh fitur dan layanannya dikelola oleh vendor cloud, jadi perusahaan tinggal melakukan back-up data dalam cloud-nya. Apabila terjadi masalah, vendor yang akan turun tangan dan bertanggung jawab dalam perbaikannya. |
Pemenuhan regulasi (Compliance) | Perusahaan di bidang e-learning, telehealth, dan sebagainya pasti beroperasi dalam regulasi tertentu. Rata-rata perusahaan memilih on-premise server lantaran regulasinya berada di perusahaan tersebut. | Perusahaan pengguna cloud computing harus mematuhi regulasi yang terkait dalam industrinya. Regulasi penting terkait basis data adalah menjamin keamanan data sensitif yang berhubungan dengan karyawan, konsumen, atau partner bisnis. |
Bagaimana materi terkait perbedaan antara basis data on premise dan cloud? Apabila Anda masih merasa bingung, Anda dapat bertanya dan berdiskusi di forum diskusi, ya.
Tahukah Anda?5 Alasan SQL Penting Untuk Data Science
|
Perangkat Pengolahan Data
Sebelumnya, Anda telah mempelajari sedikit banyak tentang data, tetapi belum menyelami terkait perangkat pengolahan data. Berikut merupakan beberapa tools yang umum digunakan.
Google Sheets
Google Sheets adalah aplikasi berbasis web yang memungkinkan pengguna membuat, memperbarui, dan memodifikasi lembar kerja (worksheet) serta membagikan data secara daring dan real time.
Produk Google ini menawarkan fitur-fitur worksheet yang umum, seperti kemampuan untuk menambah, menghapus, dan mengurutkan baris dan kolom. Namun, tidak seperti program worksheet lainnya, Google Sheets juga memungkinkan beberapa pengguna yang berada di berbagai lokasi untuk berkolaborasi pada worksheet pada saat yang sama dan mengobrol melalui program pesan instan bawaan. Pengguna dapat mengunggah worksheet langsung dari komputer atau perangkat seluler mereka.
Aplikasi ini menyimpan setiap perubahan secara otomatis dan pengguna dapat melihat perubahan yang dilakukan pengguna lain saat perubahan tersebut dibuat. Bahkan, kini Google Sheets sudah memiliki kemampuan AI untuk menghasilkan formatting, analisis, dan lainnya.
SPSS (Statistical Package for the Social Sciences)
SPSS adalah program komputer yang dipakai untuk analisis statistika. SPSS digunakan untuk pengolahan dan menganalisis data yang memiliki kemampuan analisis statistik serta sistem manajemen data dengan lingkungan grafis.
Perangkat lunak komputer ini memiliki kelebihan pada kemudahan penggunaannya dalam mengolah dan menganalisis data statistik. Program SPSS banyak diaplikasikan dan digunakan oleh kalangan pengguna komputer di bidang bisnis, perkantoran, pendidikan, dan penelitian.
Fungsi utama aplikasi SPSS adalah untuk analisis data. Selain itu, SPSS juga dapat digunakan sebagai berikut.
- Pengolahan dan mendokumentasikan data
- Representasi data statistik
- Analisis statistik
- Survei
- Pembuatan data turunan
- Data mining
- Riset pemasaran
- dan masih banyak lagi.
Tentunya setiap software yang dibuat memiliki kelebihan dan kekurangan masing-masing, di bawah ini merupakan kelebihan dan kekurangan dari SPSS yang perlu Anda ketahui.
| Kelebihan | Kekurangan |
|---|---|
SPSS mampu mengakses data dari berbagai jenis format yang ada sehingga data yang sudah tersedia dalam berbagai format dapat digunakan langsung untuk melakukan analisis data. | Meskipun user friendly, program ini tetap tergolong rumit. Pengguna program ini minimal harus mengetahui dasar dari ilmu statistik untuk bisa menjalani program ini. |
Tampilan data yang diberikan SPSS lebih informatif sehingga mempermudah pengguna dalam membaca hasil yang diberikan. | SPSS tergolong memiliki perkembangan yang cepat sehingga kadang tampilan bisa berbeda dengan SPSS yang lama. Ini membuat user harus beradaptasi kembali dengan sistem yang baru. |
Informasi yang diberikan lebih akurat karena SPSS memberikan informasi dengan memberikan kode alasan jika terjadi missing data. | Terdapat banyak versi SPSS yang beredar sehingga pemilihan SPSS harus sesuai dengan komputer user. |
SPSS tergolong mudah digunakan karena pengguna tidak perlu mempelajari bahasa programming. |
Terkait penjelasan di atas, apakah Anda tertarik dengan SPSS? Atau Anda sudah pernah menggunakan SPSS sebelumnya? Silakan berbagi dengan rekan yang lain di forum diskusi terkait pengalaman menggunakan SPSS, ya. See you there!
Perangkat Visualisasi Data
Nah, setelah mengetahui perangkat pengolah data, rasanya tidak afdal kalau tidak membahas visualisasi data. Mari kita recall bahwa tujuan dari visualisasi data adalah untuk mempermudah komunikasi, mempercepat pengambilan keputusan, memperkaya perspektif tim, dan mengidentifikasi masalah.
Maka dari itu, Anda akan berkenalan dengan alat seperti Tableau, Metabase, dan Looker. Apakah Anda familier dengan salah satu alat visualisasi data tersebut? Atau bahkan Anda sudah menguasai dari ketiganya? Untuk Anda yang belum ada pengalaman sama sekali, jangan khawatir! Kita belajar bersama-sama di materi ini, ya. Let’s go!
Tableau
Direktorat Teknologi Informasi ITB menuturkan bahwa Tableau adalah platform Business Intelligence untuk membantu dalam melihat dan memahami data. Platform ini merupakan hasil dari proyek ilmu komputer di Stanford yang didirikan pada tahun 2003. Tujuan dibuatnya Tableau adalah untuk meningkatkan aliran analisis dan membuat data lebih dapat diakses oleh orang-orang melalui visualisasi.
Tableau memiliki beberapa fungsi yang dapat Anda manfaatkan penggunaannya seperti yang tertera di bawah ini.
- Menerjemahkan data menjadi bentuk visualisasi.
- Mengelola metadata.
- Mengimpor berbagai ukuran dan range data.
- Membuat visualisasi tanpa coding.
Terdapat beberapa kelebihan dan kekurangan yang dapat Anda pertimbangkan sebelum menggunakannya.
| Kelebihan | Kekurangan |
|---|---|
Pilihan visualnya yang menarik dan interaktif. | Tableau tidak dapat digunakan untuk query |
Tools yang amat user friendly bagi yang tidak memahami coding dan dunia business intelligence sekalipun. | Tidak memiliki fitur refresh laporan secara otomatis dengan bantuan penjadwalan. |
Tableau bisa menggabungkan berbagai sumber data, big data, spreadsheet, cloud, dan berbagai tipe data lainnya. | Banyak user yang kurang memberikan perhatian terhadap pilihan conditional formatting Tableau dan limitasi tampilan tabel 16 kolom. |
Tableau bisa mengolah data menggunakan perangkat mobile, seperti ponsel dan tablet. | Tableau versi berbayar cukup mahal. |
Tableau bisa mengintegrasikan data pengguna dengan dua bahasa data science, yakni R dan Python. | |
Terdapat open source yang dapat digunakan secara gratis. |
Ingin mencoba Tableau? Tenang! Ia menyediakan fitur free yang dapat Anda manfaatkan untuk berlatih sepuasnya di sini.
Metabase
Salah satu tools open source yang sering digunakan untuk visualisasi data adalah Metabase. Aplikasi ini menggunakan konsep ask questions and display answers, yakni kita mengajukan pertanyaan dan kemudian akan terjawab lewat penyajian data seperti Numbers, Trend, Progress bar, Gauge, Table, Line chart, Bar chart, dll.
Lalu, kira-kira apa saja kelebihan dan kekurangan dari Metabase?
| Kelebihan | Kekurangan |
|---|---|
Tools bersifat open source, tetapi juga memiliki opsi berbayar. | Metabase sedikit lambat jika diakses banyak orang. |
Memiliki kualitas bagus, tetapi low budget. | Memiliki memory footprint yang butuh banyak ruang penyimpanan. |
Biaya maintenance yang tidak terlalu tinggi. | Bagi para pengguna Windows, kemungkinan besar performanya tidak sebaik di laptop dengan sistem operasi macOS. |
Metabase didukung oleh begitu banyak sistem lainnya, seperti MySQL, MongoDB, PostgreSQL, Microsoft SQL, dan Amazon. | Metabase sangat bergantung pada MySQL untuk membuat query yang kompleks. |
Tertarik untuk mencobanya? Anda dapat mengakses metabase di sini, ya. Ganbatte!
Looker Studio
Last but not least, tools visualisasi terakhir yang umum digunakan oleh data analyst, data scientist, dan business analyst adalah Looker Studio.
Looker Studio (sebelumnya Google Data Studio) adalah platform data yang menggunakan bahasa pemodelan sederhana disebut LookML yang memungkinkan tim data untuk menentukan hubungan pada basis data mereka sehingga pengguna bisnis dapat menjelajahi, menyimpan, dan mengunduh data tanpa harus mengetahui SQL.
Seperti yang telah dibahas sebelumnya, setiap hal apapun memiliki kelebihan dan kekurangannya masing-masing; pastinya hal tersebut terjadi pada Looker Studio. Di bawah ini merupakan kelebihan dan kekurangan pada Looker Studio.
| Kelebihan | Kekurangan |
|---|---|
User Interface (UI) yang mudah dipelajari. | Terkadang menjadi lamban, terutama saat mengerjakan proyek data yang besar. |
Dapat memilih berbagai warna dan font. | Sulit untuk mengimpor file selain format csv. |
Terdapat berbagai opsi grafik untuk visualisasi. | Sulit untuk terhubung dengan data lain (belum tersedia konektor). |
Sangat mudah ketika me-refresh data. | Kurang variasi grafik. |
Dari ketiga pilihan perangkat visualisasi data di atas, manakah tools yang menurut Anda paling menarik? Pernahkah Anda menggunakan salah satu dari ketiganya? Yuk, bagikan pengalaman Anda di forum diskusi agar rekan-rekan lain mendapatkan insight dari thread Anda. See you there!
Bahasa Pemrograman Data Science
“The limits of my language mean the limits of my world” - Ludwig Wittgenstein
Seperti yang tertera pada peribahasa di atas, Ludwig Wittgenstein adalah seorang filsuf asal Austria yang mengemukakan bahwa “Terbatasnya bahasa saya berarti terbatasnya dunia saya.” Ungkapan tersebut sangat relate dengan apa yang akan Anda hadapi di dunia data science.
Bahasa pemrograman hanyalah sebuah cara berkomunikasi untuk menyampaikan maksud. Unsur dalam komunikasi terdiri dari komunikator (sender) dan komunikan (recipient). Nah, pada bagian ini, Anda akan mempelajari menjadi seorang komunikator melalui bahasa pemrograman yang umumnya digunakan dalam berkomunikasi di dunia data science. Anda akan berkenalan dengan bahasa pemrograman Python dan R. Sudah tidak sabar? Yuk kita simak materinya.
Berkenalan dengan Python
Python adalah bahasa pemrograman yang banyak digunakan dalam aplikasi web, perangkat lunak, ilmu data, dan machine learning (ML). Developer menggunakan Python karena efisien dan mudah dipelajari serta dapat dijalankan pada berbagai platform.
Para data scientist menggunakan Python untuk mengerjakan proyek data science seperti berikut.
- Memperbaiki dan menghapus data yang salah atau biasa disebut dengan pembersihan data.
- Mengekstraksi dan memilih berbagai fitur data.
- Pelabelan data (data labeling), yaitu menambahkan nama yang bermakna untuk data.
- Melakukan proses analisis data.
- Memvisualisasikan data dengan menggunakan diagram dan grafik seperti diagram garis, grafik batang, histogram, dan diagram lingkaran.
- Mengembangkan model machine learning.
Tahukah Anda? Mostly, banyak praktisi machine learning menggunakan Python untuk mengembangkan model guna mengerjakan berbagai tugas seperti klasifikasi citra, teks, dan pengenalan wajah (image processing).
Lebih Dekat dengan R
Kemudahan dalam penggunaan serta mudahnya akses dukungan komunitas membuat R menjadi salah satu bahasa pemrograman paling populer di dunia. R memiliki aturan atau sintaks yang berbeda dengan bahasa pemrograman lain yang membuatnya memiliki ciri khusus tersendiri.
Berikut merupakan ciri dan fitur pada R.
- Memiliki sifat yang casesensitive. Dalam proses input, huruf besar dan kecil sangat diperhatikan.Karena memiliki sifat case sensitive, hasilnya akan seperti berikut.
- A<- “Dicoding”
- B<- “dicoding”
- # cek kedua objek A dan B
- A == B
## [1] FALSE
- Segala sesuatu akan dianggap sebagai objek. Konsep objek ini pada dasarnya sama dengan bahasa pemrograman berbasis objek lainnya, yaitu Python, Java, dan C++. Perbedaannya adalah bahasa pemrograman R relatif lebih sederhana dibandingkan bahasa pemrograman berbasis objek lainnya.
- Mendukung proses loop, decision making, dan menyediakan berbagai jenis operator (aritmatika, logika, dll).
- Menyediakan berbagai fungsi untuk keperluan visualisasi data. Visualisasi data pada R dapat menggunakan paket bawaan atau paket lain seperti ggplot2, ggvis, dll.
| Kelebihan | Kekurangan |
|---|---|
Bersifat open source. | Tampilan command-line sedikit membingungkan. |
Mudah digunakan sehingga punya banyak pengguna dan komunitas. | Data di dalam R disimpan dalam memori fisik. |
Fitur visualisasi R relatif berkualitas dan mampu menghasilkan grafik yang bagus. | Eksekusi alias pembacaan kode R memakan waktu yang lama. |
Banyak digunakan oleh para praktisi data dan statistikawan. |
Dari kedua perbandingan bahasa pemrograman populer di atas, dapat disimpulkan bahwa perbedaan yang sangat terlihat dari kedua bahasa ini adalah R digunakan untuk analisis statistik, sedangkan Python lebih general. Python adalah bahasa multipurpose, sama seperti C++ dan Java. Penggunaannya pun cenderung lebih mudah dipelajari.
Apabila harus memilih, bahasa pemrograman manakah yang akan Anda gunakan untuk belajar data science? Atau Anda telah memiliki pengalaman sebelumnya terkait salah satu atau keduanya? Bagikan pengalaman Anda di forum diskusi, yuk.
Teknologi Machine Learning
Machine learning adalah ilmu pengembangan algoritma yang memanfaatkan konsep matematis dan statistik dalam menjalankan tugas tertentu tanpa instruksi eksplisit. Pada prosesnya, machine learning akan berusaha mengenal pola yang terdapat dalam sebuah data serta menggunakannya untuk menghasilkan prediksi.
Perhatikan analogi di bawah ini.
Gambar di atas merupakan salah satu contoh penerapan machine learning, yaitu para data scientist dapat melatih model untuk mendiagnosis kanker dari gambar sinar-x. Hal ini dilakukan dengan cara melatih model dengan ribuan hingga jutaan gambar yang dipindai dengan diagnosis yang sesuai. Setelah proses pelatihan selesai, model akan mengenali pola dalam gambar tersebut. Lalu, model akan menggunakan pola tersebut untuk membantu para praktisi medis untuk mendiagnosis penyakit kanker.
Secara garis besar, kita dapat mengelompokkan machine learning ke dalam tiga kategori yaitu seperti berikut.
- Supervised learning
Supervised learning merupakan pendekatan machine learning yang menggunakan kumpulan data berlabel (labeled datasets). Kumpulan data ini dirancang untuk melatih atau “mengawasi” algoritma machine learning. Pada proses pelatihan, model belajar memahami pola yang terdapat dalam data dan labelnya. Pola ini selanjutnya akan digunakan untuk mengerjakan tugas yang spesifik seperti klasifikasi atau regresi.
Klasifikasi digunakan untuk memprediksi kemungkinan sesuatu termasuk dalam kategori tertentu, sedangkan regresi digunakan untuk memprediksi nilai numerik dari banyak kemungkinan nilai. Salah satu contoh penerapan supervised learning adalah face recognition yang terdapat pada smartphone, laptop, bahkan hingga pintu sekalipun.
- Unsupervised learning
Jika supervised learning memanfaatkan data dan juga label untuk melatih model, unsupervised learning hanya membutuhkan data tanpa label. Pada proses latihan, model akan belajar untuk mengidentifikasi pola tersembunyi yang terdapat dalam data. Pola ini selanjutnya akan digunakan untuk mengerjakan tugas yang spesifik, seperti membagi data ke dalam beberapa klaster, mendeteksi anomali dalam data, dan semacamnya.
Salah satu contoh penerapan unsupervised learning adalah adanya rekomendasi pada platform Youtube yang akan menyuguhkan video-video yang relevan dengan kebiasaan tontonan Anda.
- Reinforcement learning
Reinforcement learning (RL) adalah teknik machine learning yang melatih perangkat lunak untuk membuat keputusan guna mencapai hasil yang paling optimal. Salah satu penerapan reinforcement learning adalah pada algoritma AlphaGo. Ia adalah program komputer yang digunakan untuk menjalankan permainan Go.
Teknologi yang digunakan pada board game tersebut dikembangkan oleh DeepMind Technologies yang diakuisisi oleh Google. Pada Oktober 2015, permainan tersebut mampu mengalahkan pemain manusia profesional pada papan berukuran 19x19.
Hal tersebut disebabkan oleh program AlphaGo yang semakin canggih. Board game tersebut menggunakan reinforcement learning yang mampu meniru perilaku yang diinginkan. Pada board game tersebut, AlphaGo telah mempelajari lebih dari 30 gerakan manusia yang dapat ditiru sehingga seiring berjalannya waktu ia dapat mengalahkan permainan manusia. Cukup menarik, bukan?
Setelah menyimak penjelasan machine learning dan tipe-tipenya di atas, mungkin Anda berpikir, "Apa hubungan antara machine learning dan data science?" Sederhananya, machine learning adalah salah satu alat atau pendekatan yang digunakan dalam data science.
Jangan khawatir! Pembahasan mendalam akan dijelaskan nanti. So, see you!
Teknologi Pendukung GitHub
Sebagian dari Anda mungkin belum familier dengan GitHub, atau mungkin terlintas beberapa pertanyaan seperti berikut.
“Apa yang dimaksud dengan GitHub?”
“Apa kegunaan GitHub?”
“Apa fungsinya dalam data science?”
Nah, sebelum Anda benar-benar terjun ke dunia data science, kali ini Anda akan dikenalkan dengan teknologi GitHub dan menjawab beberapa pertanyaan yang mungkin terlintas di pikiran Anda. Yuk simak penjelasannya di bawah ini.
First thing first, GitHub adalah platform hosting kode untuk kontrol versi dan kolaborasi. Hal ini memungkinkan Anda bekerja sama dengan orang lain dalam proyek yang berbeda.
Mengapa menggunakan GitHub? GitHub adalah software yang memungkinkan kita mengelola proyek dan kode aplikasi melalui alat yang dikenal sebagai Git. Ini memungkinkan pengguna untuk mendistribusikan kode, berkolaborasi dalam proyek, membantu penerapan proyek melalui CI/CD (Integrasi berkelanjutan/penerapan berkelanjutan), kembali ke versi proyek sebelumnya, dll.
Para data scientist membutuhkan GitHub untuk manajemen source code. GitHub pada dasarnya menampung Git, yakni sistem kontrol versi yang dapat melacak perubahan dan permintaan proyek. Dengan menggunakan GitHub, pengguna dapat mengkloning kode dari repositori pusat ke mesin lokal, membuat perubahan, melakukan modifikasi, dan menggabungkannya kembali ke repository pusat.
Sebagai data scientist, Anda memerlukan GitHub untuk mengumpulkan data dari berbagai sumber dan memodifikasi atau mengimplementasikan perubahan ke dalam file proyek yang ada. Developer dan manajer proyek kemudian dapat meninjau perubahan dan melihat modifikasi yang Anda lakukan.
Beberapa praktik terbaik penggunaan GitHub meliputi:
- Menyimpan semua data, file proyek, dan model Anda di suatu tempat;
- Melacak perubahan dan versi proyek secara lokal menggunakan Git; dan
- Menyimpan machine learning model dan melakukan analitik menggunakan kode atau alat lain seperti Tableau atau PowerBI. Ini akan memungkinkan pengguna untuk menerapkan proyek melalui metodologi CI/CD.
Adapun Repositories GitHub terbaik yang digunakan untuk data science di antaranya:
- TensorFlow
- The Algorithms
- Awesome Machine Learning
- Data Science I-Python Notebooks
- Homemade Machine Learning
- Awesome Data Science
- Deep Learning Drizzle
Oke, dari pemaparan materi di atas, dapat disimpulkan bahwa sebagai data scientist yang bercita-cita tinggi, Anda harus memperoleh pengetahuan tentang version control seperti Git dan GitHub supaya dapat memelihara dan meninjau penelitian dan perubahan dalam proyek. Ini memungkinkan Anda untuk memanipulasi data secara real-time dengan banyak data scientist lainnya dan bisa digunakan dalam produksi sambil mencari proyek berisiko tinggi.
Bagaimana pembahasan terkait GitHub di atas? Apakah Anda cukup paham? Atau telah memiliki pengalaman sebelumnya menggunakan GitHub? Jangan lupa untuk berbagi kisah di forum diskusi, ya. See you there!
Tahukah Anda?Penggunaan GitHub tidak hanya penting dari perspektif industri, tetapi juga merupakan alat yang ampuh untuk menunjukkan keahlian Anda dalam mendapatkan pekerjaan di industri teknologi. Ini memungkinkan para recruiter untuk melihat tingkat keterampilan yang Anda miliki saat ini, proyek yang telah Anda kerjakan, kemampuan Anda untuk menulis kode, mendokumentasikan, dan memecahkan masalah. GitHub sering digunakan oleh para calon software engineers, analyst, researcher, dan sebagainya untuk membantu pencarian pekerjaan mereka. |
Rangkuman Teknologi dan Perangkat Pendukung Data Science
Menurut Amazon Web Service (AWS) basis data adalah koleksi data sistematis yang disimpan secara elektronik. Ini dapat berisi semua jenis data, seperti kata, angka, gambar, video, dan file. Anda dapat menggunakan perangkat lunak (software) yang disebut Database Management System (DBMS) atau sistem manajemen basis data.
Ada pula menurut sumber lain, yaitu Oracle menyatakan bahwa basis data adalah kumpulan terorganisasi dari informasi terstruktur, atau data, biasanya disimpan secara elektronik dalam sistem komputer. Basis data biasanya dikendalikan oleh Database Management System (DBMS) atau sistem manajemen basis data. Nah, data dan DBMS beserta aplikasi yang terkait dengannya disebut sebagai sistem basis data atau juga bisa disebut basis data saja.
Tipe-Tipe Basis Data
- Basis Data Relasional (Database Relational)
- Basis Data Orientasi Objek (OOD - Object-oriented Databases)
- Basis Data Terdistribusi (Distributed Databases)
- Gudang Data (Data Warehouse)
- Basis Data NoSQL
- Basis Data Grafik (Graph Databases)
Data, Basis Data, Dataset
Menurut Kamus Besar Bahasa Indonesia, data adalah informasi, fakta, dari keterangan yang benar dan nyata mengenai suatu objek atau kejadian yang bisa dicatat atau disimpan.
| Basis Data | Dataset |
|---|---|
Basis data adalah kumpulan data yang diatur dan disimpan dengan cara yang memungkinkan akses dan pengambilan yang mudah. Selain itu, ia juga dapat menyimpan berbagai macam tipe data, termasuk teks, nomor, gambar, dan tipe data lainnya. | Dataset adalah kumpulan data diatur dalam format tertentu, seperti spreadsheet, CSV, atau basis data. Umumnya, digunakan untuk keperluan spesifik. |
Memiliki banyak kumpulan data dan dapat digunakan untuk aplikasi yang berbeda. | Dapat menjadi bagian dari data yang diambil dari basis data yang lebih besar. Bisa juga, dataset diambil dari sumber lain yang mendukung formatnya. |
Contoh tools: BigQuery, MySQL Clients, DB Browser SQL, dll. | Contoh tools: Google Sheets, Excel, Situs Public Datasets, dll. |
SQL (Structured Query Language)
Pada bagian ini Anda akan dikenalkan dengan dua jenis himpunan yang terdapat pada SQL, yaitu DDL dan DML. Simak penjelasannya di bawah ini.
Data Definition Language
DDL merupakan subperintah pada SQL yang dimanfaatkan guna membangun kerangka basis data. Tabel di bawah merupakan pernyataan statements yang utama dari DDL.
CREATE SCHEMA | ALTER DOMAIN | DROP SCHEMA |
CREATE DOMAIN | DROP DOMAIN | |
CREATE TABLE | ALTER TABLE | DROP TABLE |
CREATE VIEW | DROP VIEW |
Data Manipulation Language
DML merupakan subperintah pada SQL yang dimanfaatkan dalam manipulasi basis data yang sudah dibuat. Pada dasarnya, dalam DML terdapat empat perintah berikut beserta fungsinya.
| Data Manipulation Language | Fungsi |
|---|---|
INSERT | Digunakan untuk memasukkan data baru dalam tabel. Perintah ini dapat dijalankan saat basis data dan tabel telah selesai dibuat. |
SELECT | Digunakan untuk mengambil, lalu menampilkan data dari tabel atau sejumlah tabel dengan memanfaatkan relasi. |
UPDATE | Digunakan untuk memperbarui data dalam tabel. |
DELETE | Digunakan untuk menghapus data dari tabel. |
NoSQL (Not Only SQL)
NoSQL atau disebut juga sebagai “not only SQL” , “non-SQL”, adalah pendekatan untuk desain basis data yang memungkinkan penyimpanan dan kueri data di luar struktur tradisional yang ditemukan dalam basis data relasional.
Basis data NoSQL umumnya diklasifikasikan ke dalam empat kategori utama, di antaranya
- Document Databases
Basis data ini menyimpan data sebagai dokumen semi-terstruktur, seperti JSON atau XML, dan dapat dikueri menggunakan bahasa kueri berorientasi dokumen.
- Key-value Stores
Basis data ini menyimpan data sebagai key-value pairs dan dioptimalkan untuk operasi baca atau tulis yang sederhana dan cepat.
- Column-family stores
Basis data ini menyimpan data sebagai keluarga kolom, yaitu kumpulan kolom yang diperlakukan sebagai satu kesatuan. Mereka dioptimalkan untuk kueri data dalam jumlah besar yang cepat dan efisien.
- Graph Databases
Sempat dibahas pada materi sebelumnya, bahwa basis data ini menyimpan data sebagai node dan edge, serta dirancang untuk menangani hubungan kompleks antar data.
Database on Premise vs. Cloud
Basis Data on Premise
On-premise adalah jenis server berupa software yang dijalankan secara internal oleh tim IT perusahaan. Tim IT tersebut bertugas dalam menjalankan aplikasi server, memasang sistem operasi, dan meletakkan server di sebuah gedung.
Basis Data on Cloud
Berbeda dengan on-premise, cloud server alias cloud computing merupakan layanan infrastruktur berupa penyimpanan basis data, server, jaringan, dan software berbasis internet. Layanan ini tidak disediakan oleh tim IT perusahaan, tetapi melalui pihak ketiga yang merupakan penyedia layanan cloud.
Tools Pengolahan Data
Di bawah ini merupakan tools pengolahan data yang umumnya sering digunakan.
- Excel
- Google Sheets
- SPSS (Statistical Package for the Social Sciences)
Tools Visualisasi Data
Di bawah ini merupakan tools visualisasi data yang umumnya sering digunakan.
- Tableau
- Metabase
- Looker Studio
Bahasa Pemrograman
Berkelana dengan Python
Python adalah bahasa pemrograman yang banyak digunakan dalam aplikasi web, pengembangan perangkat lunak, ilmu data, dan machine learning (ML).
Berkenalan dengan R
Kemudahan dalam penggunaannya serta mudahnya akses dukungan komunitas, membuat R menjadi salah satu bahasa pemrograman paling populer di dunia. R memiliki aturan atau sintaks yang berbeda dengan bahasa pemrograman lain yang membuatnya memiliki ciri khusus tersendiri.
Teknologi Machine Learning
Machine learning adalah ilmu pengembangan algoritma yang memanfaatkan konsep matematis dan statistik dalam menjalankan tugas tertentu tanpa instruksi eksplisit. Pada prosesnya, machine learning akan berusaha mengenal pola yang terdapat dalam sebuah data serta menggunakannya untuk menghasilkan prediksi.
Secara garis besar, kita dapat mengelompokkan machine learning ke dalam tiga kategori yaitu seperti berikut.
- Supervised learning.
- Unsupervised learning.
- Reinforcement learning.
- Get link
- X
- Other Apps




















Comments
Post a Comment