Traffine I/O

Bahasa Indonesia

2023-04-08

Database Berorientasi Kolom

Apa itu Database Berorientasi Kolom

Database berorientasi kolom, seperti namanya, menyimpan data berdasarkan kolom daripada baris. Berbeda dengan database relasional tradisional seperti Oracle, PostgreSQL, dan MySQL yang mengelola data berdasarkan baris, database ini fokus pada pengelolaan data berdasarkan kolom.

Pengelolaan Data dalam Database Berorientasi Kolom

Database berorientasi baris menyimpan dan memanipulasi data dalam baris. Pendekatan penyimpanan data ini memperlakukan setiap baris sebagai sebuah rekaman, mengelola semua data dalam baris tersebut sebagai satu unit.

Misalkan data penjualan berikut dari sebuah toko buku:

Tanggal Toko Karyawan Kategori Buku Jumlah Terjual Total Penjualan
2023/6/1 NYC John Fiction 10 $200
2023/6/1 NYC Sarah Non-fiction 5 $150
2023/6/1 NYC Paul Fiction 8 $80
2023/6/2 NYC John Fiction 7 $140
2023/6/2 NYC John Non-fiction 4 $80

Dalam database berorientasi baris, setiap penjualan diperlakukan sebagai satu baris, dengan semua elemen data terkait (Tanggal, Toko, Karyawan, Kategori Buku, Jumlah Terjual, Total Penjualan) dikelompokkan bersama.

Di sisi lain, database berorientasi kolom mengelola data berdasarkan kolom. Untuk setiap elemen data, seperti Tanggal atau Total Penjualan, database menyimpan semua instance elemen tersebut dalam satu kolom.

Jika kita mempertimbangkan data penjualan yang sama dari toko buku, pengelolaan data dalam database berorientasi kolom akan terlihat seperti ini:

Tanggal Toko Karyawan Kategori Buku Jumlah Terjual Total Penjualan
2023/6/1 * 3 NYC * 5 John * 3 Fiction * 3 10 * 1 $200 * 1
2023/6/2 * 2 Sarah * 1 Non-fiction * 2 5 * 1 $150 * 1
Paul * 1 8 * 1 $80 * 1
7 * 1 $140 * 1
4 * 1 $80 * 1

Sebagai contoh, jika tugasnya adalah mencari total penjualan untuk toko NYC, sebuah database berorientasi baris harus membaca membaca seluruh data baris demi baris, memeriksa kolom Toko pada setiap baris, lalu menjumlahkan nilai kolom Total Penjualan untuk setiap entri toko NYC. Proses ini mungkin melibatkan membaca data yang tidak perlu jika yang kita butuhkan hanyalah data Toko dan Total Penjualan.

Sebaliknya, database berorientasi kolom akan membaca kolom Toko dan kolom Total Penjualan saja, mengurangi jumlah data yang dibaca dari disk, dan dengan demikian potensial mempercepat operasi tersebut.

Kelemahan Database Berorientasi Kolom

Meskipun database berorientasi kolom menawarkan banyak keunggulan, terutama untuk tugas analisis data, mereka juga memiliki kelemahan. Salah satu kelemahan utamanya adalah kurangnya optimasi dalam mengelola transaksi online.

Database berorientasi kolom menghadapi overhead dan ketidakefisienan yang signifikan saat menangani penambahan data baru, pembaruan, dan penghapusan data, membuatnya kurang cocok untuk pemrosesan transaksi.

Misalkan Anda ingin menambahkan baris data baru ke dalam tabel. Pada database berorientasi baris, ini adalah tugas yang sederhana — Anda hanya perlu menambahkan baris baru ke dalam tabel. Namun, pada database berorientasi kolom, prosesnya lebih kompleks. Data yang terkompresi harus di-dekompresi terlebih dahulu. Kemudian nilai-nilai untuk setiap kolom harus dimuat dan ditambahkan ke tempat yang tepat. Terakhir, kolom harus dikompresi kembali. Proses ini tidak hanya menambahkan beban komputasi dan kompleksitas, tetapi juga dapat menyebabkan ketidakefisienan ketika banyak perubahan kecil pada database perlu dilakukan secara sering, seperti dalam skenario pemrosesan transaksi.

Ryusei Kakujo

researchgatelinkedingithub

Focusing on data science for mobility

Bench Press 100kg!