SQL vs NoSQL — Database

SQL vs NoSQL Tidak ada "yang terbaik" — pilihan bergantung pada kebutuhan spesifik aplikasi. SQL (Relational Database) Schema tetap — struktur tabel didefinisik

SQL vs NoSQL

Tidak ada "yang terbaik" — pilihan bergantung pada kebutuhan spesifik aplikasi.

SQL (Relational Database)

-- SQL: terstruktur, relasional
SELECT u.name, COUNT(o.id) as total_orders
FROM users u
LEFT JOIN orders o ON u.id = o.user_id
GROUP BY u.name
HAVING COUNT(o.id) > 5;

NoSQL

// NoSQL: fleksibel, denormalized
db.users.aggregate([
    { $lookup: { from: "orders", localField: "_id", foreignField: "user_id", as: "orders" } },
    { $match: { "orders.5": { $exists: true } } },
    { $project: { name: 1, total_orders: { $size: "$orders" } } }
]);

Perbandingan

| Aspek         | SQL              | NoSQL                |
|---------------|------------------|----------------------|
| Schema        | Fixed            | Flexible             |
| Scaling       | Vertical         | Horizontal           |
| Transactions  | ACID             | BASE (eventually)    |
| Relasi        | JOIN (kuat)      | Embedding/Reference  |
| Query         | SQL (standar)    | Bervariasi           |
| Contoh        | PostgreSQL,MySQL | MongoDB, Redis       |

Kapan Menggunakan Apa?

Yang akan kamu pelajari