Chế độ chỉ mục None
trong Cosmos DB được sử dụng khi nào?
Chế độ chỉ mục None
trong Cosmos DB được sử dụng khi nào?
Chế độ chỉ mục None
trong Azure Cosmos DB được sử dụng trong các trường hợp đặc biệt khi bạn không cần thực hiện truy vấn trên các tài liệu trong một container, hoặc khi các truy vấn không cần sử dụng chỉ mục. Đây là một cấu hình quan trọng để tối ưu hóa hiệu suất và giảm chi phí, đặc biệt trong các tình huống sau:
Khi các hoạt động trên container chỉ bao gồm đọc và ghi dựa trên ID của tài liệu (còn gọi là Point Read
), không cần truy vấn dựa trên các thuộc tính khác. Vì Point Read
sử dụng ID tài liệu và partition key
để truy cập trực tiếp vào tài liệu mà không cần đến chỉ mục, việc thiết lập chỉ mục là không cần thiết.
Chế độ chỉ mục None
giúp giảm chi phí lưu trữ và chi phí tính toán liên quan đến việc duy trì chỉ mục. Nếu bạn biết rằng các truy vấn trên container sẽ không được thực hiện hoặc chỉ thực hiện các truy vấn đơn giản không cần chỉ mục, việc vô hiệu hóa chỉ mục có thể là một lựa chọn chi phí hiệu quả.
Trong một số trường hợp, việc duy trì chỉ mục có thể ảnh hưởng đến hiệu suất ghi dữ liệu. Nếu ứng dụng của bạn yêu cầu hiệu suất ghi cực cao và không cần truy vấn dữ liệu thường xuyên, bạn có thể chọn vô hiệu hóa chỉ mục để tăng tốc độ ghi.
Trong trường hợp dữ liệu chỉ được lưu trữ tạm thời và sẽ được xử lý hoặc xóa sau một khoảng thời gian ngắn, việc duy trì chỉ mục có thể không cần thiết và làm lãng phí tài nguyên.
None
Bạn có thể thiết lập chế độ chỉ mục None
cho một container trong Cosmos DB bằng cách sử dụng Azure Portal hoặc thông qua SDK. Dưới đây là ví dụ về cách thiết lập này bằng Azure CLI:
az cosmosdb sql container create \
--account-name <AccountName> \
--database-name <DatabaseName> \
--name <ContainerName> \
--partition-key-path "/partitionKey" \
--indexing-policy '{ "indexingMode": "none" }'
Chế độ chỉ mục None
là một công cụ quan trọng trong việc tối ưu hóa hiệu suất và chi phí cho các ứng dụng Cosmos DB. Tuy nhiên, cần cân nhắc kỹ lưỡng khi sử dụng chế độ này để đảm bảo rằng nó phù hợp với yêu cầu của ứng dụng và không ảnh hưởng tiêu cực đến khả năng truy vấn dữ liệu khi cần.
senior
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào