บทแนะนำ MongoDB Bson: BSON คืออะไร และแตกต่างจาก JSON อย่างไร

BSON (Binary JSON) คือรูปแบบข้อมูลไบนารีคล้าย JSON ใช้ในฐานข้อมูล MongoDB บทความนี้ให้ภาพรวมของ BSON

อาชว์

อาชว์

30 August 2025

บทแนะนำ MongoDB Bson: BSON คืออะไร และแตกต่างจาก JSON อย่างไร

BSON (Binary JSON) คือการเข้ารหัสแบบไบนารีของเอกสาร JSON-like ที่ใช้ในฐานข้อมูล MongoDB บทความนี้ให้ภาพรวมของ BSON รูปแบบข้อมูลไบนารีที่ใช้โดย MongoDB เพื่อจัดเก็บเอกสาร

อธิบายว่า BSON คืออะไร ขยายขีดความสามารถของ JSON ได้อย่างไร และความแตกต่างที่สำคัญระหว่าง BSON และ JSON นอกจากนี้ ยังรวมถึงวิธีที่ Apidog จัดการสิ่งนี้โดยอัตโนมัติ นอกจากนี้ยังแสดงตัวอย่างการดำเนินการ CRUD ขั้นพื้นฐานและคำสั่งฐานข้อมูลโดยใช้ Apidog เพื่อโต้ตอบกับ MongoDB

button

Bson ใน MongoDB คืออะไร

BSON (Binary JSON) คือรูปแบบข้อมูลหลักที่ใช้ในฐานข้อมูล MongoDB สิ่งสำคัญบางประการที่ควรรู้เกี่ยวกับ BSON ใน MongoDB:

โครงสร้างของเอกสาร BSON

BSON (Binary JSON) คือการเข้ารหัสแบบไบนารีของเอกสาร JSON-like ที่ใช้ในฐานข้อมูล MongoDB เอกสาร BSON มีคู่ฟิลด์-ค่าตามลำดับคล้ายกับอ็อบเจกต์ JSON

ฟิลด์สามารถเป็นสตริง UTF-8 ที่ถูกต้องใดๆ ในขณะที่ค่าสามารถเป็นหนึ่งในประเภทข้อมูล BSON หลายประเภท เช่น สตริง, จำนวนเต็ม, ทศนิยมคู่, ข้อมูลไบนารี, อาร์เรย์, เอกสาร, บูลีน, วันที่, null ฯลฯ โครงสร้างของเอกสาร BSON เริ่มต้นด้วยจำนวนเต็ม 4 ไบต์ที่ระบุขนาดเอกสารทั้งหมด

ถัดไปคือคู่ฟิลด์-ค่าที่มีฟิลด์ "_id" ซึ่งระบุเอกสารที่ไม่ซ้ำกัน เนื้อหาของเอกสารตามด้วยคู่ฟิลด์-ค่าแต่ละคู่ที่เข้ารหัสในรูปแบบไบนารีเฉพาะตามประเภทข้อมูล

ตัวอย่างที่แสดงโครงสร้างของเอกสาร BSON:

// Sample BSON document
{
  _id: ObjectId("507f1f77bcf86cd799439011"), // 12-byte unique ID
  name: "John Doe", // String
  age: 35, // Integer
  address: { // Embedded document
    street: "123 Main St",
    city: "Anytown", 
    state: "CA"
  },
  hobbies: ["reading", "hiking","swimming"], // Array
  graduated: true, // Boolean
  birthday: ISODate("1980-05-15T00:00:00Z"), // Date
  data: BinData(0, "SGVsbG8gV29ybGQ="), // Binary data
  ts: Timestamp(1590583045633, 1) // Timestamp
}

สิ่งสำคัญที่ควรทราบ:

ความแตกต่างระหว่าง JSON และ BSON คืออะไร

นี่คือความแตกต่างหลักระหว่าง JSON และ BSON:

การแปลง JSON และ BSON ใน MongoDB ด้วย Apidog

Apidog เป็นชุดเครื่องมือ API ที่ช่วยลดความซับซ้อนในการพัฒนา API มี MongoDB เป็นหนึ่งในตัวเลือกฐานข้อมูลแบบบูรณาการ โดยใช้ MongoDB กับ Apidog คุณสามารถจัดเก็บ API mocks และการทดสอบใน MongoDB เป็นแบ็กเอนด์ได้

