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

Làm thế nào để thực hiện một giao dịch với hai collections trên Azure CosmosDB?

Câu trả lời

Trong Azure CosmosDB, việc thực hiện giao dịch liên quan đến hai bộ sưu tập (collections) không được hỗ trợ trực tiếp do hạn chế về kiến trúc và thiết kế của dịch vụ. CosmosDB chỉ hỗ trợ giao dịch trong cùng một phân vùng (partition) và không cho phép giao dịch xuyên qua các container hoặc các tài liệu với các giá trị khóa phân vùng khác nhau

Tuy nhiên, có một số cách tiếp cận để giải quyết vấn đề này:

  1. Sử dụng Stored Procedures: Stored Procedures cho phép bạn thực hiện nhiều thao tác trên nhiều tài liệu trong cùng một lời gọi và được thực thi như một đơn vị giao dịch duy nhất. Tuy nhiên, tất cả các tài liệu mà bạn muốn thao tác phải nằm trong cùng một container và cùng một phân vùng
  2. Mô hình dữ liệu lại: Một cách tiếp cận khác là thiết kế lại mô hình dữ liệu của bạn sao cho các tài liệu liên quan đến giao dịch của bạn có thể được lưu trữ trong cùng một phân vùng hoặc container. Điều này có thể đòi hỏi phải đánh đổi giữa ...
middle

middle

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

expert

Optimistic Concurrency Control - OCC trong Cosmos DB là gì?

expert

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

middle

Chúng ta có thể thay đổi Partition Key trong Cosmos DB không?

Bình luận

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

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