Web Development
Database Fundamentals
Pahami SQL vs NoSQL, desain database yang baik, dan query optimasi.
Status Membaca:Belum Dibaca
Daftar Bab (2)
Bab 1 dari 2
SQL vs NoSQL
SQL vs NoSQL
Dua paradigma besar dalam database — pilih yang tepat sesuai kebutuhan proyekmu.
SQL (Relational Database)
Data disimpan dalam tabel dengan baris dan kolom. Hubungan antar tabel menggunakan JOIN.
Contoh: MySQL, PostgreSQL, SQLite, MariaDB
-- Buat tabel
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
nama VARCHAR(100) NOT NULL,
email VARCHAR(100) UNIQUE NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
-- Insert data
INSERT INTO users (nama, email)
VALUES ('Budi', 'budi@example.com');
-- Select data
SELECT * FROM users WHERE email = 'budi@example.com';
-- Update
UPDATE users SET nama = 'Budi Santoso' WHERE id = 1;
-- Delete
DELETE FROM users WHERE id = 1;NoSQL (Non-Relational Database)
Data disimpan dalam format fleksibel — dokumen JSON, key-value, graph, dll.
Contoh: MongoDB, Redis, Cassandra, Firebase
// MongoDB — dokumen JSON
{
_id: ObjectId("..."),
nama: "Budi",
email: "budi@example.com",
xp: 1500,
badges: ["first_login", "complete_html"],
createdAt: ISODate("2024-01-01")
}Kapan Pakai SQL vs NoSQL?
Kriteria
SQL
NoSQL
|----------|-----|-------|
Struktur data
Tetap/terstruktur
Fleksibel/berubah
Relasi kompleks
✅ Lebih baik
❌ Kurang ideal
Scale horizontal
❌ Sulit
✅ Mudah
Konsistensi
✅ ACID
❌ Eventual
Kecepatan dev
❌ Lebih lambat
✅ Lebih cepat
Pakai SQL: aplikasi keuangan, e-commerce, data terstruktur
Pakai NoSQL: real-time app, content platform, data fleksibel