การตอบสนอง API จำลองที่ส่งโดย Apidog สามารถขับเคลื่อนได้ด้วยข้อมูลที่เก็บไว้ในฐานข้อมูล MongoDB ซึ่งช่วยให้ Apidog ใช้ MongoDB เป็นแหล่งข้อมูลถาวรสำหรับ API ที่จำลอง ถัดไป เราจะอธิบายความสัมพันธ์ของ JSON และ BSON กับคุณ

button

MongoDB จัดเก็บข้อมูลเป็นเอกสาร BSON ซึ่งสามารถมองว่าเป็นชุดย่อยของ JSON เมื่อใช้งานฐานข้อมูล MongoDB ด้วย Apidog จะใช้ JSON เพื่อเขียนเนื้อหา Apidog จะแมปแต่ละฟิลด์ไปยังประเภทข้อมูล BSON ที่สอดคล้องกันโดยอัตโนมัติตามเนื้อหา JSON จริง

กรณีพิเศษอย่างหนึ่งคือฟิลด์ _id ตามธรรมเนียมของ MongoDB เอกสารแต่ละฉบับต้องมีฟิลด์ _id เป็นคีย์หลัก โดยมี ObjectId เป็นประเภทข้อมูลเริ่มต้นแทนที่จะเป็น string

ด้วย Apidog ในการประกาศฟิลด์ _id ของประเภท ObjectId ให้ใช้รูปแบบสตริงปกติ หากเนื้อหาสตริงเป็นไปตามรูปแบบ ObjectId Apidog จะแมปไปยังประเภท ObjectId ของ BSON โดยอัตโนมัติ

ตัวอย่างเช่น ใน MongoDb มีเอกสาร BSON เช่น:

Copy code
{
    _id: ObjectId('654e056de3662b1c09477cc3
'),
    name: "Apidog"
}

จากนั้นในการสืบค้นเอกสารนี้โดย _id ด้วย Apidog JSON ที่จะใส่ใน "เงื่อนไขการสืบค้น" จะเป็น:

Copy code
{
    "_id": "654e056de3662b1c09477cc3"
}
MongoDB

Explore more

สร้างทางเลือกสำหรับ Claude Web Search แบบ Open Source (พร้อมเซิร์ฟเวอร์ Firecrawl MCP)

สร้างทางเลือกสำหรับ Claude Web Search แบบ Open Source (พร้อมเซิร์ฟเวอร์ Firecrawl MCP)

สำหรับองค์กรที่ต้องการควบคุม, ปรับแต่ง, หรือความเป็นส่วนตัวมากกว่าการค้นหาเว็บของ Claude, การสร้างทางเลือกโดยใช้ Firecrawl เป็นทางออกที่ดี มาเรียนรู้กัน!

21 March 2025

10 อันดับทางเลือกที่ดีที่สุดสำหรับการเล่นวินเซิร์ฟสำหรับนักเขียนโค้ดที่ชอบความรู้สึกในปี 2026

10 อันดับทางเลือกที่ดีที่สุดสำหรับการเล่นวินเซิร์ฟสำหรับนักเขียนโค้ดที่ชอบความรู้สึกในปี 2026

ค้นพบ 10 ทางเลือก Windsurf ปี 2026 ปรับปรุงการเขียนโค้ด เหมาะสำหรับนักพัฒนาที่ต้องการโซลูชันการเขียนโค้ดที่มีประสิทธิภาพ ปลอดภัย และหลากหลาย

20 March 2025

Figma มีเซิร์ฟเวอร์ MCP แล้ว และนี่คือวิธีใช้งาน

Figma มีเซิร์ฟเวอร์ MCP แล้ว และนี่คือวิธีใช้งาน

ค้นพบวิธีเชื่อมต่อ Figma MCP กับ AI เช่น Cursor เพื่อสร้างโค้ดอัตโนมัติ เหมาะสำหรับนักพัฒนาและนักออกแบบ

20 March 2025

ฝึกการออกแบบ API แบบ Design-first ใน Apidog

ค้นพบวิธีที่ง่ายขึ้นในการสร้างและใช้ API