Please enable JavaScript.
Coggle requires JavaScript to display documents.
Amazon DynamoDB - Coggle Diagram
Amazon DynamoDB
Amazon DynamoDB Overview
Massive scalability: Có khả năng mở rộng đến hàng triệu yêu cầu mỗi giây, hàng nghìn tỷ hàng và hàng trăm TB dữ liệu.
Performance: Cung cấp hiệu suất nhanh và ổn định với thời gian trễ tính bằng mili-giây.
NoSQL: DynamoDB là cơ sở dữ liệu NoSQL, không phải cơ sở dữ liệu quan hệ, hỗ trợ các giao dịch.
IAM integration: Tích hợp với IAM để kiểm soát bảo mật, ủy quyền và quản lý.
Highly available: DynamoDB được sao lưu trên nhiều vùng sẵn sàng (AZ) để đảm bảo tính sẵn sàng cao
Low cost & auto-scaling: DynamoDB có khả năng tự động mở rộng và chi phí thấp.
Fully managed: DynamoDB là một dịch vụ được quản lý hoàn toàn bởi AWS, giúp loại bỏ nhu cầu quản lý cơ sở dữ liệu thủ công.
No maintenance: Không cần bảo trì hay cập nhật, luôn sẵn sàng.
DynamoDB Basics
Attributes: Mỗi item có các thuộc tính, có thể được thêm dần theo thời gian.
Data types: Các kiểu dữ liệu bao gồm Scalar Types (String, Number, Binary, Boolean, Null), Document Types (List, Map), và Set Types (String Set, Number Set, Binary Set).
Items (Rows): Mỗi bảng có thể chứa số lượng hàng (items) vô hạn.
Max item size: Kích thước tối đa của một item là 400KB.
Primary Key: Mỗi bảng cần một khóa chính (Primary Key) khi tạo. Khóa chính có thể gồm Partition Key và Sort Key.
Tables: Dữ liệu trong DynamoDB được lưu trữ trong các bảng (tables).
DynamoDB Accelerator (DAX)
Seamless integration: DAX không yêu cầu thay đổi logic ứng dụng và tương thích với API của DynamoDB.
5 minutes TTL: Thời gian sống của cache mặc định là 5 phút.
In-memory caching: DAX là bộ nhớ đệm trong bộ nhớ cho DynamoDB, giúp giảm tắc nghẽn đọc bằng cách cache dữ liệu với độ trễ tính bằng micro-giây.
DynamoDB Streams
Use cases: Được sử dụng cho các trường hợp như phân tích thời gian thực, gửi email chào mừng người dùng mới, sao chép dữ liệu giữa các khu vực (cross-region replication).
24-hour retention: Dữ liệu trong Streams được lưu trữ trong 24 giờ.
Ordered item-level modifications: Streams ghi lại các thay đổi ở cấp độ item trong bảng DynamoDB theo thứ tự.
Read/Write Capacity Modes
Provisioned Mode: Bạn phải chỉ định trước dung lượng đọc/ghi và thanh toán theo RCU (Read Capacity Unit) và WCU (Write Capacity Unit).
On-Demand Mode: Tự động mở rộng dung lượng đọc/ghi theo tải công việc mà không cần lập kế hoạch trước. Chế độ này phù hợp với các khối lượng công việc không dự đoán trước.
Global Tables
Multi-region access: Bảng toàn cầu (Global Tables) cho phép truy cập bảng DynamoDB với độ trễ thấp ở nhiều khu vực.
Active-Active replication: Hỗ trợ đồng thời ghi và đọc từ nhiều khu vực, với việc sao chép hai chiều giữa các bảng.
DynamoDB Accelerator (DAX) vs. ElastiCache
DAX: Bộ nhớ đệm riêng biệt cho các đối tượng cá nhân và truy vấn/scan trong DynamoDB
ElastiCache: Bộ nhớ đệm có thể được dùng cho nhiều mục đích khác nhau và hỗ trợ lưu trữ kết quả tổng hợp.
integration with Amazon S3
Export to S3: Dữ liệu DynamoDB có thể được xuất sang S3 cho mục đích phân tích hoặc sao lưu.
Import from S3: Cho phép nhập dữ liệu từ S3 vào DynamoDB mà không ảnh hưởng đến dung lượng ghi.
Backups for disaster recovery
Point-in-time recovery (PITR): Tính năng sao lưu liên tục với khả năng phục hồi dữ liệu vào bất kỳ thời điểm nào trong vòng 35 ngày qua.
On-demand backups: Sao lưu theo yêu cầu cho mục đích lưu trữ dài hạn, không ảnh hưởng đến hiệu suất bảng.
Time to Live (TTL)
Automatic deletion: Tự động xóa các item sau một khoảng thời gian nhất định (TTL), giúp giảm dung lượng lưu trữ và đáp ứng yêu cầu pháp lý.