Penerapan NoSQL dalam skenario big data

From OnnoWiki
Jump to navigation Jump to search

Berikut adalah **Modul 12.2: Penerapan NoSQL dalam Skenario Big Data**, dilengkapi dengan **contoh nyata menggunakan database NoSQL (MongoDB dan Redis) di Ubuntu 24.04**.

---

    1. 📘 **Modul 12.2: Penerapan NoSQL dalam Skenario Big Data**
      1. 🎯 **Tujuan Pembelajaran**

- Memahami penerapan nyata basis data NoSQL dalam skenario big data. - Membedakan jenis-jenis NoSQL berdasarkan kebutuhan skenario. - Menerapkan contoh langsung penggunaan MongoDB (document) dan Redis (key-value) di Ubuntu 24.04.

---

      1. 🧠 **1. Peran NoSQL dalam Big Data**

NoSQL sangat penting dalam skenario Big Data karena: - Dapat **menampung volume data sangat besar** (scalable). - Mendukung **struktur data fleksibel** (tanpa skema tetap). - Cocok untuk **data real-time** dan **bervariasi** (sensor, JSON, log, media sosial).

---

      1. 🧩 **2. Penerapan NoSQL di Dunia Nyata dan Contohnya**

---

        1. 🏙️ A. **Smart City: Sensor IoT**

- **Jenis**: Column Store / Document Store - **Tujuan**: Merekam suhu, kelembapan, polusi dari ratusan ribu sensor.

        1. ✅ **Contoh Implementasi dengan MongoDB**
          1. 🔧 **Langkah Instalasi MongoDB di Ubuntu 24.04**

```bash sudo apt update sudo apt install -y mongodb sudo systemctl start mongodb sudo systemctl enable mongodb ```

          1. 🧪 **Simpan Data Sensor dalam Format JSON**

```bash mongosh

use smartcity

db.iot.insertOne({

 device_id: "sensor-01",
 timestamp: new Date(),
 suhu: 31.2,
 kelembapan: 70,
 polusi: 125

})

-- Query suhu > 30 db.iot.find({ suhu: { $gt: 30 } }) ```

---

        1. 🛍️ B. **E-Commerce: Profil Pengguna dan Produk**

- **Jenis**: Document Store - **Tujuan**: Menyimpan data dinamis seperti spesifikasi produk.

          1. 🧪 **Simpan Produk di MongoDB**

```javascript db.produk.insertOne({

 nama: "Laptop Gaming",
 harga: 15000000,
 spesifikasi: {
   processor: "Intel i7",
   RAM: "16GB",
   storage: "1TB SSD"
 },
 stok: 25

}) ```

---

        1. ⚙️ C. **Sistem Caching atau Token Akses**

- **Jenis**: Key-Value Store - **Tujuan**: Penyimpanan data cepat seperti session login dan token.

        1. ✅ **Contoh Implementasi dengan Redis**
          1. 🔧 **Langkah Instalasi Redis di Ubuntu 24.04**

```bash sudo apt update sudo apt install -y redis sudo systemctl start redis sudo systemctl enable redis ```

          1. 🧪 **Simpan dan Ambil Data Session**

```bash redis-cli

SET user:1001:session "eyJhbGciOi..." GET user:1001:session ```

🧪 **Atur session dengan waktu kadaluarsa (TTL):** ```bash SETEX user:1001:session 3600 "session-token-value" TTL user:1001:session ```

---

        1. 👥 D. **Media Sosial: Hubungan Pengguna**

- **Jenis**: Graph Database - **Tujuan**: Menyimpan dan menganalisis relasi (pertemanan, likes, followers).

          1. ✅ **Contoh Implementasi dengan Neo4j**
          1. 🔧 **Instal Neo4j di Ubuntu 24.04**

```bash wget -O - https://debian.neo4j.com/neotechnology.gpg.key | sudo apt-key add - echo 'deb https://debian.neo4j.com stable 5' | sudo tee /etc/apt/sources.list.d/neo4j.list sudo apt update sudo apt install neo4j sudo systemctl enable neo4j sudo systemctl start neo4j ```

          1. 🧪 **Contoh Query Cypher**

```cypher // Login ke Neo4j Browser di http://localhost:7474

CREATE (u1:User {name: "Andi"}) CREATE (u2:User {name: "Budi"}) CREATE (u1)-[:TEMAN]->(u2)

MATCH (a:User)-[:TEMAN]->(b:User) RETURN a.name, b.name ```

---

      1. 📊 **3. Tabel Rangkuman Penerapan NoSQL dalam Big Data**

| Skenario | Jenis NoSQL | DB yang Digunakan | Contoh Penerapan di Ubuntu 24.04 | |--------------------|------------------|--------------------|--------------------------------------------------| | Smart City (IoT) | Document Store | MongoDB | `db.iot.insertOne({...})` | | E-Commerce | Document Store | MongoDB | `db.produk.insertOne({...})` | | Session & Cache | Key-Value Store | Redis | `SET`, `GET`, `SETEX` | | Relasi Sosial | Graph DB | Neo4j | `CREATE`, `MATCH` dengan bahasa **Cypher** |

---

      1. ✅ **Kesimpulan**

Penerapan NoSQL dalam big data sangat fleksibel tergantung jenis dan kebutuhan datanya. Ubuntu 24.04 menyediakan kemudahan instalasi dan pengelolaan MongoDB, Redis, maupun Neo4j. Dengan pendekatan yang tepat, NoSQL mampu mendukung kebutuhan big data untuk smart city, e-commerce, dan sosial media dengan efisien.

---

Kalau kamu mau, Gipy bisa bantu buat versi modul ini ke bentuk **.PDF** atau **slide PowerPoint** juga. Mau sekalian?