ฐานข้อมูลเอกสารคืออะไร?

แนวคิด NoSQL

Miriam Antona

Software engineer

ฐานข้อมูลเอกสาร - ภาพรวม

ภาพโครงสร้างของฐานข้อมูลเอกสาร

แนวคิด NoSQL

ฐานข้อมูลเอกสาร - ภาพรวม

ภาพโครงสร้างของฐานข้อมูลเอกสาร

แนวคิด NoSQL

ฐานข้อมูลเอกสาร - ภาพรวม

ภาพโครงสร้างของฐานข้อมูลเอกสาร

แนวคิด NoSQL

ฐานข้อมูลเอกสาร - ภาพรวม

ภาพโครงสร้างของฐานข้อมูลเอกสาร

แนวคิด NoSQL

ฐานข้อมูลเอกสาร - ภาพรวม

ภาพโครงสร้างของฐานข้อมูลเอกสาร

แนวคิด NoSQL

ฐานข้อมูลเอกสาร - ภาพรวม

ภาพโครงสร้างของฐานข้อมูลเอกสาร

แนวคิด NoSQL

ฐานข้อมูลเอกสาร - ภาพรวม

ภาพโครงสร้างของฐานข้อมูลเอกสาร

แนวคิด NoSQL

ฐานข้อมูลเอกสาร - ภาพรวม

ภาพโครงสร้างของฐานข้อมูลเอกสาร

  • Documents -> แถว
  • Collections -> ตาราง
แนวคิด NoSQL

เอกสาร

  • ชุดของคู่ key-value
  • Keys: สตริง
  • Values: ตัวเลข, สตริง, บูลีน, อาร์เรย์ หรืออ็อบเจกต์
  • Schemaless: ไม่ต้องกำหนดโครงสร้างล่วงหน้า
  • รูปแบบ: JSON, BSON, YAML หรือ XML
แนวคิด NoSQL

เอกสาร - รูปแบบ JSON

{
  "user_id": 512,
  "name": "Carol",
  "last_name": "Harper",
  "email": "[email protected]",
  "address": {
    "street": "123 Sesame Street",
    "city": "New York City",
    "state": "New York",
    "country": "USA"
  },
  "hobbies": [
    "hiking",
    "painting"
  ]
}
แนวคิด NoSQL

เอกสาร - การคิวรี

{
  "user_id": 512,
  "name": "Carol",
  "last_name": "Harper",
  "email": "[email protected]",
  "address": {
    "street": "123 Sesame Street",
    "city": "New York City",
    "state": "New York",
    "country": "USA"
  },
  "hobbies": [
    "hiking",
    "painting"
  ]
}
  • ผู้ใช้ทุกคนที่อาศัยอยู่ใน New York และชอบเดินป่า
  • ผู้ใช้ทุกคนที่มีอายุมากกว่า 40 ปี
  • ข้อมูลผู้ใช้ตาม user_id
  • ...
แนวคิด NoSQL

เอกสาร - โมเดลพหุรูป

{
  "user_id": 512,
  "name": "Carol",
  "last_name": "Harper",
  "email": "[email protected]",
  "address": {
    "street": "123 Sesame Street",
    "city": "New York City",
    "state": "New York",
    "country": "USA"
  },
  "hobbies": [
    "hiking",
    "painting"
  ]
}
{
  "user_id": 513,
  "name": "Benjamin",
  "last_name": "Lieberman",
  "email": "[email protected]",
  "date_of_birth": "07/04/1984",
  "hobbies": [
    "reading"
  ]
}
แนวคิด NoSQL

คอลเล็กชัน

  • กลุ่มของเอกสาร
  • เก็บเอนทิตีประเภทเดียวกัน
  • จัดระเบียบเอกสารและคอลเล็กชันโดยคำนึงถึงการคิวรี
แนวคิด NoSQL

ฐานข้อมูลเอกสารยอดนิยม

โลโก้ของฐานข้อมูลเอกสารยอดนิยมบางส่วน

แนวคิด NoSQL

มาฝึกกันเถอะ!

แนวคิด NoSQL

Preparing Video For Download...