Câu hỏi phỏng vấn Mongodb
Câu hỏi

Document trong MongoDB là gì?

Câu trả lời

Trong MongoDB, một Document là đơn vị cơ bản của dữ liệu, tương tự như một bản ghi (record) trong các cơ sở dữ liệu quan hệ. Document được lưu trữ dưới dạng BSON (Binary JSON), một biểu diễn nhị phân của JSON, nhưng hỗ trợ nhiều kiểu dữ liệu hơn so với JSON. Mỗi document trong MongoDB có thể có một cấu trúc dữ liệu khác nhau, với một số lượng và loại trường (field) khác nhau.

Đặc điểm của Document trong MongoDB:

  • Cấu trúc linh hoạt: Không giống như các cơ sở dữ liệu quan hệ, MongoDB không yêu cầu một schema cố định cho mỗi collection. Điều này có nghĩa là các document trong cùng một collection có thể có các trường khác nhau.
  • Lưu trữ dưới dạng BSON: BSON mở rộng JSON bằng cách thêm hỗ trợ cho các kiểu dữ liệu như Date và binary data, giúp lưu trữ và truy vấn dữ liệu một cách hiệu quả.
  • Trường _id: Mỗi document trong MongoDB tự động có một trường _id duy nhất, được sử dụng như một khóa chính để xác định document. Trường _id có thể được tự động tạo bởi MongoDB hoặc được cung cấp bởi người dùng.

Ví dụ về một Document trong MongoDB:

json Copy
{
  "_id": ObjectId("5099803df3f4948bd2f98391"),
  "name": { "first": "Alan", "last": "Turing" },
  "birth": new Date('Jun 23, 1912'),
  "death": new Date('Jun 07, 1954'),
  "contribs": [ "Turing machine", "Turing test", "Turingery" ],
  "views": NumberLong(1250000)
}

Trong ví dụ trên, document chứa thông tin về Alan Turing, với các trường như name, birth, death, contribs, và views, mỗi trường có kiểu dữ liệu khác nhau.

Tại sao sử dụng Document trong MongoDB:

  • Tính linh hoạt: Cấu trúc linh hoạt của document cho phép lưu trữ dữ liệu phức tạp và thay đổi cấu trúc dữ liệu mà không cần sửa đổi schema của cơ sở dữ liệu.
  • Hiệu suất: BSON giúp tối ưu hóa việc lưu trữ và truy vấn dữ liệu, đặc biệt là với các loại dữ liệu không phải là văn bản.
  • Mô hình dữ liệu tự nhiên: Cấu trúc document phản ánh cách dữ liệu được sử dụng và hiểu bởi ứng dụng, giúp việc phát triển ứng dụng trở nên tự nhiên và dễ dàng hơn.

Tóm lại, Document trong MongoDB là một cách mạnh mẽ và linh hoạt để lưu trữ và quản lý dữ liệu, phù hợp với nhiều loại ứng dụng và mô hình dữ liệu khác nhau.

junior

junior

Gợi ý câu hỏi phỏng vấn

junior

Làm thế nào để update một document trong MongoDB?

middle

Giải thích về indexing trong Mongodb là gì?

senior

Giải thích về quá trình sharding trong MongoDB là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào