Kiến trúc Cosmos DB
Phát triển cho Azure Storage
Shahzad Mian
Content developer, DataCamp
Azure Cosmos DB
Vấn đề
Cosmos DB là gì?
Cơ sở dữ liệu NoSQL đa mô hình, phân phối toàn cầu.
NoSQL: lưu trữ linh hoạt, giống thư mục.
Hỗ trợ nhiều API và kiểu dữ liệu.
Như menu linh hoạt: chọn “hương vị” API:
SQL (Core) cho tài liệu JSON.
MongoDB cho nhà phát triển Mongo.
Cassandra cho dữ liệu wide-column.
Gremlin cho quan hệ đồ thị.
Table API cho lưu trữ key-value.
Cosmos DB cho nhà phát triển
Thiết kế hướng đến nhà phát triển.
Tự động lập chỉ mục, không cần quản lý lược đồ.
Truy vấn nhanh.
Năm mức nhất quán: từ Strong đến Eventual.
Đánh đổi hiệu năng và nhất quán.
Strong: mọi người thấy cập nhật ngay.
Eventual: mọi người đồng bộ sau.
Mở rộng và thông lượng (RU/s)
Request Units per second (RU/s) = “đơn vị hiệu năng” của Cosmos DB.
Mỗi thao tác đọc/ghi/truy vấn tiêu tốn RU/s.
Chọn cấp phát cố định hoặc tự động (autoscale).
Mở rộng và thông lượng (RU/s)
Request Units per second (RU/s) = “đơn vị hiệu năng” của Cosmos DB.
Mỗi thao tác đọc/ghi/truy vấn tiêu tốn RU/s.
Chọn cấp phát cố định hoặc tự động.
Autoscale tự điều chỉnh theo nhu cầu.
Mở rộng đàn hồi và phân vùng
Cosmos DB mở rộng qua phân vùng.
Mỗi container dùng một khóa phân vùng.
Khóa nhóm dữ liệu liên quan.
Ví dụ: Cipher Coffee dùng
/customerId
cho đơn hàng.
Mọi đơn của một khách nằm cùng phân vùng khi dùng khóa
/customerId
.
Truy vấn vẫn nhanh khi dữ liệu tăng.
Hot partition
: tải phân vùng lệch gây chậm hiệu năng.
Phân phối toàn cầu
Dễ dàng sao chép dữ liệu tới mọi khu vực Azure.
Chỉ cần tick chọn, không cần cấu hình phức tạp.
Nếu một khu vực lỗi, lưu lượng tự chuyển hướng.
Không downtime, không mất dữ liệu.
Như một quán dự phòng luôn sẵn sàng phục vụ.
Giám sát và tối ưu chi phí
Theo dõi hiệu năng trong Azure Portal.
Xem RU/s, độ trễ, và chi phí yêu cầu.
Như bảng đồng hồ xe: tốc độ và nhiên liệu.
Kỹ sư Cipher Coffee phân tích các chỉ số này.
Giảm chi phí bằng cách điều chỉnh thông lượng động.
Ayo berlatih!
Phát triển cho Azure Storage
Preparing Video For Download...