Tôi có một bảng Dynamodb chỉ chứa một khóa băm (khóa phân vùng). Không có phím phạm vi (khóa sắp xếp) cho bảng này. Khóa băm là giá trị số (ví dụ: - 1,2,3 ... N) Khi tôi truy vấn hoặc Quét bảng này, thứ tự mà chúng gửi kết quả? Nếu có một phím phạm vi, nó rõ ràng sắp xếp các kết quả theo thứ tự tăng dần dựa trên giá trị khóa phạm vi. Nhưng trong trường hợp này không có RANGE KEY, nó hoạt động như thế nào?Làm thế nào để Dynamodb Sắp xếp kết quả truy vấn khi không có phím phạm vi avaialble?
Trả lời
DynamoDB không cung cấp bất kỳ đảm bảo đặt hàng nào (ẩn hoặc rõ ràng) để quét các mục từ bảng. Các mục được trả về nhiều hay ít theo thứ tự hàm băm bên trong ánh xạ các mục vào các phân đoạn của bảng nhưng không có sự bảo đảm đặt hàng ngầm định hoặc rõ ràng.
Ngay cả với phím sắp xếp, thứ tự chỉ được ngụ ý trong các mục của cùng một khóa phân vùng. Vì vậy, ngay cả khi bạn có một phím phạm vi trên bảng, điều đó sẽ chỉ cho phép bạn truy vấn mục để có khóa băm cụ thể tại một thời điểm.
Nếu bạn cần đặt hàng tất cả các mục trong bảng, bạn có một số tùy chọn: - quét tất cả dữ liệu và thứ tự trên máy khách - tạo chỉ mục thứ cấp chung với giá trị chung cho khóa phân vùng cho tất cả các mục và truy vấn rằng - thiết kế lớp lưu trữ bổ sung để cung cấp thứ tự
Điều quan trọng là phải nhấn mạnh rằng hai tùy chọn trên chỉ tốt cho các bảng tương đối nhỏ. Một khi bạn đạt khoảng 10 GB trong bảng có một GSI với một phím chung sẽ hoạt động như một cổ chai đáng kể và tất nhiên quét và đặt hàng toàn bộ bảng trở nên có vấn đề là tốt.
- 1. Truy vấn DynamoDB bằng khóa băm và phím phạm vi với Boto3
- 2. Cách sắp xếp kết quả trong một truy vấn Datalog
- 3. Javascript DynamoDB - Truy vấn bằng khóa chính và dãy các phím phạm vi?
- 4. Truy vấn Postgresql - Sắp xếp theo kết quả truy vấn con
- 5. Làm thế nào để sắp xếp các phím HashMap
- 6. kết quả truy vấn sắp xếp mà không chọn cột đó nhưng sắp xếp theo cột đó?
- 7. Cách sạch nhất để sắp xếp kết quả truy vấn "mô tả bảng" là gì?
- 8. Phạm vi truy vấn Cassandra
- 9. SQL sắp xếp QUERY quả vấn đề
- 10. Tôi không muốn MySQL sắp xếp kết quả tìm thấy
- 11. Làm thế nào để có được các phạm vi khía cạnh trong kết quả solr?
- 12. Có thể kết quả ORDER với truy vấn hoặc quét trong DynamoDB không?
- 13. Cách thực hiện truy vấn trong DynamoDB trên cơ sở HashKey và phạm vi khóa?
- 14. Có thể thay đổi giá trị của phím Phạm vi trong Bảng DynamoDB không?
- 15. Làm cách nào để có nhiều kết quả truy vấn để giảm số lượng truy vấn?
- 16. Làm thế nào để trừ một kết quả truy vấn từ kết quả truy vấn khác trong MYSQL
- 17. Sắp xếp các kết quả truy vấn Slick trong một biểu thức
- 18. Có thể làm phẳng truy vấn kết quả MongoDB không?
- 19. Kết quả truy vấn sqlite sắp xếp Android bỏ qua trường hợp
- 20. Sắp xếp các kết quả của truy vấn được lập chỉ mụcDB
- 21. xem C++ sắp xếp phạm vi - cách tạo const_iterator?
- 22. Lưu/sắp xếp lại truy vấn LINQ
- 23. Làm thế nào để sắp xếp kết quả của "s3cmd ls"
- 24. Truy vấn DynamoDB trả về một tập kết quả trống có tiêu thụ bất kỳ dung lượng nào không?
- 25. "Sắp xếp theo" kết quả của "nhóm theo" tính?
- 26. Hibernate: Làm thế nào để có được kết quả từ truy vấn với nhiều lớp
- 27. phủ nhận ActiveRecord phạm vi truy vấn
- 28. Làm thế nào để tắt sắp xếp với jQueryUI có thể sắp xếp?
- 29. Làm cách nào để sắp xếp các kết quả theo thuộc tính hstore trong Rails 4?
- 30. DynamoDB loại ngày hiệu quả nhất