Câu hỏi phỏng vấn Cosmos DB
Câu hỏi

Sự khác biệt giữa Phân vùng Logic và Phân vùng Vật lý trong Cosmos DB là gì?

Câu trả lời

Trong Azure Cosmos DB, sự khác biệt chính giữa phân vùng logic và phân vùng vật lý liên quan đến cách chúng tổ chức và lưu trữ dữ liệu.

Phân vùng Logic (Logical Partition) là một đơn vị cơ bản để tổ chức dữ liệu bên trong một container của Cosmos DB. Mỗi phân vùng logic chứa một tập hợp các mục (items) có cùng giá trị khóa phân vùng (partition key). Việc chọn khóa phân vùng là một quyết định thiết kế quan trọng vì nó ảnh hưởng đến hiệu suất của ứng dụng. Mỗi phân vùng logic có thể lưu trữ tối đa 20 GB dữ liệu[1][2].

Phân vùng Vật lý (Physical Partition) là cấu trúc lưu trữ cơ bản trong Azure Cosmos DB, được quản lý hoàn toàn bởi hệ thống. Dữ liệu trong các phân vùng logic được phân phối đều qua các phân vùng vật lý để đảm bảo khả năng mở rộng và hiệu suất. Mỗi phân vùng vật lý có thể lưu trữ tối đa 50 GB dữ liệu và hỗ trợ tới 10,000 đơn vị yêu cầu (Request Units - RU) mỗi giây[2][4].

Một điểm khác biệt quan trọng nữa là người dùng không thể trực tiếp quản lý phân vùng vật lý; việc này được Cosmos DB tự động xử lý. Trong khi đó, việc chọn và quản lý khóa phân vùng (và do đó là phân vùng logic) là trách nhiệm của người phát triển, vì nó ảnh hưởng trực tiếp đến cách dữ liệu được tổ chức và truy vấn[1][2].

Tóm lại, phân vùng logic và phân vùng vật lý trong Cosmos DB đều đóng vai trò quan trọng trong việc tổ chức dữ liệu, nhưng chúng khác nhau về cách thức quản lý và mục đích sử dụng. Phân vùng logic giúp tổ chức dữ liệu dựa trên khóa phân vùng, trong khi phân vùng vật lý ...

middle

middle

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

expert

Những hạn chế của Phân vùng Vật lý là gì và tại sao việc giám sát chúng lại quan trọng?

expert

Tại sao các phân vùng logic lớn là một lựa chọn tồi tệ cho việc mở rộng Cosmos DB?

middle

Liệt kê các loại chỉ mục trong Cosmos DB

Bình luận

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

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