DynamoDB - Các phương pháp hay nhất

Một số phương pháp tối ưu hóa mã, ngăn ngừa lỗi và giảm thiểu chi phí thông lượng khi làm việc với nhiều nguồn và phần tử khác nhau.

Sau đây là một số phương pháp hay nhất quan trọng nhất và thường được sử dụng trong DynamoDB.

Những cái bàn

Việc phân bố các bảng có nghĩa là các cách tiếp cận tốt nhất trải đều hoạt động đọc / ghi trên tất cả các mục trong bảng.

Nhằm mục đích truy cập dữ liệu thống nhất trên các mục trong bảng. Việc sử dụng thông lượng tối ưu phụ thuộc vào lựa chọn khóa chính và các mẫu khối lượng công việc của mục. Chia đều khối lượng công việc trên các giá trị chính của phân vùng. Tránh những thứ như một lượng nhỏ giá trị khóa phân vùng được sử dụng nhiều. Chọn các lựa chọn tốt hơn như số lượng lớn các giá trị khóa phân vùng riêng biệt.

Hiểu được hành vi của phân vùng. Ước tính các phân vùng được DynamoDB phân bổ tự động.

DynamoDB cung cấp việc sử dụng thông lượng liên tục, dự trữ thông lượng chưa sử dụng cho các "bùng nổ" công suất. Tránh sử dụng nhiều tùy chọn này vì các đợt bùng nổ tiêu thụ một lượng lớn thông lượng một cách nhanh chóng; hơn nữa, nó không chứng minh một nguồn đáng tin cậy.

Khi tải lên, hãy phân phối dữ liệu để đạt được hiệu suất tốt hơn. Thực hiện điều này bằng cách tải lên đồng thời tất cả các máy chủ được phân bổ.

Bộ nhớ cache các mục được sử dụng thường xuyên để giảm tải hoạt động đọc vào bộ nhớ cache thay vì cơ sở dữ liệu.

Mặt hàng

Tiết kiệm, hiệu suất, kích thước và chi phí truy cập vẫn là mối quan tâm lớn nhất với các mặt hàng. Chọn một-nhiều bảng. Loại bỏ các thuộc tính và phân chia bảng để phù hợp với các mẫu truy cập. Bạn có thể cải thiện hiệu quả đáng kể thông qua cách tiếp cận đơn giản này.

Nén các giá trị lớn trước khi lưu trữ. Sử dụng các công cụ nén tiêu chuẩn. Sử dụng bộ nhớ thay thế cho các giá trị thuộc tính lớn như S3. Bạn có thể lưu trữ đối tượng trong S3 và một số nhận dạng trong mục.

Phân phối các thuộc tính lớn trên một số vật phẩm thông qua các mảnh vật phẩm ảo. Điều này cung cấp một giải pháp cho các giới hạn của kích thước mặt hàng.

Truy vấn và quét

Các truy vấn và quét chủ yếu gặp phải những thách thức về tiêu thụ thông lượng. Tránh bùng phát, thường là kết quả của những thứ như chuyển sang một bài đọc nhất quán cao. Sử dụng tính năng quét song song theo cách tốn ít tài nguyên (tức là chức năng nền không có điều chỉnh). Hơn nữa, chỉ sử dụng chúng với các bảng lớn và các trường hợp bạn không sử dụng đầy đủ thông lượng hoặc hoạt động quét mang lại hiệu suất kém.

Chỉ số phụ cục bộ

Các chỉ mục trình bày các vấn đề trong các lĩnh vực thông lượng và chi phí lưu trữ cũng như hiệu quả của các truy vấn. Tránh lập chỉ mục trừ khi bạn truy vấn các thuộc tính thường xuyên. Trong các phép chiếu, hãy chọn một cách khôn ngoan vì chúng làm phình ra các chỉ mục. Chỉ chọn những người được sử dụng nhiều.

Sử dụng các chỉ mục thưa thớt, nghĩa là các chỉ mục trong đó các khóa sắp xếp không xuất hiện trong tất cả các mục của bảng. Chúng có lợi cho các truy vấn về các thuộc tính không có trong hầu hết các mục trong bảng.

Chú ý đến việc mở rộng bộ sưu tập vật phẩm (tất cả các mục trong bảng và chỉ số của chúng). Các thao tác thêm / cập nhật khiến cả bảng và chỉ mục đều tăng lên và 10GB vẫn là giới hạn cho các bộ sưu tập.

Chỉ số phụ toàn cầu

Các chỉ mục trình bày các vấn đề trong các lĩnh vực thông lượng và chi phí lưu trữ cũng như hiệu quả của các truy vấn. Chọn trải rộng các thuộc tính chính, như trải rộng đọc / ghi trong bảng cung cấp sự đồng nhất về khối lượng công việc. Chọn thuộc tính trải đều dữ liệu. Ngoài ra, hãy sử dụng các chỉ mục thưa thớt.

Khai thác các chỉ số phụ toàn cầu để tìm kiếm nhanh trong các truy vấn yêu cầu một lượng dữ liệu khiêm tốn.