Với việc phát hành cấu trúc dữ liệu MemoryStoreHashMap , Roblox đã xóa tất cả các giới hạn hiện tại cho các cấu trúc dữ liệu cá nhân và thay thế chúng bằng một giới hạn per- partition duy nhất. Giớ
Các Bộ Phận
API lưu trữ dữ liệu MemoryStores lưu dữ liệu vào partitions , which are just subdivisions of storage. Khi bạn viết một mục vào lưu cửa hàngbằng cách nào đó, mục đó được lưu vào chính xác một partitions. Partitions được quản lý hoàn toàn bởi API lưu trữ dữ liệu của MemoryStores; bạn không cần phả
Giao phó mảnh
Kho lưu trang bị là khác nhau theo cấu trúc dữ liệu mà một mục được lưu trên. Đối với các bảng dữ liệu sắp xếp và hàng đợi, mỗi bảng dữ liệu được giao một trang bị riêng.
Ví dụ, hãy xem xét một trò chơi carnival với bản đồ sắp xếp theo tên gọi PlayerScores và một hàng đợi PlayerLine của người chơi đang chờ để chơi trò chơi:
Ngược lại với bản đồ sort và hàng đợi, hành động lọc bản đồ là gánh một số phân đoạn, và dữ liệu được phân phối tự động qua các phân đoạn này. Nếu bạn thêm một bản đồ sort gọi là Prizes, các phân đoạn có thể xem như thế này:
Ghi chú cách map hiện tại trên tất cả các partitions, và mỗi partitions có một vài sub-集 của các thành phần.
Giới hạn
Có một giới hạn per- partition cho phép thông qua cao hơn cho tất cả các cấu trúc dữ liệu. Nó cũng ủng hộ bản đồ hashing, vì chúng được phân bố trên tất cả các partitions.
Ví dụ, xem xét giới hạn per- partition 150,000 yêu cầu mỗi phút (RPM):
- Trong trường hợp tốt nhất, một bản đồ sắp xếp và một hàng đợi được giới hạn ở 150.000 RPM, vì mỗi cái ở trên một bản đĩa.
- Yêu cầu thu hồi bản đồ được phân tán qua các chìa khóa mục, mà chính chúng được phân tán qua các bộ phận, vì vậy thu hồi bản đồ có thể có một giới hạn hiệu quả cao hơn trước khi bị thắt dầm, nhiều lần hơn các cấu trúc dữ liệu khác.
Vì lý do này, nếu bạn không cần thiết lập sắp xếp hoặc "đầu tiên ra, đầu tiên vào" chức năng, thì map thường là lựa chọn tốt nhất cho một cấu trúc dữ liệu lưu trữ. Để biết thêm thông tin, hãy xem Tốt lưu trữ nhất.