Section 1: NoSQL และ Document Database
- ความท้าทายของแอปพลิเคชันยุคใหม่และข้อจำกัดของฐานข้อมูลแบบตาราง
- CAP Theorem และประเภทของ NoSQL
- Document Database ต่างจาก Relational อย่างไร
- Couchbase เหมาะกับงานแบบไหน และอยู่ตรงไหนในระบบ
- Lab: เปรียบเทียบข้อมูลคำสั่งซื้อแบบหลายตารางกับเอกสาร JSON
Section 2: Lab: ติดตั้ง Couchbase Server 8
- Service ของ Couchbase: Data, Query, Index, Search และ Eventing
- Multi-Dimensional Scaling และการแยก Service ตามเครื่อง
- Bucket, Scope และ Collection
- ติดตั้งด้วย Docker และรู้จัก Web Console
- Lab: ติดตั้งคลัสเตอร์ทดลอง สร้าง Bucket และโหลดข้อมูลตัวอย่าง
Section 3: Lab: Data Modeling สำหรับเอกสาร JSON
- ออกแบบ Document Key ที่อ่านง่ายและเข้าถึงเร็ว
- ซ้อนข้อมูล (Nesting) หรืออ้างอิงข้ามเอกสาร เลือกอย่างไร
- ใช้ Scope และ Collection แยกประเภทข้อมูลและลูกค้า
- ออกแบบเอกสารให้พร้อมสำหรับการค้นหาตั้งแต่แรก
- Lab: ออกแบบเอกสารสินค้า รีวิว และหมวดหมู่สำหรับระบบค้นหา
Section 4: Lab: SQL++ พื้นฐาน
- Query Workbench และ cbq Shell
- SELECT, WHERE, ORDER BY, LIMIT และ Alias
- USE KEYS และการดึงเอกสารด้วย Key
- MISSING กับ NULL และฟังก์ชันที่ใช้บ่อย
- Lab: ค้นหาสินค้าตามหมวด ราคา และสถานะด้วย SQL++
Section 5: Lab: SQL++ กับ Array, Join และการแก้ไขข้อมูล
- ANY, EVERY และ ARRAY สำหรับข้อมูลใน Array
- UNNEST และ NEST สำหรับแตกและรวมข้อมูลซ้อน
- Join ข้าม Collection และ GROUP BY กับฟังก์ชันรวม
- INSERT, UPSERT, UPDATE และ DELETE
- Lab: รายงานคะแนนรีวิวเฉลี่ยของสินค้าแต่ละหมวด