NoSQL adalah kategori database yang nggak pakai struktur tabel relasional seperti SQL tradisional. Cocok untuk data yang formatnya fleksibel, berubah-ubah, atau perlu di-scale secara horizontal ke banyak server.
NoSQL (singkatan dari "Not Only SQL") adalah kelompok database yang nggak mengandalkan model tabel relasional seperti MySQL atau PostgreSQL. Alih-alih baris dan kolom yang kaku, NoSQL menyimpan data dalam berbagai format lain tergantung jenis dan kebutuhannya.
Istilah "Not Only SQL" lebih akurat dari "No SQL" karena beberapa database NoSQL bahkan mendukung query mirip SQL. Yang membedakannya bukan bahasanya, tapi model data dan cara penyimpanannya.
| Jenis | Cara Simpan Data | Contoh Database | Cocok Untuk |
|---|---|---|---|
| Document | Dokumen JSON/BSON | MongoDB, Firestore | Profil user, katalog produk |
| Key-Value | Pasangan kunci-nilai | Redis, DynamoDB | Cache, session, leaderboard |
| Wide-Column | Baris dengan kolom dinamis | Cassandra, HBase | Log events, time-series data |
| Graph | Node dan edge (relasi) | Neo4j, Amazon Neptune | Social network, fraud detection |
Kalau relational database itu kayak spreadsheet Excel yang ketat, di mana setiap baris harus punya kolom yang sama, maka document database itu kayak tumpukan dokumen Word yang tiap dokumennya boleh punya field berbeda-beda. Produk A punya field "ukuran", produk B punya field "warna", keduanya tetap bisa disimpan tanpa masalah.
NoSQL muncul karena ada kebutuhan yang nggak bisa dipenuhi relational database dengan mudah:
Bukan soal mana yang lebih bagus, tapi soal mana yang cocok untuk masalahmu:
Pilih NoSQL kalau kamu butuh schema yang fleksibel dan sering berubah, perlu scale ke banyak server dengan traffic tinggi, menyimpan data semi-terstruktur seperti log atau event stream, atau butuh performa sangat tinggi untuk operasi sederhana seperti caching.
Tetap pakai relational kalau datamu punya relasi kompleks antar entitas, integritas data dan konsistensi itu prioritas utama, atau kamu butuh query ad-hoc yang fleksibel dengan SQL standar.
Udah paham NoSQL? Lanjut latihan SQL dan Excel yuk!
Latihan interaktif, langsung di browser.